Commit Graph

2840 Commits

Author SHA1 Message Date
Simon Krauter
a42801d100 Make countLines() the same as len(splitLines(s)) (#5470)
The result of countLines() is now increased by 1 compared to the old
version.
Fixes #5460.
2017-03-03 01:31:17 +01:00
Ruslan Mustakov
a81247dcbe Add compute proc for SharedTable (#5385) 2017-03-02 15:31:30 +01:00
Rokas Kupstys
cd2721242a Fix waiting on coroutines (#5463)
Public coroutine API returns a safe reference to specific running coroutine. Fixes bug where multiple coroutines executing same procedure would identify as same coroutine.
Greatly optimizes `alive()` (and as a result of that `wait()`) calls.
Coroutine struct is allocated together with stack as memory unmanaged by GC.
2017-03-02 14:53:50 +01:00
Florent
9965123098 Fixes #5457 - StdLib base64 encodeInternal crashes with out of bound exception (#5464) 2017-03-02 08:54:45 +01:00
Dominik Picheta
37abcf18f8 Merge pull request #5466 from yglukhov/asynchttpserver-bad-content-length
Dont assert on malformed requests
2017-03-01 19:14:02 +00:00
Yuriy Glukhov
f842f9d6aa Dont assert on malformed requests 2017-03-01 17:11:39 +02:00
Yuriy Glukhov
28a7c874b7 Revert "Listen on ipv6" (#5461) 2017-03-01 15:03:10 +01:00
Federico Ceratto
dd4d47c671 Add gethostname to nativesockets (#5443) 2017-03-01 09:44:24 +01:00
Andrey Sobolev
78de355ec6 Fix async timers execution. (#5448) 2017-03-01 09:43:24 +01:00
Andreas Rumpf
2b0ad99af0 Merge pull request #5442 from FedericoCeratto/patch-24
Add comment on return value
2017-02-27 16:37:35 +01:00
Andreas Rumpf
c3d6819bad Merge pull request #5446 from endragor/mt-defaultsslcontext
Ensure default SSL context is always initialized
2017-02-27 16:29:46 +01:00
Ruslan Mustakov
ef508047bf Ensure default SSL context is always initialized 2017-02-27 16:42:51 +07:00
Ruslan Mustakov
2096d399b1 Explicitly mark log() method as gcsafe 2017-02-27 16:40:43 +07:00
Araq
b724f46f6f make tests green again 2017-02-26 23:25:50 +01:00
Araq
51ece61f03 documentation for strscans.scanp; fixes #5154 2017-02-26 23:25:50 +01:00
Andreas Rumpf
895e2aea15 Merge pull request #5317 from rokups/feature/coroutines
Coroutine improvements
2017-02-26 23:24:29 +01:00
Andreas Rumpf
e5341a391d Merge pull request #5373 from nim-lang/feature/async-streams
Async streams and HTTP client streaming downloads support
2017-02-26 17:35:08 +01:00
Federico Ceratto
a49d88f18a Add comment on return value 2017-02-26 14:34:08 +00:00
Araq
48c50f6b41 make the logic right 2017-02-26 13:28:46 +01:00
Dominik Picheta
b5de988eda Fix the other withNewLine template. 2017-02-26 12:54:03 +01:00
Dominik Picheta
f9cce32097 Various fixes to FutureStreams based on PR feedback. 2017-02-26 12:52:19 +01:00
Dominik Picheta
912d95a6ea Add small warning in httpclient's onProgressChanged docs. 2017-02-26 11:36:16 +01:00
Araq
5ce8e0b5cd better docs for strutils.escape 2017-02-26 01:02:50 +01:00
Araq
2589d69ed2 fixes #5430 2017-02-26 00:32:07 +01:00
Fabian Keller
5774145f5d added hash for uints (#5435) 2017-02-26 00:17:21 +01:00
Fabian Keller
f250c30b9d Make use of used in unittest (#5410) 2017-02-25 21:18:16 +01:00
Araq
45765601e0 fixed premature finishing of httpclient.downloadFile 2017-02-25 17:26:03 +01:00
Araq
1961e444c3 Merge branch 'devel' into feature/async-streams 2017-02-25 11:18:48 +01:00
Yuriy Glukhov
d878c4c1b4 Listen on ipv6 2017-02-25 02:20:16 +02:00
Dominik Picheta
7579171ee7 Merge pull request #5427 from ivankoster/patch-1
Remove unnecessary colon in unittest.nim code example
2017-02-24 18:13:27 +01:00
Dennis Felsing
4af2c26c91 Make toHex work for uints (#5423) 2017-02-24 16:48:22 +01:00
Federico Ceratto
469a7d258c Add warning about log flushing. Related to #3269 (#5424) 2017-02-24 15:58:02 +01:00
Ivan Koster
8ebc869773 Remove unnecessary colon in unittest.nim code example 2017-02-24 15:43:31 +01:00
Emery Hemingway
2ba374f9ab match json.toPretty style with NodeJS's stringify (#5406) 2017-02-21 20:24:55 +01:00
Rokas Kupstys
5aef77a3d3 Removed test code from coro.nim and created three real tests for coroutines 2017-02-20 17:54:15 +02:00
Rokas Kupstys
f80ddbbcc6 Use constant nimCoroutines instead of defined(nimCoroutines)
Variable
2017-02-20 17:24:19 +02:00
Rokas Kupstys
c3d1b732d6 Reworked gc support for coroutines. Nim now bootstraps with -d:nimCoroutines
Added gc test to coro.nim
Lots of misc improvements and comments in coro.nim
2017-02-20 17:24:19 +02:00
Rokas Kupstys
ce4e9846f0 Iterators test in coroutines 2017-02-20 17:24:19 +02:00
Rokas Kupstys
ff1bf74554 Delete fiber context when it exits (memleak fix)
Few correctness changes to gc stack management.
2017-02-20 17:24:19 +02:00
Rokas Kupstys
9a754156d7 Added support for exceptions in coroutines and added exception test
Fix bug where first coroutine ending would terminate main loop
2017-02-20 17:24:19 +02:00
Rokas Kupstys
373e667dbc Coroutine rework.
* ucontext backend (default on unix)
* setjmp backend
* fibers backend (default and required on windows)
* Fixed coroutine loop timing issues
* Fixed saving of xmm registers on x64 windows
* Fixed alignment issues
* Updated coroutine sample with cooperative fibonacci calculation.
* Disable glibc security features only when platform jump functions are used
* Removed dependency on fasm.
    * Using fiber api on windows.
    * Other platforms and compilers  will use built in assembler and .S files or API provided by platform libc.
* Replaced stack switching procs with `coroExecWithStack()` which never returns. This makes compiler always generate proper code.
2017-02-20 17:24:19 +02:00
Araq
9303a02d6b Merge branch 'devel' of github.com:nim-lang/Nim into devel 2017-02-17 18:04:09 +01:00
fenekku
e9767d8809 Fix reverse on empty openArray (#5407)
Reversing an empty `openArray` would raise a RangeError. For instance for `a: seq[int] = @[]`, we have `a.high` return `-1` but `-1` is not a `Natural`. Leaving the array as-is is the expected behaviour.
2017-02-17 08:26:49 +01:00
Araq
5620e08563 minor documentation improvements 2017-02-17 00:00:39 +01:00
Araq
5d4ed1117d distros.nim: brew usually doesn't require 'sudo' 2017-02-16 22:53:32 +01:00
Dominik Picheta
a336bf2395 Fixes parseHeader("foo:") != ("foo", @[""]). Refs #5344. 2017-02-13 21:14:29 +01:00
Ruslan Mustakov
92665e6e9a Add hash proc for cstrings (#5386) 2017-02-13 13:38:30 +01:00
flyx
ac9c2126e6 Added BiggestUInt (#5378) 2017-02-13 11:20:07 +01:00
Federico Ceratto
0d1aa9225a Make walkDirRec docstring more clear (#5377) 2017-02-12 16:02:50 +01:00
Dominik Picheta
f9f86899b5 Implement streamed async/sync downloadFile and deprecate old one. 2017-02-11 14:00:53 +01:00