Skip to content

Commit b80968c

Browse files
committed
Forward compatibility with react/promise 3
1 parent a214d90 commit b80968c

File tree

4 files changed

+11
-6
lines changed

4 files changed

+11
-6
lines changed

composer.json

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,15 @@
77
"php": ">=5.3.0",
88
"react/cache": "^1.0 || ^0.6 || ^0.5",
99
"react/event-loop": "^1.0 || ^0.5",
10-
"react/promise": "^2.7 || ^1.2.1",
11-
"react/promise-timer": "^1.2"
10+
"react/promise": "dev-master as 2.999.999",
11+
"react/promise-timer": "dev-promise-3 as 1.6.0"
1212
},
13+
"repositories": [
14+
{
15+
"type": "vcs",
16+
"url": "https://github.com/WyriHaximus-labs/promise-timer"
17+
}
18+
],
1319
"require-dev": {
1420
"clue/block-react": "^1.2",
1521
"phpunit/phpunit": "^7.0 || ^6.4 || ^5.7 || ^4.8.35"

src/Query/RetryExecutor.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use React\Promise\CancellablePromiseInterface;
66
use React\Promise\Deferred;
7+
use React\Promise\PromiseInterface;
78

89
final class RetryExecutor implements ExecutorInterface
910
{
@@ -24,7 +25,7 @@ public function query(Query $query)
2425
public function tryQuery(Query $query, $retries)
2526
{
2627
$deferred = new Deferred(function () use (&$promise) {
27-
if ($promise instanceof CancellablePromiseInterface) {
28+
if ($promise instanceof CancellablePromiseInterface || (method_exists($promise, 'cancel') && $promise instanceof PromiseInterface)) {
2829
$promise->cancel();
2930
}
3031
});

src/Query/TimeoutExecutor.php

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
namespace React\Dns\Query;
44

55
use React\EventLoop\LoopInterface;
6-
use React\Promise\Deferred;
7-
use React\Promise\CancellablePromiseInterface;
86
use React\Promise\Timer;
97

108
final class TimeoutExecutor implements ExecutorInterface

tests/Query/RetryExecutorTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -321,7 +321,7 @@ protected function expectPromiseOnce($return = null)
321321
$mock
322322
->expects($this->once())
323323
->method('then')
324-
->will($this->returnValue($return));
324+
->will($this->returnValue(Promise\resolve($return)));
325325

326326
return $mock;
327327
}

0 commit comments

Comments
 (0)