Commit Graph

4090 Commits

Author SHA1 Message Date
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
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
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
Miran
9f94199d0c random: works for slices and enums, fixes #7698 (#10998) 2019-04-11 08:38:18 +02:00
Miran
2608bc369e json: add '\v' support, fixes #10541 (#10987) 2019-04-10 15:54:49 +02:00
Araq
26fc7d465a strutils.nim: fixes the indentation of formatEng 2019-04-10 15:44:34 +02:00
Arne Döring
2c645eded5 add strformat limitations section (#10982)
* add strformat limitations section
* Update lib/pure/strformat.nim
2019-04-09 08:14:59 +02:00
Araq
f6ad071a46 make strformat work as NimScript again 2019-04-06 20:56:48 +02:00
Araq
9f5d9d1993 makes koch.nim sem'check with --newruntime 2019-04-06 19:13:10 +02:00
Arne Döring
3a5a0f6d46 Strformat symbol binding (#10927) 2019-04-05 15:27:04 +02:00
Araq
f2f9386101 make sets.nim useful for selective 'from import's 2019-04-05 14:57:59 +02:00
MrZoraman
c6327e229a Fix dead sequtils link (#10960) [ci skip] 2019-04-04 07:03:15 +02:00
Miran
d337e4a932 md5: add missing .gcsafe. to the forward declarations (#10944) 2019-04-02 14:44:19 +02:00
Araq
3b14f0ed10 see what appveyor thinks about this 2019-04-01 17:50:03 +02:00
Araq
0f0cc9e6eb see what appveyor thinks about this 2019-04-01 17:45:23 +02:00
Araq
204ecfc817 os.nim: proper indentation 2019-04-01 17:45:08 +02:00
Araq
c3067e36bb newruntime: progress 2019-04-01 16:51:18 +02:00
Araq
fda1352ccf json.nim: tiny refactoring 2019-04-01 16:24:04 +02:00
Miran
aeb30a72c0 update unicode.nim (#10921)
* update unicode.nim

* create a script to create the needed unicode data
* make unicode.nim compatible with Unicode v12.0.0
* slightly improve unicode.nim documentation (fixes #4795)

* more documentation
2019-03-31 08:36:04 +02:00
Andreas Rumpf
f8e720fda9 fixes json.nim regression 2019-03-29 08:01:59 +01:00
Arne Döring
e904b3f952 code cleanup (#10874) 2019-03-28 12:32:02 +01:00
Jjp137
b0e236674c logging: better documentation (#10895) 2019-03-24 18:53:04 +01:00
Andreas Rumpf
1332f649b2 stats.nim: bugfix: use min in '+' [backport] 2019-03-23 15:09:28 +01:00
Miran
1eefbf6da8 improve docs for os.joinPath, fixes #10836 (#10866) 2019-03-20 08:38:24 +01:00
Anthon van der Neut
5661a8303c correct argument name, (#10813)
* correct argument name,

updated using poUsePath, based on feedback from c-blake

* Update osproc.nim

* explicit args parameter
2019-03-18 11:13:52 +01:00
Federico Ceratto
5825dcb0b5 Detect local "primary" IP address 2019-03-17 16:58:27 +00:00
narimiran
f1a945b05f bring back typetraits.$ for backward compatibility
Some packages are still using ``from typetraits import `$` ``
which is now available from system (no need to import it).
2019-03-14 17:09:33 +01:00
Miran
84d3f3d448 move system.dollars in a separate file (#10829) 2019-03-13 15:59:09 +01:00
Tomohiro
cd3a58d7b0 bitops: add reverseBits and test (#10835) 2019-03-13 15:53:40 +01:00