Commit Graph

5249 Commits

Author SHA1 Message Date
Andreas Rumpf
2ea7287217 view types: spec changes (#18226)
* view types: spec changes

* Update doc/manual_experimental.rst

Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>

* Update doc/manual_experimental.rst

Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>

Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
2021-06-10 16:49:17 +02:00
Fröhlich A
7bf0404dd8 #18216 make moveDir work across partitions on windows (#18223)
* return false if AccessDeniedError in tryMoveFSObject - fixes #18216

* add moveDir & moveFile tests

* rename `isMoveDir` parameter to `isDir`
2021-06-10 14:28:00 +02:00
Timothee Cour
79ded694d7 avoid re-exporting options from std/wrapnils (#18222) 2021-06-10 07:00:34 +02:00
Andreas Rumpf
47acc80f4e make strict funcs analysis smarter (#18219)
* make strict funcs analysis smarter: varParam[i] = v is different from varParam[i][] = v
* added a test case
* Update compiler/varpartitions.nim

Co-authored-by: Clyybber <darkmine956@gmail.com>
2021-06-09 17:33:19 +02:00
Bung
429b128632 change mimedb stroe stringtable to orderedtable (#18065)
* change mimedb stroe stringtable to orderedtable

* Update lib/pure/mimetypes.nim

Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2021-06-07 13:57:42 +02:00
Timothee Cour
3cc547f2df macros.treeRepr + friends: collapse SymChoice (#18072)
* macros.treeRepr + friends: collapse SymChoice

* make repr+friends work with invalid symchoice nodes

* address comment
2021-06-05 06:58:26 +02:00
Andreas Rumpf
06232b7f2e fixes #18058 (#18162) 2021-06-03 17:12:45 +02:00
Andreas Rumpf
daaa40973c added float32 schubfach algorithm; wip (#18155)
* added float32 schubfach algorithm; wip

* fixes #18418
2021-06-03 12:09:40 +02:00
Timothee Cour
0de3d4292f fix #16993, #18054, #17835 runnableExamples now works with templates and nested templates (#18082) 2021-06-02 09:02:14 -07:00
n5m
4ee6eddad4 add string-string tests for find and rfind (#18137)
* add string-string tests for find and rfind

* remove duplicate test cases

* remove more redundant test cases
2021-06-02 16:19:30 +02:00
Andreas Rumpf
f10eef29b5 fixes #18059 (#18140)
* fixes #18059
2021-06-02 13:13:23 +02:00
Andreas Rumpf
63db2b19bf use dragonbox algorithm; alternative to #18008 (#18139)
* use dragonbox algorithm; alternative to #18008
* removed unsafe code
2021-06-01 22:29:53 +02:00
Andrey Makarov
ba3ec7b049 docs: Latex generation improvements (#18141)
* docs: improve Latex generation

* make it work on Windows + fix ] escaping

* minor fixes with escapes and style
2021-06-01 20:47:23 +02:00
flywind
c2e3dc0ed1 close #18129 Add setCurrentException for JS backend (#18145)
* [std/re] make interface consistent

* tiny

* revert

* close #18129  add setCurrentException

* changelog entry
2021-06-01 18:16:25 +02:00
Dylan Modesitt
06d50bfd4c Fixes #5034 illformed AST from getImpl with proc returning value (#17976)
* Fixes 5034

* address comments
2021-05-31 22:51:32 +02:00
Timothee Cour
369a7d1246 jsonutils.toJson now serializes JsonNode as is by default (#18097)
* jsonutils.toJson now serializes JsonNode as is (without deep copy nor treating it as a regular ref object)

* JsonNodeMode
2021-05-31 22:17:52 +02:00
Timothee Cour
9559350e34 add os.getCacheDir (#18126)
* add `os.getCacheDir`

* fixup

* address comments
2021-05-31 22:16:33 +02:00
Timothee Cour
a36efb59b5 fix #16256: nimout: <empty> should give error (vacuously true); improve a few tests (#18089)
* fix #16256: nimout: <empty> should give error (vacuously true); improve some tests

* renamed:    tests/stdlib/t9710.nim -> tests/misc/t9710.nim

* improve tests

* fix non-DRY tests

* improve $nim_prs_D/tests/stdlib/t9091.nim

* renamed:    tests/stdlib/t9091.nim -> tests/misc/t9091.nim

* fixup

* address comment: doAssert => result.parseErrors
2021-05-31 13:39:19 +02:00
Saem Ghani
b7ad29e692 fix #18113 (#18124) 2021-05-31 13:27:44 +02:00
n5m
064fe18de6 improve fast returns of find and rfind (#18127) 2021-05-31 11:20:15 +02:00
Timothee Cour
18b4774311 document macros.unpackVarargs (#18106)
* deprecate macros.unpackVarargs

* un-deprecate unpackVarargs and add docs+runnableExamples

* update examples + tests with varargs[typed]
2021-05-31 10:51:20 +02:00
Miran
50e98e6efa hashes for refs should be an opt-in feature (#18098) 2021-05-30 23:55:51 +02:00
Yuriy Glukhov
a6bd6c7ed8 Fixes #17849 (#18055) [backport:1.2]
* Fixes #17849
* Update compiler/closureiters.nim

Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2021-05-30 22:38:33 +02:00
vabresto
cfe19247e8 Disable tasynchttpserver_transferencoding on FreeBSD (#18122) 2021-05-29 12:44:39 -07:00
vabresto
9eae6b4fe3 fix #17456 flaky test tasynchttpserver_transferencoding (#18052) 2021-05-28 15:17:37 -07:00
Timothee Cour
1e0165186b testament: remove deadcode related to realtimeGC, testC, callCCompiler (#18087) 2021-05-26 11:49:01 -07:00
Timothee Cour
3b1aabdcff change --hint[X] => --hint:X in nim repo (avoids shell quoting issues) (#18085) 2021-05-26 09:51:48 +02:00
Timothee Cour
0b2bbcaa23 fix #18077 testament now parses cmd properly (#18086) 2021-05-26 09:46:53 +02:00
Timothee Cour
8df55d0ad7 close #3482 no more cgen error with typed templates (#18094) 2021-05-26 09:44:00 +02:00
Timothee Cour
b59dc3b255 remove some custom logic in testament around flags, testExec (#18090)
* remove some custom logic in testament around flags, testExec

* remove testExec, custom logic around flags from testament

* fixup
2021-05-26 09:41:50 +02:00
Timothee Cour
d217888e56 close #18009 parseJson JInt vs JFloat; preserve -0.0 as JFloat to distinguish from 0.0 (#18067) 2021-05-23 23:06:14 +02:00
Timothee Cour
1636c05d13 close #5540 generic object with generic field evaluated too early (#18062) 2021-05-23 01:02:04 -07:00
Andrey Makarov
9f7e2e3057 docs: make inline markup more compatible with Markdown (#18053)
fixes https://github.com/timotheecour/Nim/issues/739
2021-05-21 06:54:20 +02:00
Andreas Rumpf
df429fa287 config system: special case -d:release and -d:danger [backport:1.4] (#18051) 2021-05-20 11:52:46 +02:00
Ștefan Talpalaru
a1c82c39af asyncdispatch+stackTraceOverride: fix premature collection (#18039) [backport:1.2]
Copying StackTraceEntry instances when nimStackTraceOverride is defined
breaks the link between a cstring field that's supposed to point at
another string field in the same object.

Sometimes, the original object is garbage collected, that memory region
reused for storing other strings, so when the StackTraceEntry copy tries
to use its cstring pointer to construct a traceback message, it accesses
unrelated strings.

This only happens for async tracebacks and this patch prevents that by
making sure we only use the string fields when nimStackTraceOverride is
defined.

Async tracebacks also beautified slightly by getting rid of an extra line
that was supposed to be commented out, along with the corresponding debugging output.

There's also a micro-optimisation to avoid concatenating two strings just
to get their combined length.
2021-05-19 19:19:11 +02:00
Andreas Rumpf
53935b8b27 ARC: fixes memory leaks with newSeq used in a loop [backport:1.4] (#18040)
* ARC: fixes memory leaks with newSeq used in a loop [backport:1.4]
* Update tests/arc/tnewseq_legacy.nim
2021-05-18 21:45:37 +02:00
Timothee Cour
7f077a76fe jsonutils: add customization for toJson via ToJsonOptions; generalize symbolName; add symbolRank (#18029)
* jsonutils: add customization for toJson via `ToJsonOptions`

* add enumutils.symbolRank

* lookup table implementation for HoleyEnum

* cleanup

* changelog

* fixup

* Update lib/std/jsonutils.nim

Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2021-05-18 15:10:19 +02:00
Andrey Makarov
2096490b59 follow-up #17930 - inline syntax highlighting (#18013)
* follow-up #17930 - inline syntax highlighting

* make closure->nimcall
2021-05-16 23:55:14 +02:00
Timothee Cour
d83b25db1e fix #18007: std/json now serializes nan,inf,-inf as strings instead of invalid json (#18026)
* fix #18007: std/json now serializes nan,inf,-inf as raw strings instead of invalid json

* fix roundtrip

* fix tests

* fix changelog

* simplify

* add runnableExamples

* fix typo [skip ci]
2021-05-16 23:54:10 +02:00
Timothee Cour
3619a5a2aa more informative error msg for undeclared field (A(badfield: 1) and a.badfield = expr) (#17777) 2021-05-16 10:03:22 -07:00
Clyybber
3614523664 Rework DFA traversal (#18016)
* enable using dbg: without a context

* Optimally joining first write/last read analysis

* Add test for #18002

* potLastReads -> potentialLastReads
2021-05-16 00:15:53 +02:00
Andrey Makarov
3824fd3f9a RST opt.list to have priority over def.list (#17845) 2021-05-15 08:12:26 +02:00
Andreas Rumpf
4857c462d5 Revert "fix #14873 properly by skipping abi field in importc type (#17944)" (#17992)
This reverts commit 98c29c01eb.
2021-05-15 06:50:39 +02:00
Timothee Cour
2ce592a209 refs #18011 disable some newly failing tests on cpp windows; refs #17946 increase timeout for tchannels (#18012) 2021-05-14 15:33:17 -07:00
Timothee Cour
1e080eb9b4 jsonutils: handle holey enum as regular enum, via ord (#17995) 2021-05-11 22:49:47 +02:00
Timothee Cour
a770c98e27 jsonutils: support set (#17994) 2021-05-11 21:09:17 +02:00
Timothee Cour
e60672141a improve std/tempfiles (#17920)
* improve std/tempfiles
* fixup
* fix windows
* improve test
* improve runnableExamples and tests
* address comment
2021-05-11 16:35:43 +02:00
Timothee Cour
45490497e3 fix #17467 1st call to rand is now non-skewed; allow seed == 0 (#17468)
* fix #17467 1st call to rand is now non-skewed; allow passing 0 as seed

* changelog + fallback

* document behavior for seed == 0

* address comments

* _

* fix tests, disable kdtree

* re-enable kdtree with -d:nimLegacyRandomInitRand
2021-05-11 11:04:59 +02:00
Timothee Cour
f68f28d157 make testament isSuccess more robust and allow tests with --hints:off to succeed (#17968)
* fix testament isSuccess

* show givenSpec in addResult

* simplify tstatictypes.nim
2021-05-11 06:54:52 +02:00
Andreas Rumpf
983a2aa11c Revert "Fix parseUri to sanitize urls containing ASCII newline or tab (#17967)" (#17984)
This reverts commit f4dd95f3be.
2021-05-09 23:33:31 +02:00