1
0
mirror of https://github.com/danog/file.git synced 2024-11-29 20:09:10 +01:00
Commit Graph

146 Commits

Author SHA1 Message Date
Aaron Piotrowski
edc6c097c2
Use blocking driver on Windows 2017-06-23 17:47:32 -05:00
Aaron Piotrowski
ad309f0cd2
Ignore errors when closing 2017-06-23 17:47:22 -05:00
Aaron Piotrowski
2ce32d57ff
Return same promise on subsequent close calls 2017-06-22 10:18:55 -05:00
Aaron Piotrowski
20261f7b77
Send only integer ID to worker 2017-06-22 10:16:33 -05:00
Niklas Keller
b7a54c1691 Don't store a loop reference in poll objects
Now we no longer have a circular reference there.
2017-06-21 22:35:08 +02:00
Niklas Keller
5374d7cce2 Update composer.json 2017-06-21 20:11:53 +02:00
Niklas Keller
edb2ca52ce Remove unused import 2017-06-21 14:51:15 +02:00
Niklas Keller
ec0486c7f1 Update Travis to run on PHP 7.2 2017-06-21 14:50:38 +02:00
Niklas Keller
d429dfc2aa Fix readlink phpdoc 2017-06-21 14:45:24 +02:00
Niklas Keller
8b43826073 Ignore double close 2017-06-21 14:07:49 +02:00
Niklas Keller
d2c1409bf4 Use StreamExceptions in Handle, make FilesystemException not extend StreamException 2017-06-21 13:51:59 +02:00
Niklas Keller
a13bb6f721 Use ClosedException as mandated by the ByteStream interfaces
This commit also changes end() to wait for the close() to finish before returning.
2017-06-21 11:01:19 +02:00
Niklas Keller
40fd1383e7 Remove stable badge 2017-06-21 10:27:39 +02:00
Niklas Keller
8c7c802c06 Update LICENSE and README 2017-06-21 10:26:39 +02:00
Niklas Keller
089684ea00 Require parallel 0.1.4 and fix code style 2017-06-21 10:18:14 +02:00
Niklas Keller
f2f21ef0c0 Refactor UvDriver and UvHandle to use UvPoll as busy watcher
Fixes #16.
2017-06-20 23:39:14 +02:00
Niklas Keller
6d2ca5e2b2 Fix EioPoll busy watcher
Previously we used listen() + done(). This API design is quite prone to
errors, as it's easy to miss a done() call in some branch. Additionally
this commit ensures that pending operations are always completed before
the EioPoll is completely destructed. Previously unfinished operations
leaked into new EioPoll instances.
2017-06-20 22:59:23 +02:00
Aaron Piotrowski
8cd21e4994
Fix EioPoll destruction
The callback was holding a reference to $this. Hopefully this fixes the watcher cancellation issues.
2017-06-20 13:41:53 -05:00
Niklas Keller
2eb8eb7662 Clean up execute for tests 2017-06-20 19:37:41 +02:00
Niklas Keller
4cccc8d0f7 Ensure reads resolve to null on EOF, fixes #13 2017-06-20 18:25:37 +02:00
Niklas Keller
dd64670987 Make StatCache compatible with loop resets 2017-06-20 17:40:47 +02:00
Niklas Keller
587514b598 Reintroduce operation watching for UV and array_filter fix 2017-06-20 13:38:36 +02:00
Niklas Keller
a8048dcc60 Don't yield first write in testWrite 2017-06-20 07:58:30 +02:00
Aaron Piotrowski
c98ea5ec42
Fix code style from merge 2017-06-20 00:31:58 -05:00
Aaron Piotrowski
9e7c1c1488
Forbid simultaneous conflicting ops
Signficantly refactored EioHandle and UvHandle.
2017-06-20 00:17:07 -05:00
Aaron Piotrowski
6113cfa453
Use object for eio polling 2017-06-20 00:14:11 -05:00
Niklas Keller
f21ff58272 Use counter to prevent race conditions in UvDriver
Fixes #16.
2017-06-18 21:03:44 +02:00
Niklas Keller
75d2a77951 Account for umask in file permission assertion 2017-06-18 20:38:03 +02:00
Niklas Keller
5e1651468b Revert backslash normalization 2017-06-18 00:33:22 +02:00
Niklas Keller
7d2c28dd37 Don't use backslash in fixture 2017-06-18 00:26:34 +02:00
Niklas Keller
0708ba14b3 Handle backslashes in paths correctly 2017-06-17 23:51:29 +02:00
Niklas Keller
1a46ea9b13 Remove bogus array_filter to allow 0 as directory name 2017-06-17 23:47:08 +02:00
Niklas Keller
62428ca0ef Fix code style 2017-06-17 23:41:57 +02:00
Niklas Keller
7a96e10a35 Fix failing testMkdirRmdir 2017-06-17 15:36:51 +02:00
Aaron Piotrowski
e6f3661e62 Use constant in interface definition 2017-06-16 18:22:57 -05:00
Aaron Piotrowski
0becf8af09 Add nonblock and fsync flags in eio
Not 100% if these are needed, but it doesn't seem to hurt either.
2017-06-16 18:22:34 -05:00
Aaron Piotrowski
4f9630298f Throw FilesytemException on closed file
We may wish to change this later, but at least it is consistent between drivers now.
2017-06-16 18:21:56 -05:00
Aaron Piotrowski
477683f58f Use Fixture in Driver test; general test cleanup 2017-06-16 18:12:42 -05:00
Niklas Keller
7e864b9578 Remove outdated .coveralls.yml 2017-06-16 13:34:38 +02:00
Niklas Keller
770157c94e Require amphp/parallel, use stable libs 2017-06-16 13:31:28 +02:00
Niklas Keller
212e2a5450 Update to stable Amp release 2017-06-15 19:48:45 +02:00
Aaron Piotrowski
3c2e542fd2 Fix script permissions 2017-05-18 11:15:29 -05:00
Aaron Piotrowski
834ccb42fe Move extension installation to separate scripts 2017-05-18 11:12:17 -05:00
Aaron Piotrowski
5e5c8ab85b Close handle after each test; Fix pool startup and shutdown 2017-05-18 10:31:20 -05:00
Aaron Piotrowski
d32ab898ba Update for parallel namespace changes 2017-05-18 09:33:52 -05:00
Aaron Piotrowski
783ad03940 Use separate pool for each parallel test
Shutdown the pool after each test to avoid spawning many workers.
2017-05-17 22:59:17 -05:00
Aaron Piotrowski
32454e960b Upgrade to PHPUnit 6 2017-05-17 22:58:39 -05:00
Aaron Piotrowski
cadc86d85a Function for parsing mode 2017-05-17 22:34:27 -05:00
Aaron Piotrowski
6ad1b8e55f Update for object-based uv extension 2017-05-16 19:55:24 -05:00
Aaron Piotrowski
a05915f953 Change invalid mode to Error; throw instead of returning Failure 2017-05-16 19:46:59 -05:00