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

383 Commits

Author SHA1 Message Date
Aaron Piotrowski
cfb527a9fc
Fixed phpunit-util, so Closure::fromCallable() not necessary 2021-12-02 17:47:30 -06:00
Aaron Piotrowski
1a2be8f2b2
Rename weaken to weakClosure and limit to closures 2021-12-02 17:08:12 -06:00
Niklas Keller
9f6b75485f Add tests for iterator cancellation 2021-12-02 23:10:12 +01:00
Niklas Keller
fb7e5b69a9 Fix code style 2021-12-02 23:00:12 +01:00
Niklas Keller
99a6b487c3 Rename Deferred to DeferredFuture 2021-12-02 22:29:45 +01:00
Niklas Keller
112e813914 Rename CancellationToken to Cancellation 2021-12-02 22:24:56 +01:00
Aaron Piotrowski
3926b3f978
Rename launch to async
Thus we've come full circle :P
2021-12-02 13:44:10 -06:00
Niklas Keller
31a34bcb18 Make WeakenTest less timing dependent 2021-12-02 19:12:06 +01:00
Niklas Keller
557913da92 Make WeakenTest less timing dependent 2021-12-02 19:01:05 +01:00
Niklas Keller
37db787ba6 Use \Closure instead of callable 2021-12-02 18:40:51 +01:00
Aaron Piotrowski
fbc7d5f0ec
Rename Future::apply() to map() 2021-11-29 18:36:07 -06:00
Aaron Piotrowski
0f0d13ca31
Remove Interval
No longer necessary since loop watchers can suspend.
2021-11-29 16:10:22 -06:00
Aaron Piotrowski
5a92af3a1b
Rename coroutine to launch 2021-11-20 10:23:55 -06:00
Niklas Keller
f267707c66 Fix code style 2021-11-14 18:35:07 +01:00
Pader
ac89b9e2ee
Add default value of null to complete() (#368)
Co-authored-by: Niklas Keller <me@kelunik.com>
2021-11-07 10:49:33 +01:00
Aaron Piotrowski
d81275f1b7
Add Future::apply(), catch(), and finally() 2021-10-23 11:53:44 -05:00
Aaron Piotrowski
27219ddbc0
Update for removal of Revolt\launch 2021-10-17 13:24:55 -05:00
Aaron Piotrowski
d937f3d7e0
Widen timing on Interval test 2021-10-16 09:34:39 -05:00
Aaron Piotrowski
4f21306115
Update for Revolt changes 2021-10-14 17:50:40 -05:00
Aaron Piotrowski
cd553c6005
Add Interval 2021-09-30 16:03:59 -05:00
Aaron Piotrowski
68470efad8
Add weaken() 2021-09-29 17:58:12 -05:00
Aaron Piotrowski
2a53328982
Fix all() with iterable
Key order is not guaranteed, like the other Future combinators. This does not affect array unpacking.
2021-09-20 22:02:33 -05:00
Aaron Piotrowski
493e59e8ab
Throw unhandled Future failures to the event loop 2021-09-20 18:36:44 -05:00
Aaron Piotrowski
ca122a9035
Update for Revolt changes 2021-09-19 10:20:04 -05:00
Aaron Piotrowski
24a1dce81c
Rename Future::join() to await() 2021-09-18 23:05:16 -05:00
Aaron Piotrowski
c98c9a40d2
Rename Amp\Future\spawn() to Amp\coroutine()
Added delay() and trap() functions.
2021-09-18 23:04:20 -05:00
Aaron Piotrowski
a35a6da724
Rename first() to race()
Mirrors name in JS.
2021-09-16 21:01:18 -05:00
Aaron Piotrowski
a7f31d1b98
Fix future completing then cancelling join
If both callbacks are enqueued they may be both invoked, so only throw to the suspension if the promise isn't resolved.
2021-09-16 20:54:19 -05:00
Aaron Piotrowski
e0fe64c495
Add settle() 2021-09-16 20:49:55 -05:00
Aaron Piotrowski
81b9c749a7
Add some() 2021-09-16 20:49:42 -05:00
Aaron Piotrowski
bfe8d635b8
Export Pipeline to separate repo 2021-09-05 23:47:06 -05:00
Aaron Piotrowski
b757b74c62
Test merge disposal; provide exception to dispose callbacks
Plus some doc updates.
2021-09-04 09:58:01 -05:00
Aaron Piotrowski
73fb73614e
Reduce overhead for timeout cancellation tokens 2021-08-30 12:07:07 -05:00
Aaron Piotrowski
eab76ca303
Cancellable joins 2021-08-29 23:28:25 -05:00
Aaron Piotrowski
5b95aa590c
Update for Revolt changes and Future import 2021-08-29 12:18:24 -05:00
Aaron Piotrowski
7e30ee0c2c
Import Future
Co-authored-by: Niklas Keller <me@kelunik.com>
2021-08-29 12:18:05 -05:00
Aaron Piotrowski
10817e8522
Rename fail() to error()
Matches Future methods.
2021-04-04 13:31:08 -05:00
Aaron Piotrowski
8043c1e92b
Never throw from AsyncGenerator constructor 2021-04-04 13:29:15 -05:00
Aaron Piotrowski
820bbd2058
Use Revolt Futures, drop Promises 2021-04-04 13:10:23 -05:00
Aaron Piotrowski
d2a5f7e9df
Use Suspension instead of promises in EmitSource 2021-03-28 12:39:11 -05:00
Niklas Keller
2f778fe069 Use revolt
Removes deprecated APIs.
2021-03-26 22:34:32 +01:00
Aaron Piotrowski
4290bd7e28
Update to simpler ext-fiber API 2021-02-11 23:02:31 -06:00
Aaron Piotrowski
f02dbc8585
Update for FiberScheduler changes 2021-01-04 13:57:33 -06:00
Aaron Piotrowski
ae93b4cf21
Rename Signal to SignalTrap
Also renamed Amp\signal() to trap(), a nice analog to bash’s trap.
2020-12-27 16:31:45 -06:00
Aaron Piotrowski
7c7e0ea554
Rename Loop::get() to Loop::getDriver()
Also Loop::set() to Loop::setDriver().
2020-12-12 12:15:18 -06:00
Aaron Piotrowski
8865458454
throw is now an expression! 2020-11-29 22:36:55 -06:00
Aaron Piotrowski
a673c80fde
Fix active watchers in some tests 2020-11-21 00:18:36 -06:00
Aaron Piotrowski
014adbd89e
Fix emit after disposal 2020-11-16 17:20:13 -06:00
Aaron Piotrowski
fa31b4b3d5
Pipeline extends Traversable
Allows pipelines to be used directly with foreach.
2020-11-10 12:05:47 -06:00
Aaron Piotrowski
6d5e0f5ff7
More direct use of fiber
Avoids creating unnecessary promise objects.

delay(0) ticking the loop only once required using delay(x) instead of delay(0) in some tests.
2020-11-05 23:55:06 -06:00