mirror of
https://github.com/predis/predis.git
synced 2026-09-05 07:16:44 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3a8c350f3d | |||
| 675951360f | |||
| 0795d69d9e |
@@ -13,7 +13,7 @@ jobs:
|
|||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v7
|
uses: actions/checkout@v7
|
||||||
- name: Check Spelling
|
- name: Check Spelling
|
||||||
uses: rojopolis/spellcheck-github-actions@0.63.0
|
uses: rojopolis/spellcheck-github-actions@0.66.0
|
||||||
with:
|
with:
|
||||||
config_path: .github/spellcheck-settings.yml
|
config_path: .github/spellcheck-settings.yml
|
||||||
task_name: Markdown
|
task_name: Markdown
|
||||||
|
|||||||
@@ -85,13 +85,13 @@ jobs:
|
|||||||
uses: actions/checkout@v7
|
uses: actions/checkout@v7
|
||||||
|
|
||||||
- name: Start Redis standalone image
|
- name: Start Redis standalone image
|
||||||
uses: hoverkraft-tech/compose-action@v3.0.0
|
uses: hoverkraft-tech/compose-action@v3.1.0
|
||||||
with:
|
with:
|
||||||
compose-file: .github/docker-compose.yml
|
compose-file: .github/docker-compose.yml
|
||||||
services: ${{ env.DOCKER_SERVICE }}
|
services: ${{ env.DOCKER_SERVICE }}
|
||||||
|
|
||||||
- name: Start Redis unprotected image
|
- name: Start Redis unprotected image
|
||||||
uses: hoverkraft-tech/compose-action@v3.0.0
|
uses: hoverkraft-tech/compose-action@v3.1.0
|
||||||
if: ${{ matrix.redis > '4.0' }}
|
if: ${{ matrix.redis > '4.0' }}
|
||||||
with:
|
with:
|
||||||
compose-file: .github/docker-compose.yml
|
compose-file: .github/docker-compose.yml
|
||||||
@@ -99,7 +99,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Start Redis stack image
|
- name: Start Redis stack image
|
||||||
id: stack_infra
|
id: stack_infra
|
||||||
uses: hoverkraft-tech/compose-action@v3.0.0
|
uses: hoverkraft-tech/compose-action@v3.1.0
|
||||||
if: ${{ matrix.redis >= '7.2' && matrix.redis < '8.0' }}
|
if: ${{ matrix.redis >= '7.2' && matrix.redis < '8.0' }}
|
||||||
with:
|
with:
|
||||||
compose-file: .github/docker-compose.yml
|
compose-file: .github/docker-compose.yml
|
||||||
@@ -107,7 +107,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Start Redis cluster image
|
- name: Start Redis cluster image
|
||||||
id: cluster_infra
|
id: cluster_infra
|
||||||
uses: hoverkraft-tech/compose-action@v3.0.0
|
uses: hoverkraft-tech/compose-action@v3.1.0
|
||||||
if: ${{ matrix.redis > '4.0' }}
|
if: ${{ matrix.redis > '4.0' }}
|
||||||
with:
|
with:
|
||||||
compose-file: .github/docker-compose.yml
|
compose-file: .github/docker-compose.yml
|
||||||
@@ -115,7 +115,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Start Redis sentinels image
|
- name: Start Redis sentinels image
|
||||||
id: sentinel_infra
|
id: sentinel_infra
|
||||||
uses: hoverkraft-tech/compose-action@v3.0.0
|
uses: hoverkraft-tech/compose-action@v3.1.0
|
||||||
if: ${{ matrix.redis > '4.0' }}
|
if: ${{ matrix.redis > '4.0' }}
|
||||||
with:
|
with:
|
||||||
compose-file: .github/docker-compose.yml
|
compose-file: .github/docker-compose.yml
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
## Changelog
|
## Changelog
|
||||||
|
|
||||||
|
## Unlreleads
|
||||||
|
### Added
|
||||||
|
### Changed
|
||||||
|
### Fixed
|
||||||
|
- Fixed RESP3 double parsing returning positive `INF` for `-inf` payloads (#1716)
|
||||||
|
|
||||||
## v3.6.0 (2026-08-14)
|
## v3.6.0 (2026-08-14)
|
||||||
### Added
|
### Added
|
||||||
- Added support for new TS commands + Indonesian language support integration test (#1695)
|
- Added support for new TS commands + Indonesian language support integration test (#1695)
|
||||||
|
|||||||
+1
-1
@@ -56,7 +56,7 @@ use Traversable;
|
|||||||
*/
|
*/
|
||||||
class Client implements ClientInterface, IteratorAggregate
|
class Client implements ClientInterface, IteratorAggregate
|
||||||
{
|
{
|
||||||
public const VERSION = '3.6.0';
|
public const VERSION = '3.6.1-dev';
|
||||||
|
|
||||||
/** @var OptionsInterface */
|
/** @var OptionsInterface */
|
||||||
private $options;
|
private $options;
|
||||||
|
|||||||
@@ -63,10 +63,14 @@ class Resp3Strategy extends Resp2Strategy
|
|||||||
*/
|
*/
|
||||||
protected function parseDouble(string $string): float
|
protected function parseDouble(string $string): float
|
||||||
{
|
{
|
||||||
if ($string === 'inf' || $string === '-inf') {
|
if ($string === 'inf') {
|
||||||
return INF;
|
return INF;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($string === '-inf') {
|
||||||
|
return -INF;
|
||||||
|
}
|
||||||
|
|
||||||
return (float) $string;
|
return (float) $string;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -60,11 +60,11 @@ class Resp3StrategyTest extends PredisTestCase
|
|||||||
* @param string $data
|
* @param string $data
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function testParseDataReturnsFloatInfinityOnInfinityOrNegativeInfinity(string $data): void
|
public function testParseDataReturnsFloatInfinityOnInfinityOrNegativeInfinity(string $data, float $expectedValue): void
|
||||||
{
|
{
|
||||||
$actualResponse = $this->strategy->parseData($data);
|
$actualResponse = $this->strategy->parseData($data);
|
||||||
|
|
||||||
$this->assertInfinite($actualResponse);
|
$this->assertSame($expectedValue, $actualResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -166,8 +166,8 @@ class Resp3StrategyTest extends PredisTestCase
|
|||||||
public function infinityProvider(): array
|
public function infinityProvider(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'positive infinity' => [",inf\r\n"],
|
'positive infinity' => [",inf\r\n", INF],
|
||||||
'negative infinity' => [",-inf\r\n"],
|
'negative infinity' => [",-inf\r\n", -INF],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user