summary refs log tree commit diff stats
path: root/lib/pure
Commit message (Collapse)AuthorAgeFilesLines
* return types must not be Natural for reasons I won't outline hereAraq2020-04-021-1/+1
|
* feature/count (#13837)Dean Eigenmann2020-04-021-0/+19
|
* Deprecate DCE:on (#13839)Juan Carlos2020-04-026-13/+0
|
* Deprecate when declared(echo):echo (#13840)Juan Carlos2020-04-021-1/+1
|
* Add browsers.openDefaultBrowser without URL, implements IETF RFC-6694 ↵Juan Carlos2020-04-011-14/+38
| | | | Section-3 (#13835)
* Documentation, add more examples (#13825)Juan Carlos2020-04-013-10/+14
|
* revert stdlib changes which are not required anymoreAndreas Rumpf2020-04-016-21/+20
|
* Hrm, the new errors highlighted some code that seems to be brokenZahary Karadjov2020-04-016-20/+21
| | | | | | New issue: since `Table[A, B]` allocates its backing storage with `newSeq[KeyValuePair[A, B]]`, it's no longer legal to create a table with `not nil` types used as either keys or values.
* encodeMIME should be encodeMime by our coding guidelinesAraq2020-04-011-3/+3
|
* Tiny fix on browsers.openDefaultBrowser (#13818)Juan Carlos2020-03-311-1/+3
|
* macros for proc types, macros for types (#13778)Andreas Rumpf2020-03-311-0/+6
| | | | | | | | | * new minor feature: macros for proc types, to be documented * Finished the implementation and added tests * [skip ci] Describe the new custom pragmas in the manual and the changelog Co-authored-by: Zahary Karadjov <zahary@gmail.com>
* Unwind just the "pseudorandom probing" part of recent sets,tables changes ↵c-blake2020-03-317-174/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#13816) * Unwind just the "pseudorandom probing" (whole hash-code-keyed variable stride double hashing) part of recent sets & tables changes (which has still been causing bugs over a month later (e.g., two days ago https://github.com/nim-lang/Nim/issues/13794) as well as still having several "figure this out" implementation question comments in them (see just diffs of this PR). This topic has been discussed in many places: https://github.com/nim-lang/Nim/issues/13393 https://github.com/nim-lang/Nim/pull/13418 https://github.com/nim-lang/Nim/pull/13440 https://github.com/nim-lang/Nim/issues/13794 Alternative/non-mandatory stronger integer hashes (or vice-versa opt-in identity hashes) are a better solution that is more general (no illusion of one hard-coded sequence solving all problems) while retaining the virtues of linear probing such as cache obliviousness and age-less tables under delete-heavy workloads (still untested after a month of this change). The only real solution for truly adversarial keys is a hash keyed off of data unobservable to attackers. That all fits better with a few families of user-pluggable/define-switchable hashes which can be provided in a separate PR more about `hashes.nim`. This PR carefully preserves the better (but still hard coded!) probing of the `intsets` and other recent fixes like `move` annotations, hash order invariant tests, `intsets.missingOrExcl` fixing, and the move of `rightSize` into `hashcommon.nim`. * Fix `data.len` -> `dataLen` problem.
* #13806 - getApplFreebsd might lose data (#13807)Euan2020-03-311-16/+16
| | | | | | | | | * #13806 - first call sysctl with a null buffer to get the length, then alloc buffer and call again * Use csize_t rather than csize * Suggestions from @Clyybber Co-authored-by: Euan Torano <euan.torano@bluesky-wireless.co.uk>
* Add Documentation (#13811)Juan Carlos2020-03-317-15/+110
| | | | * Add more Docs and runnableExamples
* refs #13797 (#13812)Timothee Cour2020-03-311-1/+1
|
* fix #13794 HashSet leak (#13800)Timothee Cour2020-03-291-1/+2
|
* More fixes for Haiku (#13774)alaviss2020-03-272-47/+50
| | | | | | | | | | | * osproc: move fork-based code path under the when conditional * osproc: avoid using the environ global on Haiku * osenv: import environ from stdlib.h on Haiku Haiku's environ is declared in `<stdlib.h>` by default, differing from POSIX and/or Linux. Import it from there to avoid collision with anyone importing `<stdlib.h>` from Nim.
* ssl_certs: add Haiku support (#13761)alaviss2020-03-261-7/+32
|
* asyncdispatch: fix erroneous set construction (#13765)alaviss2020-03-261-1/+3
| | | | | | | These constants were defined as `cint`. They can be huge on certain systems, such as Haiku, and trigger out-of-bounds errors in asyncdispatch. Ref #13764.
* `import macros` rather than `import std/macros`. (#13762)Euan2020-03-261-1/+2
|
* distinctBase overload for values (#13746)Timothee Cour2020-03-251-0/+7
|
* fix deprecations and other warnings (#13748)Miran2020-03-254-12/+10
|
* fixes #13722 (#13729)Andreas Rumpf2020-03-231-8/+20
| | | | | * fixes #13722 * better fix
* add error for missing commandLineParams (#13719)Andy Davidoff2020-03-231-0/+4
| | | | | | | * add error for missing commandLineParams * fixup * rewrite
* introduce getPeerCertificates, fixes #13299 (#13650)Christian Ulrich2020-03-222-0/+47
| | | | | | | | | | | | * make i2d_X509 and d2i_X509 always available i2d_X509 and d2i_X509 have been available in all versions of OpenSSL, so make them available even if nimDisableCertificateValidation is set. * introduce getPeerCertificates, fixes #13299 getPeerCertificates retrieves the verified certificate chain of the peer we are connected to through an SSL-wrapped Socket/AsyncSocket. This introduces the new type Certificate which stores a DER-encoded X509 certificate.
* [ci skip] add back unintentionally removed linenarimiran2020-03-201-0/+1
|
* SSL certificate verify GitHub action (#13697)Federico Ceratto2020-03-203-12/+182
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Implement SSL/TLS certificate checking #782 * SSL: Add nimDisableCertificateValidation Remove NIM_SSL_CERT_VALIDATION env var tests/untestable/thttpclient_ssl.nim ran successfully on Linux with libssl 1.1.1d * SSL: update integ test to skip flapping tests * Revert .travis.yml change * nimDisableCertificateValidation disable imports Prevent loading symbols that are not defined on older SSL libs * SSL: disable verification in net.nim ..when nimDisableCertificateValidation is set * Update changelog * Fix peername type * Add define check for windows * Disable test on windows * Add exprimental GitHub action CI for SSL * Test nimDisableCertificateValidation
* [RFC] 'walkDir' now has a new 'checkDir' flag, to mimic behaviour of other ↵Timothee Cour2020-03-201-11/+25
| | | | | languages (#13642) Co-authored-by: narimiran
* threadpool.nim: allow control over MaxThreadPoolSize and ↵Araq2020-03-201-3/+3
| | | | MaxDistinguishedThread; refs #10584
* Detect Ubuntu by checking release() and uname() (#13704)Hayden2020-03-201-1/+3
| | | This will improve detection of Ubuntu when running on Ubuntu on WSL. #13703
* fight the code bloat in base64.nimAraq2020-03-201-7/+16
|
* Add Base64 safe (#13672)Juan Carlos2020-03-201-9/+28
| | | | * Implement RFC-4648 Section-7 * https://github.com/nim-lang/Nim/pull/13672#issuecomment-600993466
* cycle breaker (#13593)Andreas Rumpf2020-03-191-1/+1
| | | | * cycle breaking as an alternative to cycle detection
* fix #11458 oswalkdir (#13689)Timothee Cour2020-03-191-27/+4
| | | | | * fix #11458 oswalkdir * changelog
* add `move` to `tables` to prevent warnings when compiled with `--gc:arc` ↵Miran2020-03-191-4/+4
| | | | (#13684)
* httpcore: deprecate `==`(string, HttpCode) (#13682)alaviss2020-03-191-1/+8
| | | | | | | | | | According to [RFC7230], the reason phrase attached to the status line is optional and clients should not rely on it. This in turn causes the proc to be practically useless, as clients should only inspect the return code. Ref #13680. [RFC7230]: https://tools.ietf.org/html/rfc7230#section-3.1.2
* fixes hash(HashSet) which was wrong as it didn't respect tombstones; refs #13649Araq2020-03-181-1/+2
|
* fixes a bug for 'dup' and 'with'; they can now handle nested statement lists ↵Araq2020-03-171-8/+1
| | | | that can result from macros
* fix #13218: avoid some irrelevant warnings for nim doc,rst2html,--app:lib, + ↵Timothee Cour2020-03-136-8/+6
| | | | | | | | other fixes (#13550) * fix #13218: avoid some irrelevant warnings for nim doc,rst2html * suppress warnRedefinitionOfLabel for nim doc * lots of fixes for UnusedImport warnings
* rename `lenTuple` and `lenVarargs` (#13639)Miran2020-03-121-3/+3
| | | | | | | | | | | * rename 'lenTuple' to 'tupleLen' Rationale: `lenTuple` is a tuple consisting of lengths (e.g. `(1, 5, 0)`), `tupleLen` is a length of a tuple (e.g. `tupleLen((1, 5, 0) == 3`) * rename 'lenVarargs' to 'varargsLen' The same rationale as a previous commit. Consistency.
* unicode.split: Fix the splitting when a Rune separator is used [backport] ↵Kaushal Modi2020-03-121-14/+11
| | | | | | | | | | (#13629) * unicode.split: Fix the splitting when a Rune separator is used [backport] - Fixes https://github.com/nim-lang/Nim/issues/13628 - Ref https://irclogs.nim-lang.org/11-03-2020.html#20:01:34 * unicode.split: Remove the sepLen based logic.. resulted in wrong jumps
* fix #13310, Deque misbehaves on VM (#13625)Miran2020-03-111-2/+15
| | | | * fix #13310, Deque misbehaves on VM * use 'when nimVM'
* fixes #13558: toDateTime buggy on 29th, 30th and 31th of each month; ↵Timothee Cour2020-03-111-13/+3
| | | | breaking change: do not use `now` to compute result, was undocumented and non-sensical (#13565)
* fixes async regressionAraq2020-03-111-1/+1
|
* fixes #13519Araq2020-03-112-2/+2
|
* fixed to jsonArrayEnd comment. (#13624)めぐみ発動機 (isVowel / GreenWing)2020-03-111-1/+1
| | | typo: start → end
* hotfix: make --useVersion:1.0 workAraq2020-03-101-1/+2
|
* fix #12508, unaligned access on sparc64 (#13594)Miran2020-03-091-1/+1
|
* fixes #13605 (#13611)Andreas Rumpf2020-03-091-4/+5
|
* Add isValidFilename (#13561)Juan Carlos2020-03-071-0/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Add os.isValidFilename * Add os.isValidFilename * Peer Review Feedbacks https://github.com/nim-lang/Nim/pull/13561#discussion_r388013139 * Peer Review Feedbacks https://github.com/nim-lang/Nim/pull/13561#issuecomment-595259568 * Add since to const * Update the documentation comment * Update the changelog * Update lib/pure/os.nim Co-Authored-By: Dominik Picheta <dominikpicheta@googlemail.com> * Update lib/pure/os.nim Co-Authored-By: Dominik Picheta <dominikpicheta@googlemail.com> * Peer Review Feedbacks, Add more Tests Co-authored-by: Dominik Picheta <dominikpicheta@googlemail.com>