1
0
mirror of https://github.com/danog/amp.git synced 2024-12-02 17:37:50 +01:00
Commit Graph

290 Commits

Author SHA1 Message Date
Aaron Piotrowski
6283d9bbb7
Intial stream transformations 2020-09-24 12:53:28 -05:00
Aaron Piotrowski
12c97b2561
Add explicit dispose() method to Stream 2020-09-24 12:53:28 -05:00
Aaron Piotrowski
96007f11aa
Add Streams 2020-09-24 12:53:27 -05:00
Niklas Keller
05483cdbef
Enforce timer interval as minimum time to execution (#319)
Co-authored-by: Aaron Piotrowski <aaron@trowski.com>
2020-07-14 21:45:35 +02:00
Niklas Keller
e2c63c83eb
Add Amp\Iterator\discard (#315) 2020-05-06 18:57:29 +02:00
Niklas Keller
1e58d53e4a Fix code style and run PsalmTest only on PHP 7.1+ 2020-04-30 06:54:50 +02:00
Niklas Keller
17e2c2344c Improve call / coroutine / wait types, add psalm test 2020-04-30 06:46:52 +02:00
Niklas Keller
feca077369
Provide useful exception trace in TimeoutCancellationToken (#303)
Without this, the exception trace is pretty useless, because it only includes Loop::run() and other internal loop calls, giving absolutely no indication which kind of thing had a timeout.

Use debug_backtrace instead of creating the exception early, because it helps with the changes to GC behavior such a change might introduce.

Co-authored-by: Aaron Piotrowski <aaron@trowski.com>
2020-04-04 17:05:26 +02:00
Niklas Keller
5a294f1381 Fix TracingDriver, add TracingDriverTest 2019-10-01 21:39:23 +02:00
Niklas Keller
4d849191e5
Fix build on Travis (#281) 2019-09-21 23:17:45 +02:00
Aaron Piotrowski
a726db92a5 Only create deferred for backpressure if necessary 2019-09-21 18:30:14 +02:00
Niklas Keller
558f1e9876 Catch also \Exception in clearLoopRethrows() 2019-05-31 11:38:02 -05:00
Niklas Keller
214443b8c6 Fix code style 2019-05-31 11:38:02 -05:00
Niklas Keller
c12828081f Fix exceptions bubbling from Coroutine::__destruct
This has been an edge case potentially hiding some exceptions. The tests have been refactored to error if the loop has watchers leaking from one test to another test.
2019-05-31 11:38:02 -05:00
Niklas Keller
aeb5de16d9 Add failing Coroutine test 2019-05-31 11:38:02 -05:00
Aaron Piotrowski
ef83723a79
Fix signal handler in NativeDriver when used with pcntl_async_signals
Fixes #264.
2019-02-25 18:05:47 -06:00
Bob Weinand
7075ef7d74 Fix #251 - 100% CPU usage in NativeDriver
Also use better bounds for timer - it must not execute before, but may execute a little later (on my system it were up to 7 ms actually)
2018-12-11 11:31:37 +01:00
Aaron Piotrowski
77a12c823b Add Loop::now() 2018-11-26 21:59:15 +01:00
Sascha-Oliver Prolic
96c2eeaa1f Add Promise\wrap (#234) 2018-11-26 19:36:46 +01:00
Sascha-Oliver Prolic
4a98cc4fde Add timeoutWithDefault function (#245) 2018-11-25 17:56:42 +01:00
Niklas Keller
b73e03bfe2 Rename Iterator\collect to Iterator\toArray 2018-11-25 17:09:50 +01:00
Niklas Keller
a60a8e1906 Add tests for Iterator\collect 2018-11-25 17:09:50 +01:00
Gabriel Caruso
6be5d4bfc5 Use dedicated PHPUnit assertions 2018-11-14 22:14:22 +01:00
Niklas Keller
fa3fe1d20b Apply PSR-2 2018-06-18 20:00:01 +02:00
Aaron Piotrowski
242d78a6ec Fix 212 and ignore unreference on invalid watchers (#216)
Fix #212 & Ignore unreference on invalid watchers
2018-04-12 09:46:52 +02:00
Niklas Keller
98cfaa63ca Remove unused variables 2017-12-05 08:48:56 +01:00
Markus Staab
34bf671f13 Automatically add \ for buitins (#186)
Fixes #185.
2017-11-29 13:36:50 +01:00
Niklas Keller
bd428ca31b Fix DriverTest::testBug163ConsecutiveDelayed to use assigned driver 2017-09-19 19:58:07 +02:00
Niklas Keller
7a04dc5c21 Fix EventDriver warnings and bugs
Fixes #163, #159.
2017-09-17 12:18:04 +02:00
Niklas Keller
36794da8e9 Fix code style 2017-07-09 14:17:47 +02:00
Bob Weinand
5e93318d85 Fix issue with the loop not terminating with only unreferenced watchers 2017-07-09 09:28:32 +02:00
Aaron Piotrowski
5f3e21a4a4 Add TimeoutCancellationToken 2017-06-13 12:41:47 -05:00
Niklas Keller
38ef4d9ffa Fix issues with interval = 0 repeat watchers, fixes #131 2017-05-23 19:46:23 +02:00
Niklas Keller
dbc853c3f1 Fix timers with interval = 0 in NativeDriver 2017-05-22 19:54:14 +02:00
Niklas Keller
e8e26d79e7 Revert "Drop max continuation depth"
This reverts commit cdf28fa938.

As streams always buffer before applying backpressure, these might
result in a stack overflow. Another example is file streaming with
the blocking driver, which always immediately succeeds.
2017-05-20 09:40:56 +02:00
Niklas Keller
a289e7e41d Increase testNestedLoopSignalDispatch timeouts 2017-05-19 16:47:55 +02:00
Niklas Keller
03d1630b69 Add further tests for cancellation 2017-05-16 21:56:52 +02:00
Niklas Keller
fdf18dedd7 Fix tabs → spaces 2017-05-16 20:08:27 +02:00
Aaron Piotrowski
be2a9f8c07 Merge pull request #130 from amphp/cancellation
Implement cancellation primitives, resolves #125
2017-05-16 11:32:42 -05:00
Bob Weinand
6e52f3e211 Fix potential issues when operating on destroyed uv handles in shutdown sequence 2017-05-16 18:17:12 +02:00
Niklas Keller
61a7596106 Implement cancellation primitives, resolves #125 2017-05-14 23:07:49 +02:00
Bob Weinand
f063a8311a Shutup "style" checker.... 2017-05-07 19:14:13 +02:00
Bob Weinand
6c03950abd Do not run uv tests separately in its own process 2017-05-07 19:02:22 +02:00
Bob Weinand
55de30c53d Properly run gc_collect_cycles() between tests
This avoids leaking file descriptors with Uv
2017-05-07 13:09:59 +02:00
Niklas Keller
5c81015ddb Increase repeat watcher to make test failure more unlikely 2017-05-03 22:21:57 +02:00
Niklas Keller
50b37b23ef Add asyncCall 2017-05-03 15:21:49 +02:00
Niklas Keller
def42c496a Fix code style 2017-05-02 22:09:11 +02:00
Niklas Keller
5471b17a67 Fix broken test 2017-05-02 21:57:00 +02:00
Niklas Keller
8d9219bf92 Increase timer delay and defer in testMultipleWatchersOnSameDescriptor 2017-05-02 21:51:52 +02:00
Niklas Keller
e00ab0db75 Wrap execution order test in extra defer
This should mitigate the EventDriverTest occassionally failing.

In case this doesn't help, increase the rep1 repeat timer interval.
2017-05-02 21:42:45 +02:00