Commit graph

5,248 commits

Author SHA1 Message Date
flywind
f140c92409
fix some warnings (#16952) 2021-02-08 13:50:15 +01:00
flywind
0cf3ba159c
close #15767 (#16959)
* fix some warnings

* close #15767

* Revert "fix some warnings"

This reverts commit 39f2f23b0026d50c42af7be3ad80edf0f1f19610.
2021-02-08 11:47:28 +01:00
flywind
d447c0fe3f
use typeof instead type (#16962) 2021-02-08 09:46:07 +01:00
hlaaftana
4fac8af0c9
Add initRand() with seed based on time (#16953) 2021-02-07 21:15:51 -08:00
flywind
065264eae1
close #16921 (#16951) 2021-02-06 17:33:11 +01:00
flywind
39230422d0
make style consistent (#16944) 2021-02-05 19:58:26 +01:00
Rummskartoffel
2a60974ede
Correct typo in osseps.nim (#16939) 2021-02-04 15:36:28 -08:00
Roman Inflianskas
e9b360c5df
stdlib/os: handle symlinks in copy/move functions (#16709)
* stdlib/os: handle symlinks in copy/move functions

- Added optional `options` argument to `copyFile`, `copyFileToDir`, and
  `copyFileWithPermissions`. By default, symlinks are followed (copy files
  symlinks point to).
- `copyDir` and `copyDirWithPermissions` copy symlinks as symlinks (instead of
  skipping them as it was before).
- `moveFile` and `moveDir` move symlinks as symlinks (instead of skipping them
  sometimes as it was before).
- Added optional `followSymlinks` argument to `setFilePermissions`.

See also: https://github.com/nim-lang/RFCs/issues/319

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>

* Address comments in #16709

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>

* Address comments in #16709 (second iteration)

Skip symlinks on Windows.

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
2021-02-04 18:57:41 +01:00
konsumlamm
f4449a897d
Sugar tests (#16820) 2021-02-02 18:11:59 -08:00
narimiran
1d1c831efa [ci skip] CountTable, remove link to unexisting proc 2021-02-02 09:52:39 +01:00
Timothee Cour
4b2054a7bf
dumpToString: improves on sugar.dump (#16841)
* dumpToString
* _
* fixup
* changelog
* address comment: removed the word "Deprecated"
2021-02-02 07:41:33 +01:00
konsumlamm
15d6be52a1
Improve doc comments (#16902)
Add runnableExamples
Use `reduce` in `initRational` and `//`
Add static tests
2021-02-02 07:04:30 +01:00
Timothee Cour
917f12ae52
2.5x- 3x faster copyFile on osx (#16883) 2021-02-01 17:38:17 -08:00
flywind
a2855b66ae
JS: make hash float support IE/Safari (#16872) 2021-02-01 13:19:25 +01:00
ee7
0b01eddace
critbits: fix error from strictFuncs (#16877)
Previously, compiling a file containing just `import critbits` with
`nim c --experimental:strictFuncs` would produce the following error:
    critbits.nim(529, 6) Error: 'toCritBitTree' can have side effects

This was introduced by 2aed418698 (#16564).

Fixes: #16873
2021-02-01 13:14:23 +01:00
Timothee Cour
1a74576854
distinctBase now is identity instead of error for non distinct types (#16891) 2021-02-01 13:10:52 +01:00
Miran
25c75752d0
remove quotation marks around imports - fixes links in the docs (#16888) 2021-02-01 06:50:23 +01:00
konsumlamm
c05d1aab13
Add more runnableExamples (#16864)
Add more links
2021-01-31 18:53:22 +00:00
konsumlamm
13640c08a2
Minor docs improvement for oids (#16882) 2021-01-31 01:29:50 -08:00
flywind
111092e8aa
refactor hash in JS backend (#16863) 2021-01-30 14:14:38 +01:00
Timothee Cour
6e267d28b3
remove conditionals on nimHasUserErrors, nimNoNilSeqs2, nimNoNilSeqs (#16861)
* cleanup docs for type(nil) | type(nil); simplify nimHasUserErrors

* simplify nimNoNilSeqs2

* simplify nimNoNilSeqs

* fixup
2021-01-29 14:30:24 +01:00
Joey
0d1c5f4137
A new request should always have a new content-length (#16667)
* A new request should always have a new content-length

In [my last PR](https://github.com/nim-lang/Nim/pull/16618) I made a mistake by assuming that the client.headers were cleared on every request, like the Python version. So, due to the fact that Nim keeps the client headers, we need to clear the Content-Length header on each request (which makes sense because you almost never want to use the same Content-Length twice, but you may want to reuse other headers)

* Move content-length to newHeaders instead of in the global client headers

* Use single backticks
2021-01-28 00:07:08 +00:00
konsumlamm
3c8fddbc76
Improve documentation for the mersenne module (#16824)
* Improve documentation for mersenne

Add tests for mersenne

* Add link to Wikipedia article
2021-01-27 19:14:13 +00:00
konsumlamm
c9801d7abc
Improve documentation for threadpool (#16821) 2021-01-27 19:05:31 +00:00
Jason Beetham
dde096ffde
added enum indexed array support to json (#16807)
* added enum indexed array support to json

* Added json test

* Removed when statement for enum indexed arrays
2021-01-26 00:55:49 +01:00
Elliot Waite
0436a7cffd
Make small text changes in the docs (#16634)
* Fix broken links in docs

* Fix rand HSlice links

* Make small text changes in the docs

* Fix typo in contributing docs
2021-01-25 14:59:19 +01:00
konsumlamm
20993047ce
Sugar improvements (#16802)
* Use runnableExamples in sugar

Remove unnecessary import

* Add trailing newline

* Address nits

* Remove unneccessary convolution

* Change wording

Co-authored-by: Clyybber <darkmine956@gmail.com>
2021-01-25 14:41:55 +01:00
flywind
8d3e0c7b9b
make oids module better (#16704)
* make oids modules better

* Update lib/pure/oids.nim

* fix
2021-01-25 07:39:25 +01:00
konsumlamm
d5ce648838
Fix an RST issues introduced in #16777 (#16798) 2021-01-22 13:22:52 -08:00
Timothee Cour
aca97250ea
remove private checkSymlink (redundant with symlinkExists) (#16785) 2021-01-22 20:03:33 +01:00
konsumlamm
d2b218b80a
Improve the marshal module (#16777)
* Improve marshal

Use runnableExamples
Refactor tests

* Readd {.inheritable.} test

Apply suggestions
2021-01-22 19:52:34 +01:00
Timothee Cour
18b983d7e3
addQuitProc => addExitProc (#16765) 2021-01-22 19:51:11 +01:00
Timothee Cour
8f1f0bd1da
typetraits: make genericHead docs reflect reality; use runnableExamples (#16776) [backport:1.4] 2021-01-22 15:06:45 +01:00
Daehee
2d0cb18b9f
Fix SIGSEGV in httpclient response body (#16766)
* initialize httpclient response bodyStream; prevent SIGSEGV when getBody is false

* Update lib/pure/httpclient.nim

* Update lib/pure/httpclient.nim

Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2021-01-22 15:04:52 +01:00
Roman Inflianskas
fdf4f74cd1
Fix #16741 (#16783)
Move `downloadFileEx` out of `downloadFile` (solution, proposed by
@Yardanico).

Tested manually.
2021-01-22 00:29:24 +01:00
flywind
dfe6797023
fix #15628 (#16387)
* done

* Apply suggestions from code review

* fixup

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
2021-01-21 17:31:47 +01:00
flywind
a0fddfecd4
perpare for more compact bit operations in JS (#16728) 2021-01-19 14:57:16 +01:00
Andreas Rumpf
0300203e81
intsets are here to stay (#16751) 2021-01-19 14:17:22 +01:00
konsumlamm
bd5ce5b351
Improve documentation for stats (#16742)
* Improve documentation for stats

* Address nits

* Update lib/pure/stats.nim

Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2021-01-19 08:40:09 +01:00
konsumlamm
44ceefa9fe
Improve documentation for packedsets (#16715)
* Improve documentation for packedsets

Add more runnableExamples
Add deprecated pragma to intsets
Replace intsets with packedsets in lib.rst

* Apply suggested changes
2021-01-16 16:09:53 +01:00
flywind
8939de15d7
minor improvement on math.nim (#16733) 2021-01-16 12:37:23 +01:00
Juan Carlos
78a99587a4
Deprecate TaintedString (#15423)
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
Co-authored-by: Dominik Picheta <dominikpicheta@googlemail.com>
2021-01-15 18:56:38 -08:00
konsumlamm
7b632f9ccb
Improve documentation for the hashes module (#16720)
* Improve documentation for hashes

* Fix runnableExamples

* Apply suggestions
2021-01-15 22:42:01 +00:00
vabresto
a90f7a66ed
Transfer-Encoding:chunked tests (#16678)
* Add tests and fix extra newlines in body

* Fixes per comments

* Slight rephrase per comments

* Improvements per comments

* Add getSocket to reduce test flakiness per comment

* Remove unused lines from header

* Add doc comment to getSocket per comment

* Apply witchcraft to replace `discard Future`

* Return HTTP 400 on bad encoding in request

* Fix runnable example for getSocket

* Fix import to fix runnable examples

* Even more imports for the example

* Better self documenting runnable example

* Add missing import

* Import from module with correct signature

* Resolve port type mismatch
2021-01-14 20:17:02 +01:00
Yuriy Glukhov
4ae520711d
Fixes #16436 (#16695)
* Fixes #16436

* Comments addressed
2021-01-14 08:53:21 +01:00
Timothee Cour
fee5fbc722
fix #16703; revert most of #16480; add tests/stdlib/tmimetypes.nim (#16711) 2021-01-13 14:52:59 -08:00
Yuriy Glukhov
165d39738d
Check for errors after sendPendingSslData (#16696)
* Check for errors after sendPendingSslData

* Leftover comment removed
2021-01-13 15:09:28 +01:00
Mildred Ki'Lya
71db2be833
Improve uri.parseQuery to never raise an error (#16647)
In case of malformed query string where there is `=` on the value, handle
this character as part of the value instead of throwing an error.

The following query string should no longer crash a program:

    key=value&key2=x=1

It will be interpreted as [("key", "value"), ("key2", "x=1")]

This is correct according to latest WhatWG's HTML5 specification
recarding the urlencoded parser:
https://url.spec.whatwg.org/#concept-urlencoded-parser

Older behavior can be restored using the -d:nimLegacyParseQueryStrict
flag.
2021-01-12 13:42:05 +01:00
konsumlamm
bf184bcdd9
Remove longestMatch in _WithPrefix iterators (#16689) 2021-01-12 08:35:27 +01:00
konsumlamm
5897ed9d3d
Improve documentation of strmisc (#16665)
Simplify examples
2021-01-11 10:53:15 +01:00