summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* changelog.md: clarify that only the default has changed [ci-skip]Leorize2020-06-061-1/+1
|
* ssl_config_parser: refactor for sanity reasonsLeorize2020-06-061-15/+17
|
* untestable/thttpclient_ssl: some tests are no longer brokenLeorize2020-06-061-6/+6
| | | | | With the changes to the default cipher suites, certain tests are no longer broken and are acting as they should.
* untestable/thttpclient_ssl: move incomplete-chain to dubious_brokenLeorize2020-06-061-1/+1
| | | | | It's unsure why this test fail for macOS, but it doesn't hurt if it's not passing.
* net: use a secure cipher list by defaultLeorize2020-06-065-1/+125
| | | | | | | | | | | Previously, the `net` module use the blanket "ALL" as the default cipher list. This list may contain security ciphers that are weak and/or outdated according to the current standard. This commit introduces a new module `ssl_config` that contains the latest OpenSSL configurations as recommended by Mozilla OpSec, and make the `net` module use the cipher list targeting `intermediate` compatibility level as the default.
* asyncnet, net: clear openssl error queue before performing I/OLeorize2020-06-063-0/+9
| | | | | | | | | | | | Per SSL_get_error(3): The current thread's error queue must be empty before the TLS/SSL I/O operation is attempted, or SSL_get_error() will not work reliably. There has been records of not clearing the error queue causing weird SSL errors when there shouldn't be any, see: https://github.com/openssl/openssl/issues/11889
* openssl: fix erroneous function signaturesLeorize2020-06-062-5/+3
| | | | Now matches the declaration in openssl/err.h
* net: don't clear error queue unless shutdown() will be performedLeorize2020-06-061-1/+1
|
* Revert "net: don't clear all errors on close"Leorize2020-06-061-0/+1
| | | | | | | You're supposed to clear the error queue before any I/O operations. Per SSL_get_error(3) man page. This reverts commit ee3ed37300743addb1344e39bc46d3cd2b89a718.
* thttpclient_ssl: be less specificLeorize2020-06-061-2/+1
| | | | | | The error we're looking for is "certificate verify failed". The routine that reports this will be different between openssl versions, so it makes no sense to track the routine name as well.
* net: don't clear all errors on closeLeorize2020-06-061-1/+0
| | | | | | | Closing a socket clears the error queue of the entire thread, which seems to be a bit too invasive. Also I don't find any reason in the PR that added this.
* untestable/thttpclient_ssl: fix macosLeorize2020-06-061-0/+1
|
* untestable/thttpclient_ssl: fix 10000-sans testLeorize2020-06-061-1/+3
|
* untestable/thttpclient_ssl: catch errors caused by the bad catergoryLeorize2020-06-061-1/+1
| | | | | Previously the errors caused by `SSL_shutdown()` masked these, so now we catch them.
* asyncnet, net: call SSL_shutdown only when connection establishedLeorize2020-06-064-12/+52
| | | | | | This commit prevents "SSL_shutdown while in init" errors from happening. See https://github.com/openssl/openssl/issues/710#issuecomment-253897666
* fix #14576 addr of param (including for lent) now works with nim js (#14577)Timothee Cour2020-06-063-3/+71
| | | | | * fix #14576 addr(param) now works in nim js * workaround https://github.com/nim-lang/Nim/issues/14578
* reorder.nim: fixes the indentationAraq2020-06-061-41/+40
|
* Fix asynchttpserver newline breaking content-length (#14565) [backport]Zed2020-06-061-2/+3
|
* remove isMainModule from json,os,sequtils (#14572)Timothee Cour2020-06-066-757/+759
| | | | | * move json.isMainModule => tjson * move isMainModule => tos,tsequtils
* Fix #14570 (#14571)Danil Yarantsev2020-06-062-1/+12
| | | | * Fix #14570
* refs #14545 fix snippet errors: avoid showing confusing errors when they are ↵Timothee Cour2020-06-051-3/+4
| | | | expected (#14569)
* fixes #14562Araq2020-06-051-1/+4
|
* Improve JSON serialisation of strtabs (#14549)PMunch2020-06-052-7/+30
| | | | This creates a more compact serialisation of strtabs that is more in line with the normal tables.
* tfdleak: fix flakyness on Windows (#14550)alaviss2020-06-042-4/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tfdleak_multiple: introduce stress tester for tfdleak Imported from #14548 and tweaked for consumption by testament. This test seems to be really good at bringing out the flakyness of tfdleadk. Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * tfdleak: increase accuracy of the test on Windows This commit implements a new testing strategy for Windows: 1. We duplicate the handle that will be tested and enable inheritance. This duplicate will serve as a reference handle. 2. In addition to checking whether the handle is valid, we also verify whether the handle is the same as the reference. This gives us complete certainty on whether the handle in question is inherited from the parent. A side effect is that this uses Windows 10+ APIs. But since this is just for the test, we don't have to be picky about it. Ideally we would want to do something like this for other POSIX-based system, but most of them lack a facility to do this, and as of writing there isn't any false positive for them, so we won't need the additional checks. MemFile.fHandle will also no longer be tested, as this handle defaults to being invalid. Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* bug fixes with sfMainModule, hints, mainPackageNotes, mainPackageId, ↵Timothee Cour2020-06-048-25/+70
| | | | | | | hintSuccessX (#14555) * SuccessX `out` now works with --compileOnly and jsonscript; fix bugs in jsonscript * several bug fixes; eg: `nim doc lib/system/io` now is sane * dummy edit to force docs CI
* [cleanup] docgen: remove docOutdir now that outDir is always set (#14554)Timothee Cour2020-06-031-17/+7
|
* io: correct signature for some win32 apis (#14551)alaviss2020-06-031-5/+5
| | | See https://github.com/nim-lang/Nim/pull/14550#issuecomment-637937649
* * honor --errorMax even for tools (eg drnim, nim doc) (#14546)Timothee Cour2020-06-029-15/+22
| | | * fix a bug that prevented nim doc compiler/nim on windows
* fix https://github.com/timotheecour/Nim/issues/266 retry on failure to avoid ↵Timothee Cour2020-06-022-3/+36
| | | | common 503 github errors (#14547)
* Implement rendering of `[]=`, `{}`, `{}=` braces (#14539)cooldome2020-06-013-20/+71
| | | | | | | * render curly braces * fix typo * fix test Co-authored-by: cooldome <ariabushenko@bk.ru>
* walkDirRecFilter, update doc CI filter, compiler/index.nim for docs + ↵Timothee Cour2020-06-0110-127/+171
| | | | | | | | | | | various other fixes (#14501) * update doc CI filter to include the files mostly likely to require doc rebuild * remove code duplication in ./config/nimdoc.cfg; show link to compiler docs, various fixes * walkDirRecFilter, factor nativeToUnixPath workaround * glob for getRst2html * docslocal: 40s to build all docs * revert code dedup in github actions which did not work alas... * fixups
* parser.nim: minor refactorings (#14540)Andreas Rumpf2020-06-011-9/+6
|
* Change severity of template instantiation message [backport] (#14526)Danil Yarantsev2020-06-012-1/+14
| | | | | | | * Change severity of template instatiation msg * Add a test * Trailing newline argh
* Make build_all.sh file executable (#14518)Frank Paulo Filho2020-06-011-0/+0
|
* runnableExamples: correctly handle multiline string litterals (#14492)Timothee Cour2020-06-015-5/+168
| | | | | * runnableExamples: correctly handle multiline string litterals * address comments: improve doc comments + variable namings
* fixes --warningAsError implementation (#14538)Andreas Rumpf2020-06-011-1/+5
|
* Fix `compiles` for nimsuggest [backport] (#14527)Danil Yarantsev2020-06-012-0/+15
| | | | * Handle nimsuggest in tryExpr * Added test
* Fix a problem with extra build commands. (#14528)Khronos2020-06-011-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | When --compileOnly is on, extraCmds are not added to JsonBuildInstructions. ``` $ echo 'echo 123'>test.nim $ nim c --debuginfo --nimcache:cache test $ ls cache test test.dSYM test.nim $ tail -n3 cache/test.json "extraCmds": ["dsymutil /Users/khronos31/src/tmp/test"], "stdinInput": false } ``` ``` $ echo 'echo 123'>test.nim $ nim c --debuginfo --nimcache:cache --compileOnly test $ nim jsonscript --nimcache:cache test $ ls cache test test.nim $ tail -n3 cache/test.json "extraCmds": [], "stdinInput": false } ```
* manual: removed subjective phrase from 'macros' section (#14536)Ico Doornekamp2020-06-011-2/+1
| | | | | | Removed phrase "However, this is no real restriction because Nim's syntax is flexible enough anyway." from the manual - I find it very subjective, and I sometimes *do* find myself restricted by Nim's syntax when writing DSLs
* fixes #14514 [backport:1.2] (#14533)Andreas Rumpf2020-06-011-1/+3
|
* Disable unused warnings for error await template too (#14531)Danil Yarantsev2020-06-011-1/+1
|
* fix CI doc windows: style error in lib/std/time_t.nim (#14523)Timothee Cour2020-05-311-2/+2
|
* Disable unused warnings for await in async macro (#14517)Danil Yarantsev2020-05-311-2/+2
| | | | | * Disable unused warnings for await in async macro * Remove used for the error template
* spec: be explicit that NRVO will evolve furtherAraq2020-05-301-0/+4
|
* document NVRO and exception handlingAraq2020-05-301-0/+65
|
* warn about observerable stores but don't prevent them for 1.2.2 ↵Andreas Rumpf2020-05-303-8/+15
| | | | [backport:1.2]; refs https://github.com/nim-lang/RFCs/issues/230 (#14510)
* fixes #14498 [backport:1.2] (#14503)Andreas Rumpf2020-05-304-6/+26
|
* fixes #14495 [backport:1.2] (#14496)Andreas Rumpf2020-05-292-9/+47
|
* enable compiler docs with their own index+search (#14493)Timothee Cour2020-05-291-21/+28
| | | * enable compiler docs (with its own index)
* fix #14421 items uses lent T (#14447)Timothee Cour2020-05-2911-13/+40
| | | | | * fix #14421 items uses lent T for seq + openArray * add -d:nimWorkaround14447 * fix test