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
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
Beshr Kayali
f4dd95f3be
Fix parseUri to sanitize urls containing ASCII newline or tab ( #17967 )
...
* Fix parseUri to sanitize urls containing ASCII newline or tab
* Fix ups based on review
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* Additional fix ups based on review
- Avoid unnecessary `removeUnsafeBytesFromUri` call if parseUri is strict
- Move some parseUri tests to uri module test file
Co-authored-by: Dominik Picheta <dominikpicheta@googlemail.com>
* Update changelog
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
Co-authored-by: Dominik Picheta <dominikpicheta@googlemail.com>
2021-05-09 19:24:00 +01:00
Andreas Rumpf
51f3ef6cb8
fixes #15848 [backport:1.2] ( #17959 )
2021-05-07 16:50:11 +02:00
Ardek Romak
9d86639a0b
Export sslHandle in net and asyncnet. ( #17573 )
2021-05-06 15:02:37 -07:00
Juan Carlos
5762b1d75c
Add copyWithin for JavaScript ( #17937 )
...
* Add jscore.copyWithin for seq and array
* Shallow copy mention docs
2021-05-05 07:46:42 +02:00
Timothee Cour
87229e272e
fix #17853 (ascii message separator broke json nim dump) ( #17887 )
2021-04-29 02:25:08 -07:00
Timothee Cour
a236002e54
testament: add nimoutFull: bool spec ( #17867 )
...
* testament: add `nimoutFull: bool` spec
* PRTEMP
* works
* cleanup
* add test for #12741
* PRTEMP failing test
* remove unrelated changes
* changelog
2021-04-27 11:11:28 +02:00
Timothee Cour
3f58b7face
add -d:nimLegacyNoHashRef for a transition period which avoids defining hash(ref) ( #17858 )
2021-04-27 08:23:01 +02:00
flywind
fdfd0f35a1
correct changelog[skip CI] ( #17870 )
2021-04-26 19:31:52 -07:00
Timothee Cour
4c9fa9b75c
fix typo in changelog refs #17746 [skip ci] ( #17869 )
2021-04-26 19:14:00 -07:00
Timothee Cour
ffe4328b35
--usenimcache (implied by nim r main) now caches some compile options to avoid recompiling when project was previously compiled with such options. (#17829 )
...
* `--usenimcache` (implied by `nim r main`) now caches some compile options
to avoid recompiling when project was previously compiled with such options.
* works
* add test
* changelog
* use std/with
2021-04-25 10:25:31 +02:00
Timothee Cour
b667e288e2
move travis, appveyor, ci.yml.disabled to unmaintained/ ( #17828 )
...
* move travis, appveyor, ci.yml.disabled to unmaintained
* update some mentions of travis, appevyor
* fix test
2021-04-24 07:54:31 +02:00
Timothee Cour
2abc936d51
typeof(voidStmt) now works (#17807 )
...
* `typeof(voidStmt)` now works
* remove typeOrVoid
* add condsyms, and reference cligen https://github.com/c-blake/cligen/pull/193
* fixup
* changelog [skip ci]
* fixup
2021-04-23 14:36:38 +02:00
Timothee Cour
e4a3feeb92
add --processing:dots|filenames|off to customize hintProcessing ( #17817 )
2021-04-23 08:07:22 +02:00
Timothee Cour
da1c1a7117
--filenames:abs|canonical|legacyRelProj for filenames in compiler msgs (replaces --listfullpaths:on|off) (#17746 )
...
* use canonicalImport for filename_magicSauce
* --filenames:abs|canonical|magic
* rename: magic => legacyRelProj
2021-04-21 15:26:27 +02:00
flywind
c631648cb3
close #9372 add std/tempfiles ( #17361 )
...
* close #9372 add std/tempfile
2021-04-21 15:07:36 +02:00
Timothee Cour
4742e6e1fd
followup #16714 : add -d:nimLegacyUnarySlice + changelog ( #17794 )
2021-04-20 00:25:28 -07:00
Timothee Cour
6852d091b3
changelog: document hash changes ( #17792 )
...
* changelog: document hash changes
* fixup
2021-04-20 06:54:25 +02:00
Timothee Cour
42c6eec4ef
fix #17749 ignore SIGPIPE signals, fix nim CI #17748 ( #17752 )
...
* fix #17749 SIGPIPE
* fix for windows
2021-04-18 15:34:29 +02:00
shirleyquirk
c8b8cb8458
make cuchar alias uint8 instead of char ( #17738 )
2021-04-17 17:27:10 +02:00
shirleyquirk
fdd4391534
Fix buffer-overrun bug in net ( #17728 ) [backport:1.0]
2021-04-16 14:22:51 +02:00
Timothee Cour
8161b02897
import foo {.all.} reboot (#17706 )
2021-04-16 09:16:39 +02:00
shirleyquirk
95e8ddabb2
followup #17700 put changelog in wrong file ( #17729 )
...
* Allow use of colons inside fmt
allowing colons inside fmt by replacing the format specifier delimiter lets arbitrary nim code be run within fmt expressions.
* oops
* Update strformat.nim
* one space.
* Update lib/pure/strformat.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* Update lib/pure/strformat.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* changed parser to ignore ':' within parens
* Update strformat.nim
* Update lib/pure/strformat.nim
Co-authored-by: flywind <xzsflywind@gmail.com>
* formatting,documentation,backslash escapes
Adding support for evaluating expressions by special-casing parentheses causes this regression: `&"""{ "(hello)" }"""` no longer parses.
In addition, code such as &"""{(if open: '(' else: ')')}""" wouldn't work.
To enable that, as well as the use of, e.g. Table constructors inside curlies, I've added backslash escapes.
This also means that if/for/etc statements, unparenthesized, will work, if the colons are escaped, but i've left that under-documented.
It's not exactly elegant having two types of escape, but I believe it's the least bad option.
* not sure about how this works
* changelog
* changelog
* added json strformat test
* pulled my thumb out and wrote a parser
* more escapes and string tests
* ok, now i'm sure it's broken but cant get a failing test
* found it
* ok, that'll do
* did i delete this?
* spcng
* spacing
* messed up where changelogs are supposed to go
* ocd
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
Co-authored-by: flywind <xzsflywind@gmail.com>
2021-04-15 22:45:51 +02:00
Arne Döring
56c37759d6
getCustomPragma is split up in more usable chunks ( #11526 )
...
* getCustomPragma is split up in more usable chunks
* changelog entry
* fix for style checks
* shitty typedesc special casing
* Add since annotation and remove typedesc comments
* Fix typo
* Revert since annotation because it breaks bootstrapping
* Export getCustomPragmaNode conditionally
* Reduce code duplication
* Update since
* Update lib/core/macros.nim
* Apply suggestions from code review
Co-authored-by: Clyybber <darkmine956@gmail.com>
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2021-04-14 20:42:09 +02:00
Timothee Cour
ceadf54d76
iterable[T] ( #17196 )
...
* fix failing test toSeq in manual which now works
* changelog
* reject proc fn(a: iterable)
* add iterable to spec
* remove MCS/UFCS limitation that now works
2021-04-11 14:25:41 +02:00
flywind
f25243140b
add std/tasks ( #17447 )
2021-04-09 11:51:51 +02:00
Timothee Cour
270964c487
implement RFCs/294 ; disallow enum <=> enum conversion ( #16351 )
...
* fix https://github.com/nim-lang/RFCs/issues/294 ; disallow enum <=> enum conversion
* fix the runnableExamples that was the instigator of this RFC
* legacy -d:nimLegacyConvEnumEnum
* use -d:nimLegacyConvEnumEnum in important_package nimgame2
* add test for enum cast
* improve changelog
* add changelog: Changes affecting backward compatibility
* cleanup changelog
* fix changelog
2021-04-03 07:15:21 +02:00
Timothee Cour
9abd383a2a
new genAst as replacement for quote do ( #17426 )
...
* new `macros.genAst`: fixes all issues with `quote do`
* add changelog entry
* add workaround for https://github.com/nim-lang/Nim/issues/2465#issuecomment-511076669
* add test for #9607
* add kNoExposeLocalInjects option
* add test case for nested application of genAst
* genAst: automatically call newLit when needed
* allow skipping `{}`: genAst: foo
* add test that shows this fixes #11986
* add examples showing mixin; add examples showing passing types, macros, templates
* move to std/genasts
* improve docs
2021-04-02 13:11:03 +02:00
Timothee Cour
a31e601550
misc fixes: build_all.sh, changelog ( #17601 )
...
* fix a bug in build_all.sh: $@ => "$@"
* remove getSocket from changelog following #17587
* remove unused import
2021-04-01 08:48:44 +02:00
flywind
924ab3adea
fix #17190 nimscript now accepts arbitrary file extensions for nim e main.customext ( #17596 )
...
* fix #17190
* cah
* merge
* Update tnimscriptwithnimext.nim
* Update tnimscriptwithmacro.nims
* Apply suggestions from code review
* Delete tnimscriptwithnimext.nim
* Update tests/tools/tnimscriptwithmacro.nims
* fix
* fix
* add a test
* Apply suggestions from code review
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* Apply suggestions from code review
* Update changelog.md
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2021-04-01 08:05:04 +02:00
Timothee Cour
9b67e5c61b
jsonutils: support cstring (including as Table key); improve docs ( #16062 )
...
* jsonutils: support cstring (including as Table key); improve docs
* changelog
* un-disable a test now that #16061 was fixed
2021-03-31 18:24:39 +02:00
Timothee Cour
72988509ba
add getPort to resolve Port(0) ( #17559 )
...
* add getPort to resolve Port(0)
* fixup
* use getPort in examples + tests
* address comments: do not re-export Port
2021-03-30 20:14:39 +02:00
Arne Döring
159c06e045
unify tuple expressions ( #13793 )
...
* unify tuple expressions
* fix test
* fix test
* apply feedback
* Handle empty tuples
* Fix rendering named unary tuple
* Protect static NimNode against stripping
* Slightly less hacky
* Revert "Slightly less hacky"
This reverts commit 170c5aec0addc029f637afbc948700ca006b7942.
* Slightly less hacky
* Cleanup
* Fix test
* Fix another test
* Add condsym
* Rebase fallout
* changelog: Move from compiler changes to language changes
* Add stricter tests
* Add empty tuple example to doc/astspec
* Fix test
Co-authored-by: Clyybber <darkmine956@gmail.com>
2021-03-30 02:06:51 +02:00
Dylan Modesitt
35655cd189
Add hasDataBuffered to asyncnet ( #16000 )
...
Co-authored-by: flywind <xzsflywind@gmail.com>
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
2021-03-29 16:12:58 -07:00
flywind
81e54c1d30
Add hasClosure to std/typetraits ( #17501 )
...
* fix nim js cmp fails at CT
* Add `hasClosure` to `std/effecttraits`
* type
* Update changelog.md
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* Update lib/std/effecttraits.nim
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2021-03-29 14:22:29 +02:00
Ardek Romak
207bcabdf2
Add a getter for all defined Sections in parsecfg ( #15450 )
2021-03-28 09:57:40 -07:00
Andreas Rumpf
355985ac89
custom integer literals bugfixes ( #17499 )
...
* custom integer literals bugfixes
* make nimsuggest compile again
2021-03-24 22:29:42 +01:00
Andreas Rumpf
5f5a92379f
custom integer literals ( #17489 )
...
* user defined integer literals; refs #17020
* updated renderer.nim
* use mlexerutils helper
* imported all test cases from https://github.com/nim-lang/Nim/pull/17020
* final grammar updated
2021-03-24 14:46:19 +01:00
Andreas Rumpf
86af2f7b50
make unary minus part of number literals, refs #17020 ( #17488 )
...
* make unary minus part of number literals, refs #17020
* fixes regression
2021-03-24 09:47:11 +01:00
flywind
c719d79d23
add algorithm.merge ( #16182 )
...
* add merge to algorithm
* Apply suggestions from code review
* Update lib/pure/algorithm.nim
* Apply suggestions from code review
* Update changelog.md
Co-authored-by: ee7 <45465154+ee7@users.noreply.github.com>
2021-03-23 10:49:02 +01:00
Timothee Cour
a75c4b70e8
hint:cc goes to stderr (like all other hints) instead of stdout ( #17465 )
...
Co-authored-by: ee7 <45465154+ee7@users.noreply.github.com>
2021-03-22 18:24:28 -07:00
Juan Carlos
fb38d906a2
Improve jsre ( #17365 )
...
* Add dollar for regex
* Add dollar for regex
* Peer review feedbacks
* Peer review feedbacks
* Update lib/js/jsre.nim
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* Update lib/js/jsre.nim
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* Update lib/js/jsre.nim
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* Pear review
* Beer review
* Beer review
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
2021-03-21 10:35:55 +01:00
Juan Carlos
9e1a2e9b63
improve jsconsole ( #17414 )
...
* Add jsconsole.dir
* Update lib/js/jsconsole.nim
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
2021-03-19 07:15:37 +01:00
Timothee Cour
2356d0603f
followup #17398 : getTempDir, getConfigDir now do not have trailing DirSep ( #17402 )
...
* followup #17398 : `getTempDir`, `getConfigDir` now do not have trailing DirSep
* fix test
2021-03-18 13:25:56 +01:00
Timothee Cour
bebf2ce24a
fix #17393 getHomeDir and expandTilde should not include trailing / ( #17398 )
...
* fix #17393 getHomeDir and expandTilde should not include trailing `/`
* changelog
2021-03-17 08:25:28 +01:00
Timothee Cour
5fe5f47033
followup #17389 ; add see also in std/json ( #17400 )
...
Co-authored-by: flywind <xzsflywind@gmail.com>
2021-03-16 19:21:32 -07:00
Timothee Cour
48eab5370a
fix #2844 #3911 ; add --spellsuggest to suggest symbols in scope with similar spellings on undefined symbol error ( #16067 )
...
* add --spellsuggest to suggest symbols in scope with similar spellings on undefined symbol errors
* implement --spellsuggest with 0 arguments
2021-03-16 10:41:30 +01:00
flywind
a0b8a3d920
New channels implementation for ORC ( #17305 )
...
* Update lib/std/channels.nim
* Rename tchannel_pthread.nim to tchannels_pthread.nim
* Rename tchannel_simple.nim to tchannels_simple.nim
Co-authored-by: Mamy Ratsimbazafy <mamy_github@numforge.co>
2021-03-12 13:33:47 +01:00
flywind
be49505719
Update changelog.md ( #17349 )
2021-03-11 20:07:47 -08:00