| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
toOpenArray instead (#18047)
* close #16569: deprecated reversed overload, use toOpenArray instead
* [skip ci] change wording in changelog per review
* fixup
|
|
|
|
|
|
|
|
|
|
| |
* improve runnableExamples in std/httpclient
* Add synchronous example.
* Update lib/pure/httpclient.nim
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
|
|
|
|
| |
distinguish from 0.0 (#18067)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[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.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
|
| |
(#17967)" (#17984)
This reverts commit f4dd95f3bee14b69caec63c3be984c4a75f43c8a.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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>
|
|
|
|
|
|
|
| |
* deprecate `uri.initUri` and improve uri examples
* remove `func initUri*()` and make isIpv6 optional
* fixup
|
|
|
|
|
| |
* fixed a .cursor inference bug
* added a test case
|
|
|
|
|
|
|
| |
generic (#17942)
* fix #17941: UnusedImport works for var/let/const/type invoked inside a generic
* fixup
|
| |
|
|
|
|
|
|
|
| |
* ReSync with Devel
* Fix style in parsecsv
* Update lib/pure/parsecsv.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
|
|
|
|
|
| |
* typo: nonexistant => nonexistent
* fix test (ordering differs because of https://github.com/nim-lang/Nim/issues/17910)
|
| |
|
|
|
|
|
|
| |
(#17909)
* system.nim cleanup some exported constants which should never have been exported
|
|
|
|
|
|
| |
* [std/base64] uses runnableExamples
* Update lib/pure/base64.nim
Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
tempfiles.createTempFile (#17889)
* fix #17888: remove undefined behavior for posix.open; fix tempfiles.createTempFile
* fix for tests/async/tasyncfile.nim
* hide mode for now
* add notice regarding stability
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* improve cache line size
- 64bit system tend to use cache line of 64 bytes
- add align
https://trishagee.com/2011/07/22/dissecting_the_disruptor_why_its_so_fast_part_two__magic_cache_line_padding
Though I'm not sure, what do you think? @timotheecour
* Update lib/pure/concurrency/threadpool.nim
|
| |
|
|
|
| |
It does not return anything.
|
| |
|
| |
|
|
|
|
|
|
|
| |
* [std/parsecfg]use runnableExamples
* Apply suggestions from code review
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
|
|
|
|
| |
hash(ref) (#17858)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* CIs: attempt to use csources_v1
* also updated the BSDs
* also updated azure pipelines
* std modules should not itself use the 'std/' import dir...
* compiler has to be careful with std/ for v1 booting
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
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.
* changelog
* added json strformat test
* pulled my thumb out and wrote a parser
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
Co-authored-by: flywind <xzsflywind@gmail.com>
|
|
|
|
|
|
|
|
|
| |
* changed parser to ignore ':' within parens
* Update strformat.nim
* Update lib/pure/strformat.nim
Co-authored-by: flywind <xzsflywind@gmail.com>
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Genode: move dyncall failures to runtime
Do not use the "error" pragma to warn that dynamic library loading is
not implemented, print a message at runtime and exit.
* Genode: use stricter dataspace type in page allocator
* Genode: remove compiler configuration from nim.cfg
Self-hosting Nim is not supported on Genode and defining the
cross-compilation environment can be done externally.
* Genode: use new mutex API
* Genode: call nim_component_construct as a C procedure
* Genode: implement echo for NimStringV2
|
| |
|
|
|
|
|
|
|
| |
* further progress on rst roles & dir-s (fix #17646)
* fix documents according to the messages
* fix bug 17 from #17340
|
|
|
|
| |
Extend documentation
Add runnableExamples
|
|
|
|
|
| |
* use strstr for a faster find implementation
* stress the -d:release and -d:danger switches
|
|
|
|
|
|
|
|
|
| |
* use sink and lent in deques
* Update lib/pure/collections/deques.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
|
| |
|