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

1568 Commits

Author SHA1 Message Date
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
3d5c982f33
Fix version alias 2021-09-19 10:27:42 -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
0ce29b3b22
Unsubscribe from token in finally 2021-09-18 22:41:58 -05:00
Aaron Piotrowski
b63b26b063
Throw if Future::iterate() is provided something other than futures 2021-09-17 14:52:07 -05:00
Aaron Piotrowski
0d3f068fbf
Remove leftover iterator_to_array
Future::iterate() handles both arrays and iterators.
2021-09-17 14:51:33 -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
b5b40cff9c
Remove unused
MultireasonException has been replaced with CompositeException.
2021-09-15 23:14:10 -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
41d3c4c177
Loop::queue() instead of defer() 2021-09-03 18:32:23 -05:00
Aaron Piotrowski
de7f7e0b64
Fix some Psalm issues 2021-09-03 18:15:31 -05:00
Aaron Piotrowski
a236223eac
Combine Future/Suspension arrays 2021-09-03 18:00:25 -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
09fa422918
Move Pipeline creation
EmitSource::pipe() isn't always used, so the property seems to make more sense in PipelineSource.
2021-04-06 15:38:21 -05:00
Aaron Piotrowski
de1a292903
Use only a single fiber in AsyncGenerator 2021-04-06 11:29:00 -05:00
Niklas Keller
ef23e16c88 Improve composer.json 2021-04-05 21:28:42 +02:00
Aaron Piotrowski
d6abef9100
Update for all() prototype change 2021-04-05 10:02:28 -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
56ba17f0ec
Missed this suspension resume/throw 2021-03-28 22:32:58 -05:00
Aaron Piotrowski
2f658986f9
Async resume done by Suspension now 2021-03-28 22:23:53 -05:00
Aaron Piotrowski
d2a5f7e9df
Use Suspension instead of promises in EmitSource 2021-03-28 12:39:11 -05:00
Niklas Keller
9a568b133f Use microtasks for promise callbacks 2021-03-27 16:23:32 +01:00
Niklas Keller
2f778fe069 Use revolt
Removes deprecated APIs.
2021-03-26 22:34:32 +01:00
Aaron Piotrowski
8892b619a5
Remove another leftover
Forgot this when FiberScheduler was dropped.
2021-03-14 13:16:53 -05:00
Aaron Piotrowski
41b9af525d
Move loop fiber storage to Loop 2021-02-19 11:38:59 -06:00
Aaron Piotrowski
99e765a8be
Update promise docs and await() 2021-02-18 09:56:26 -06:00
Aaron Piotrowski
b0b9489a2c
Cleanup await() 2021-02-12 14:19:39 -06:00
Aaron Piotrowski
4290bd7e28
Update to simpler ext-fiber API 2021-02-11 23:02:31 -06:00
Eugene Leonovich
e2d9ebefb0
Fix TypeError in EventDriver (#339) 2021-01-09 22:24:36 -06:00
Markus Staab
870af820e5
Remove leftover (#337) 2021-01-06 22:02:13 +01:00
Markus Staab
f1d87b6e6f
Fix typo (#336) 2021-01-06 21:44:18 +01: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
80ea42bdcf
Update for Fiber constructor change 2020-12-15 22:17:49 -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
ee8343e566
Update for ext-fiber suspend API change 2020-12-09 11:22:47 -06:00
Aaron Piotrowski
0f2cf56142
Missed a static
Not really necessary here, but we use it everywhere else.
2020-11-29 22:38:58 -06:00
Aaron Piotrowski
8865458454
throw is now an expression! 2020-11-29 22:36:55 -06:00