1
0
mirror of https://github.com/danog/parallel.git synced 2024-12-02 09:37:57 +01:00
Commit Graph

147 Commits

Author SHA1 Message Date
Aaron Piotrowski
dbd3403087
Quiet style fixer 2017-11-10 11:35:47 -06:00
Aaron Piotrowski
26e826a05f
Add code to exception message, addresses #21
Code is no longer passed to exception constructor in parent context.
2017-11-10 11:32:15 -06:00
Aaron Piotrowski
0e71b18197
Faster freeing of task memory 2017-11-10 10:32:01 -06:00
Aaron Piotrowski
aaee76e3da
Rename Threading namespace to Thread 2017-11-10 10:00:04 -06:00
Aaron Piotrowski
f48066eb1b
Drop Fork along with Process and Strand interfaces
Forking is just too dangerous for virtually no gain over Process. Context now extends Sync\Channel.
2017-11-10 09:59:23 -06:00
Aaron Piotrowski
0ef74413af
Fix updating TTL; add more environment tests 2017-07-29 10:29:16 -05:00
Aaron Piotrowski
84b611e780
Move ExitResult classes out of Internal namespace 2017-07-28 17:34:24 -05:00
Aaron Piotrowski
0df4fa9cce
Add internal annotations 2017-07-27 23:49:20 -05:00
Aaron Piotrowski
3d5e1c6e6f
Refactor BasicEnvironment
Remove \Countable, add tests.
2017-07-27 23:47:36 -05:00
Aaron Piotrowski
cab8bbe8f6
Add ability to set Environment class name 2017-07-27 23:31:43 -05:00
Aaron Piotrowski
faf1555b9c
Move TaskRunner out of Internal namespace 2017-07-26 23:32:19 -05:00
Pieter Hordijk
8e6def047e Fixes the constant used
`\PHP_BINARY` will never give phpdbg, but always the full path to the
binary. You meant to use `\PHP_SAPI` here too just like on the previous
line.
2017-07-26 20:16:47 +02:00
Aaron Piotrowski
6ed128f3e7
Quite style fixer 2017-07-20 23:58:13 -05:00
Aaron Piotrowski
affe305e93
Use null for new scope 2017-07-20 23:36:53 -05:00
Aaron Piotrowski
1a6896b047
Exit thread immediately if parent context died while starting 2017-07-20 23:36:28 -05:00
Aaron Piotrowski
f716981c95
Exit thread immediately if killed while loading autoloader 2017-07-19 00:14:16 -05:00
Aaron Piotrowski
58ce0df037
Remove unnecessary try/catch
execute() will never throw, so no reason to wrap in try/catch.
2017-07-19 00:08:55 -05:00
Aaron Piotrowski
bba0610ede
Use call() to execute context function 2017-07-19 00:07:04 -05:00
Aaron Piotrowski
d4a2c311ca
Do not start global pool until used 2017-07-17 22:54:14 -05:00
Aaron Piotrowski
ff146bc8ba
Reduce default pool size 2017-07-17 22:53:19 -05:00
Aaron Piotrowski
c22d2838c7
Read more data if channel prefix is invalid 2017-06-28 23:59:24 -05:00
Niklas Keller
77de09894f Allow mixed for exception codes, because PDO 2017-06-28 12:41:59 +02:00
Niklas Keller
6b2f5cd3fa Bypass shell on Windows to fix paths with spaces 2017-06-24 00:29:34 +02:00
Niklas Keller
acd8b59d53 Apply escapeshellarg on PHP_BINARY so it works on paths with spaces
This is especially important on Windows with PHP being in C:\Program Files\...
2017-06-24 00:12:12 +02:00
Niklas Keller
8ecfed57bf Unreference stderr reading, so it doesn't keep the loop running 2017-06-23 16:44:17 +02:00
Niklas Keller
8c726c67b6 Remove -- when invoking the PHP CLI binary 2017-06-21 18:20:06 +02:00
Niklas Keller
84cd33a503 Pipe stderr of worker processes to the parents stderr 2017-06-21 18:20:06 +02:00
Niklas Keller
ba4e101314 Use argseparator (--) also for PHP CLI 2017-06-21 17:30:26 +02:00
Niklas Keller
d3ccd57d23 Never display errors, log them instead 2017-06-21 15:30:52 +02:00
Aaron Piotrowski
29a1d1bb8c
Maintain task order for fast-finishing/blocking tasks 2017-06-19 22:14:19 -05:00
Aaron Piotrowski
20bb51e926 Improve worker error reporting 2017-06-17 23:57:12 -05:00
Niklas Keller
4546ef8b1d Skip cli_set_process_title inside phpdbg 2017-06-17 20:46:22 +02:00
Niklas Keller
39664d42d0 Fix binary when running via phpdbg 2017-06-17 19:27:16 +02:00
Niklas Keller
a6bca0f085 Fix code style 2017-06-17 18:31:35 +02:00
Aaron Piotrowski
820b6897ed Update for process changes 2017-06-15 23:46:15 -05:00
Aaron Piotrowski
f9be01adb5 Use parser package; refactor ChannelledSocket 2017-06-07 23:33:13 -05:00
Aaron Piotrowski
5a36a60651 Delay call to close 2017-06-01 11:15:03 -05:00
Aaron Piotrowski
0b16820ca8 Check for exit when sending as well 2017-05-28 00:09:13 -05:00
Aaron Piotrowski
a31f3491ca Only check for exit when receiving, fixes #9 2017-05-27 00:43:09 -05:00
Aaron Piotrowski
149dbe4ba3 Use Amp\call to run tasks
Handles generator to coroutine convertion and React promises automatically.
2017-05-19 17:13:42 -05:00
Niklas Keller
2e9a29ae1c Apply Amp's code style 2017-05-18 09:51:31 +02:00
Aaron Piotrowski
1f637cfc6f Map deferreds to promises 2017-05-17 23:28:18 -05:00
Aaron Piotrowski
c7294da60d Reorganize exception classes and add TaskError
TaskError is thrown if the exception thrown in the worker was an instance of Error.
2017-05-17 23:13:29 -05:00
Aaron Piotrowski
cc6f785fa9 Pause → Delayed 2017-05-10 23:45:02 -05:00
Niklas Keller
b148a20257 Update to latest Amp and byte-stream changes 2017-05-10 09:05:35 +02:00
Aaron Piotrowski
c9be318356 Create new event loop in fork 2017-04-24 09:51:24 -05:00
Aaron Piotrowski
19d8cf79a1 Update ChannelledStream
Refactor of ReadableStream means ChannelledStream needed to change significantly.
2017-04-16 10:12:42 -05:00
Aaron Piotrowski
8a18a7a7b8 Require both params in constructor 2017-03-25 01:19:46 -05:00
Aaron Piotrowski
99c876f522 Update for stream changes 2017-03-23 19:25:35 -05:00
Aaron Piotrowski
9bf978ad01 when() → onResolve() 2017-03-21 18:45:23 -05:00
Aaron Piotrowski
34d07fcd34 Update for process change 2017-03-16 22:26:05 -05:00
Aaron Piotrowski
0236fc5336 Kill worker forks
Forking for workers is just not a good idea… it's too likely to be used irresponsibly.
2017-03-16 17:33:30 -05:00
Aaron Piotrowski
7f592265d0 Do not auto close sockets in child 2017-03-16 17:11:49 -05:00
Aaron Piotrowski
6a8eb2130e Update for async-interop merge and other Amp changes 2017-03-16 17:03:59 -05:00
Aaron Piotrowski
9cc70c1f86 Periodically check for dead thread 2017-03-09 16:55:11 -06:00
Aaron Piotrowski
93c996b6c5 Cleaner doReceive 2017-03-09 16:48:34 -06:00
Aaron Piotrowski
c16a015562 Convert ChannelException to ContextException 2017-03-09 16:15:30 -06:00
Aaron Piotrowski
dd496568ea Restore error handler before failing promise 2017-03-09 10:26:17 -06:00
Aaron Piotrowski
0912d39004 Remove WorkerFork from DefaultWorkerFactory 2017-02-17 17:00:24 -06:00
Niklas Keller
27247f83a4 Fix syntax error 2017-01-17 18:53:42 +01:00
Niklas Keller
3d5e1bcfe6 Simplify autoload finder 2017-01-17 16:46:30 +01:00
Niklas Keller
b85b350444 Make autoloader search more strict 2017-01-17 12:14:06 +01:00
Aaron Piotrowski
b51e4f7ba6 ExitStatus → ExitResult 2017-01-16 23:24:59 -06:00
Aaron Piotrowski
03cd67c30f Autoload is one word 2017-01-16 13:45:32 -06:00
Aaron Piotrowski
99f217f5b9 Use get_included_files() to locate autoloader; protect static scope as well 2017-01-16 13:30:16 -06:00
Aaron Piotrowski
5573c7149e Merge pull request #2 from amphp/conservative-require
Make require conservative and scope protect it
2017-01-16 13:12:02 -06:00
Aaron Piotrowski
34771fa0a9 Simplify writing to channel 2017-01-16 12:57:36 -06:00
Aaron Piotrowski
327e049050 Remove accidental return type declaration 2017-01-16 12:57:07 -06:00
Aaron Piotrowski
dc1aea8654 Use amphp/process package 2017-01-16 12:56:49 -06:00
Niklas Keller
7e8381a526 Make require conservative and scope protect it 2017-01-15 17:44:00 +01:00
Aaron Piotrowski
08f6eb1958 Store pool and factory as loop states 2017-01-11 11:52:12 -06:00
Aaron Piotrowski
992d7a17c3 Open STDERR in write mode 2017-01-10 17:24:01 -06:00
Aaron Piotrowski
ed73b1dd7b Fix some bugs, clean up, and update doc blocks 2017-01-10 17:21:47 -06:00
Aaron Piotrowski
9dc54a9b47 Add StreamedProcess 2017-01-10 12:42:43 -06:00
Aaron Piotrowski
7554767d6a Stream → ByteStream 2017-01-09 11:11:46 -06:00
Aaron Piotrowski
f5ebd6b435 Update for async-interop namespace change 2017-01-09 11:11:25 -06:00
Aaron Piotrowski
9deb8e3f8c Update for removal of Amp loop wrapper functions 2016-12-29 19:20:19 -06:00
Aaron Piotrowski
71f8d2016d Drop strict types 2016-12-29 19:16:04 -06:00
Aaron Piotrowski
6d88d87fe0 Awaitable → Promise 2016-11-14 17:43:44 -06:00
Aaron Piotrowski
c4a5082d90 Minor cleanup/refactoring 2016-09-07 11:38:46 -05:00
Aaron Piotrowski
4b5ca2013d Add missed type declarations 2016-09-01 23:51:48 -05:00
Aaron Piotrowski
b995524007 Make uncaught exception name available in PanicError 2016-09-01 23:38:00 -05:00
Aaron Piotrowski
67c82f0f2f Minor cleanup and bugfixes 2016-09-01 18:10:52 -05:00
Aaron Piotrowski
fa8985d7e3 Remove dependency on amphp/socket 2016-08-30 18:27:14 -05:00
Aaron Piotrowski
046f7defb8 Refactor DefaultPool 2016-08-30 17:36:21 -05:00
Aaron Piotrowski
3d2964ff10 Add method to retreive class name thrown from tasks 2016-08-30 13:40:46 -05:00
Aaron Piotrowski
833dedb796 Update for Amp changes: return generator, not awaitable 2016-08-28 23:47:15 -05:00
Aaron Piotrowski
fdb4a81600 Remove reference to process object from watcher 2016-08-28 23:10:10 -05:00
Aaron Piotrowski
8126b8e3f2 Property docblock cleanup 2016-08-26 10:10:03 -05:00
Aaron Piotrowski
740239c0f4 Disable exit code watcher after creation 2016-08-26 10:02:49 -05:00
Aaron Piotrowski
ce25a0179d Rename to Parallel 2016-08-23 16:47:40 -05:00
Aaron Piotrowski
b924fc2b6e Code cleanup 2016-08-22 18:25:19 -05:00
Aaron Piotrowski
c068a5ae38 Use strict types; fix tests 2016-08-21 23:40:48 -05:00
Aaron Piotrowski
193581d6c9 Run multiple tasks simultaneously on workers 2016-08-21 10:33:39 -05:00
Aaron Piotrowski
70097cb225 Update tests; code cleanup 2016-08-18 17:36:58 -05:00
Aaron Piotrowski
da84a772cf Port to Amp 2016-08-18 11:04:48 -05:00
Aaron Piotrowski
54810f1d67 Update composer and dir name for Amp 2016-07-20 09:23:50 -05:00