Zahary Karadjov
34b81961d3
Revert "asyncCheck(): don't raise exception on cancellation ( #121 )"
...
This reverts commit baf33f04eaac481251ca306258ca5877e7a45a46.
This change hides exceptions that should be handled explicitly -
asyncCheck is a debugging tool that should only be used in
exception-free situations (indeed, to fail when the operation
unexpectedly raises). There is no rough consensus behind this
change.
2020-08-16 01:48:25 +03:00
Ștefan Talpalaru
baf33f04ea
asyncCheck(): don't raise exception on cancellation ( #121 )
2020-08-12 16:24:55 +02:00
Ștefan Talpalaru
d0a17d551f
more docs ( #111 )
...
* more docs
* make CancelledError and object of Exception
2020-08-06 20:52:50 +02:00
Ștefan Talpalaru
e45ef32b5b
some metrics for monitoring futures ( #85 )
2020-08-06 19:30:53 +02:00
Ștefan Talpalaru
f5634f499d
cancelAndWait(): add comments ( #112 )
...
The cancellation process has a very complicated control flow, split over
different files and hidden by macros. These comments should help shed a
light on this madness.
2020-07-30 02:47:11 +02:00
Eugene Kabanov
ce6e7d17b1
Make Future tracking and stack traces optional ( #108 )
...
* Make Future tracking optional via -d:chronosDutureTracking compilation flag.
* Stack traces is now optional, use -d:chronosStackTraces.
* Fix mistypes and add test for chronosStackTrace option.
2020-07-08 19:48:01 +03:00
Eugene Kabanov
5629b3c41f
[WIP] Zero-cost unattended Future[T] tracking mechanism. ( #106 )
...
* Zero-cost unattended Future[T] tracking mechanism with tests and tracking of test suite.
2020-07-06 09:33:13 +03:00
Eugene Kabanov
16ed169f25
Fix cancellation race when low level futures are already completed, while cancellation process is pending. ( #107 )
...
Added test.
2020-07-03 15:03:59 +03:00
cheatfate
357baa52a0
Fix documentation for or
.
2020-04-21 07:33:31 +03:00
Eugene Kabanov
2ecc5500c2
Undeprecate or
operation. ( #93 )
...
* Undeprecate `or` operation.
Fix `or` for already finished futures.
Add tests.
* Bump version to 2.3.9.
2020-04-21 07:07:49 +03:00
Eugene Kabanov
4e2810cfe0
Fix issue with allFinished(), allFutures(), one() behavior when Futures passed are already finished. ( #89 )
...
Added test.
2020-04-06 13:56:24 +03:00
Eugene Kabanov
cbd8e03823
Add allFinished() primitive. ( #87 )
...
* Add allCompleted() primitive.
* Rename it to allFinished().
* Fix allFinished Future's static name.
Use `mitems()` instead of `for`.
2020-04-01 12:10:56 +03:00
Zahary Karadjov
a9ed7e4f3f
FutureDefect is a type of Defect
2020-02-18 00:35:03 +02:00
cheatfate
74700fdcab
Fix bug cancellation handlers not called in wait() and withTimeout().
...
Fix double completion bug because of callback race.
Fix deprecation warnings.
Rename some internal procedures.
Bump version to 2.3.5.
2020-01-27 22:32:08 +02:00
cheatfate
a20c34603e
Revert back some exception changes.
2019-12-02 12:40:41 +02:00
Yuriy Glukhov
4d61345978
Use CatchableError as base instead of Exception
2019-11-22 18:59:02 +02:00
cheatfate
9ce7141087
Fix cancel() issue.
...
Fix asyncstream.nim not propagating cancellation.
Fix tlsstream.nim to proper propagate cancellation.
Fix tlsstream.nim stuck on close.
2019-10-17 14:44:14 +03:00
Eugene Kabanov
b41af14f86
Fix emscripten compilation errors. ( #46 )
...
* Move initAPI to newDispatcher() call.
2019-09-10 13:19:49 -04:00
Yuriy Glukhov
e3cb0d1a96
Await is a template now
2019-08-15 16:01:26 +02:00
cheatfate
fcfb87d2a0
Deprecate oneIndex(), oneValue(), all(), or(), and().
...
Add allFutures() and one().
Fix deprecation in chunkedstream.
Add tests.
2019-07-04 15:04:59 +03:00
cheatfate
13301005a3
Return back ValueError.
2019-06-25 10:50:56 +03:00
cheatfate
15b25140b4
Let complete/fail cancelled Future[T]/FutureVar[T] for free.
2019-06-25 10:18:47 +03:00
cheatfate
7d7753b7fd
Initial cancellation proposal.
2019-06-20 23:30:41 +03:00
cheatfate
c27c564d47
Add oneIndex(), oneValue() which are varargs or
operation.
...
Fix some deprecation warnings for Nim devel.
Add tests for oneIndex(), oneValue().
2019-06-04 19:51:35 +03:00
cheatfate
66160a9630
Move fromProc to SrcLoc.
2019-04-08 16:46:22 +03:00
cheatfate
cd745a20ed
Add SourceLocation.
...
All the Future[T] operations using SourceLocation now.
2019-04-08 03:59:49 +03:00
cheatfate
80ee289847
Fix rarely appearing Windows bug with close(transport).
...
Add tests for it.
Add fromProc for all Future[T] in transports.
Add testall to improve tests speed.
Bump version to 2.2.4.
2019-03-31 00:31:10 +02:00
cheatfate
4290e06e77
Fix #16 .
2019-03-29 11:53:24 +02:00
cheatfate
ea3fb9629a
Fixed all() implementation.
2019-03-15 02:43:51 +02:00
Ștefan Talpalaru
685665ad21
assert() -> doAssert()
2019-03-14 04:03:32 +01:00
Mamy Ratsimbazafy
9f15c6b752
Rebrand Asyncdispatch2 to Chronos [WIP] ( #20 )
...
* Update file headers, copyright date
* Rename files and hopefully fix nimble
* Forgot to change path in tests
* Update readme
2019-02-06 15:49:11 +01:00