Commit Graph

4116 Commits

Author SHA1 Message Date
Miran
9bd4347abb fix #10910, optimize squaring and cubing (#11291) 2019-05-21 15:57:33 +02:00
Miran
6586516511 fix #8395, fix #8734: normalize os.tailDir and os.parentDir (#11288) 2019-05-21 15:57:20 +02:00
liuxiaodong
5e552ad3a5 getDateStr and getClockStr takes a default parameter (#11108) 2019-05-21 09:54:09 +02:00
Miran
dc6a4b1d43 fixes #11049, wrong streams.readBool and streams.peekBool (#11284) 2019-05-20 19:39:38 +02:00
Ștefan Talpalaru
13b3e4af8a fixes #11275 (#11276) 2019-05-20 09:29:13 +02:00
Miran
a63c2a25d0 fix changing case for Unicode characters which change size (#11271)
Some Unicode characters don't have the same byte length
in their upper- and lower-case variants.
2019-05-20 09:18:47 +02:00
Dominik Picheta
f1a8edc14d Merge pull request #11263 from jrfondren/asyncstreams-fix-immediately-vs-soon
fix unnecessary poll() (and default 500ms delay) in some uses of async
2019-05-16 23:24:53 +01:00
Miran
8f198db2ca fixes #10952, UNC paths (#11260) 2019-05-16 21:06:04 +02:00
Julian Fondren
22b4cf192d fix for unnecessary poll() in some uses of async 2019-05-15 19:57:45 -05:00
Araq
791abfbc16 selectors: exceptions are for errors, not for bugs 2019-05-15 18:19:17 +02:00
Dominik Picheta
d0b8724aa2 Fixes crashes when asyncdispatch.adjustTimeout returns a negative value. (#11231) 2019-05-15 18:15:10 +02:00
Boris Shomodjvarac
de6b2e88d2 added getSocket proc (#11233) 2019-05-15 17:47:25 +02:00
Ștefan Talpalaru
dfc7685420 fixes #11250 (#11251) 2019-05-15 08:42:30 +02:00
Dominik Picheta
6b2ed28d55 Workaround "move not found" exception in JS when using tables. (#11256) 2019-05-15 08:21:25 +02:00
Andreas Rumpf
fb1c3a95a5 fixes #11124 2019-05-13 17:34:15 +02:00
Benny Elgazar
a83d609960 exposing procs (#11218) 2019-05-11 10:32:34 +02:00
Araq
95b65504e6 sequtils: minor typo 2019-05-10 19:50:23 +02:00
Araq
9aa6aa6514 make epochTime available in DLLs; refs #6855 2019-05-10 15:20:39 +02:00
Oscar Nihlgård
de5c0d3aa9 Make range checks in semConv (#7164)
* Remove NaN/Inf/NegInf magic
* Make range checks in semConv
* fix the failing line
* fix `firstOrd` and `lastOrd`
* fix `localError`
* remove debug comment
* Cleanup, fix failing test
* make tests green
2019-05-10 11:10:11 +02:00
Andreas Rumpf
aa76857462 Merge pull request #11181 from nim-lang/pending-future-tracking
Implements pending future tracking in async.
2019-05-08 20:37:31 +02:00
Andreas Rumpf
3b27b80069 Merge pull request #11069 from jrfondren/devel
(docs) fix unidecode.unidecode example input string
2019-05-08 17:56:48 +02:00
Andreas Rumpf
65b6250e59 Merge pull request #11199 from mratsim/allow-float-ranges-again
Reallow float ranges in random module
2019-05-08 17:49:49 +02:00
Matt Haggard
8180d443b9 Allow for locale-based parsing/formatting of dates (#11170)
* Allow for locale-based parsing/formatting of dates

* Updates based on review feedback of PR 11170

DateTimeLocale arrays are now indexed by Month and WeekDay enums.
More sane date used for testing.
Documentation newline.
Case change of DefaultLocale (and make it public)

* Add changelog entry for DateTimeLocale addition to times module

* Use pattern symbols for DateTimeLocale attribute names
2019-05-08 13:48:04 +02:00
Mamy André-Ratsimbazafy
5363b8cc59 Reallow float ranges in random module 2019-05-08 13:48:03 +02:00
Miran
a5fb0acf5f CountTable: check for usages after sorting (#11189) 2019-05-08 09:31:57 +02:00
Zestyr
a06038be3f Update outdated ETimeout exception name 2019-05-07 01:28:33 +02:00
Dominik Picheta
abe634aefe Implements pending future tracking in async. 2019-05-06 17:18:30 +01:00
Miran
d2e1936cf2 tables: check for mutation when iterating (#11160) 2019-05-04 22:58:42 +02:00
Andreas Rumpf
e1515b53d1 introduce temporary <//> for 'owned' to get this compile with 0.19 (#11145)
* introduce temporary <//> for 'owned' to get this compile with 0.19
* make newTable[string, owned Node]() compile (but it crashes)
* make sink/owned parameters consistent
* make actiontable test compile again
* VM: support sytem.move; makes tests green
2019-05-02 08:07:09 +02:00
genotrance
c94ab46923 Fix ospaths import error (#11150) 2019-05-01 08:54:02 +02:00
Jasper Jenkins
3d0190f470 Fix unexpected result of rand on a range, fixes #11015 (#11035) 2019-04-30 09:28:28 +02:00
jiro
ddc86d1b4b streams: Update documentation, refs #10330 (#11059) 2019-04-29 11:32:02 +02:00
Miran
737fff5902 Initialized collections (#11094)
* tables: initialized by default
* sets: initialized by default
* DRY: extract shared functionality
* add a changelog entry
* fix errors
* don't test include files
* make it work for sharedtables
* fix discovered bugs
* add exhaustive tests
2019-04-29 08:13:52 +02:00
cooldome
3647c03cad reimplement_pr_10974 (#11130) 2019-04-27 12:41:08 +01:00
Alvydas Vitkauskas
a644f443bc Fix: remove pragma inline from parseBin|Oct|Hex (#11105) 2019-04-24 19:46:13 +02:00
Alvydas Vitkauskas
ae2923e5de Make parseutils.parseBin|Oct|Hex generic (#11067)
* make parsutils.parseBin generic and improve runnableExamples
* reimplement parseBin/Oct/Hex and improve runnableExamples
* update changelog.md file with parseBin/Oct/Hex and fix a typo
2019-04-24 17:26:01 +02:00
Oscar Nihlgård
1ddb496b6d Add missing deprecated pragma (#11100) [ci skip] 2019-04-24 13:39:28 +02:00
Araq
437f464810 fixes #1192 2019-04-23 14:44:05 +02:00
Araq
8d206b20d4 fixes #11089 2019-04-23 10:44:00 +02:00
Araq
3161e48760 strformat: minor style changes 2019-04-23 10:44:00 +02:00
Jjp137
e597db83b7 tables: fix link (#11090) [ci skip] 2019-04-23 09:37:21 +02:00
Zed
3b4952da94 Fix header inconsistencies in documentation (#11071) 2019-04-23 08:40:20 +02:00
Zed
88079a0dee Documentation import fixes (#11070)
* Move asyncdispatch imports below introduction

* Move nre imports below documentation
2019-04-21 09:45:05 +02:00
Julian Fondren
42fffc3250 fix unidecode.unidecode example input string 2019-04-20 21:10:52 -05:00
Christopher Dunn
14fc7437c3 Improve tables docs for del/take (#11030)
* Continuation of b40a637f
* https://forum.nim-lang.org/t/4789
2019-04-17 11:57:32 +02:00
Andy Davidoff
01f09567c4 faster CountTable sort(), optional SortOrder (#11010)
* use existing sort for CountTable, and
add SortOrder options to CountTable, OrderedTable sort(s)

* add some tests, runnables, etc.

* fix runnable imports
2019-04-16 09:42:54 +02:00
Araq
a517a9985b fixes another regression; the behaviour of 'array' formatting was changed 2019-04-15 08:20:28 +02:00
Araq
59ccaa43c7 fixes #11012 2019-04-15 08:20:28 +02:00
Araq
3ceb258ebf fixes #11005 2019-04-12 13:28:13 +02:00
cooldome
041d15392a Compiler plugin for implementing incremental computation in user space (#10819)
This plugin provides essential building block for implementing incremental computations in your programs. The idea behind incremental computations is that if you do the same calculation multiple times but with slightly different inputs you don't have to recompute everything from scratch. Also you don't want to adopt special algorithms either, you would like to write your code in standard from scratch manner and get incrementality for free when it is possible.

The plugin computes the digest of the proc bodies, recursively hashing all called procs as well . Such digest with the digest of the argument values gives a good "name" for the result. Terminology loosely follows paper "Incremental Computation with Names" link below. It works well if you have no side effects in your computations. If you have global state in your computations then you will need problem specific workarounds to represent global state in set of "names" . SideEffect tracking in Nim also useful in this topic.

Classical examples:

Dashboard with ticking data. New data arrives non stop and you would like to update the dashboard recomputing only changed outputs.
Excel spreadsheet where user changes one cell and you would like to recompute all cells that are affected by the change, but do not want to recompute every cell in the spreadsheet.
2019-04-11 23:09:11 +02:00