summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--34.patch111
-rw-r--r--95.patch431
-rw-r--r--composer.json2
-rw-r--r--php-pecl-decimal.spec12
4 files changed, 9 insertions, 547 deletions
diff --git a/34.patch b/34.patch
deleted file mode 100644
index d883be8..0000000
--- a/34.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-From e71f1488b666e30e4f0121a10fee3eeab22bd327 Mon Sep 17 00:00:00 2001
-From: Remi Collet <remi@remirepo.net>
-Date: Tue, 4 Feb 2020 08:23:05 +0100
-Subject: [PATCH 1/3] fix harcoded path in test
-
----
- tests/Number/methods/pow.phpt | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/tests/Number/methods/pow.phpt b/tests/Number/methods/pow.phpt
-index 5ce6582..2c78f16 100644
---- a/tests/Number/methods/pow.phpt
-+++ b/tests/Number/methods/pow.phpt
-@@ -87,7 +87,7 @@ Number Object
- )
- Number::pow
-
--Warning: Decimal arithmetic operand truncated to integer in /Users/rtheunissen/dev/decimal/ext-decimal/tests/Number/helpers/Number.php on line 63
-+Warning: Decimal arithmetic operand truncated to integer in %sNumber.php on line 63
- Number Object
- (
- [value:protected] => Decimal\Rational Object
-@@ -99,7 +99,7 @@ Number Object
- )
- Number::pow
-
--Warning: Decimal arithmetic operand truncated to integer in /Users/rtheunissen/dev/decimal/ext-decimal/tests/Number/helpers/Number.php on line 63
-+Warning: Decimal arithmetic operand truncated to integer in %sNumber.php on line 63
- Number Object
- (
- [value:protected] => Decimal\Rational Object
-@@ -123,7 +123,7 @@ Decimal\Decimal Object
- )
- Number::toRational
-
--Warning: Decimal arithmetic operand truncated to integer in /Users/rtheunissen/dev/decimal/ext-decimal/tests/Number/methods/pow.php on line 38
-+Warning: Decimal arithmetic operand truncated to integer in %spow.php on line 38
- Decimal\Rational Object
- (
- [num] => 16
-@@ -131,7 +131,7 @@ Decimal\Rational Object
- )
- Number::toRational
-
--Warning: Decimal arithmetic operand truncated to integer in /Users/rtheunissen/dev/decimal/ext-decimal/tests/Number/methods/pow.php on line 41
-+Warning: Decimal arithmetic operand truncated to integer in %spow.php on line 41
- Decimal\Rational Object
- (
- [num] => 16
-
-From d983b8f76f59996339a434c40d1f57703fadbd42 Mon Sep 17 00:00:00 2001
-From: Remi Collet <remi@remirepo.net>
-Date: Tue, 4 Feb 2020 08:25:35 +0100
-Subject: [PATCH 3/3] fix #33 remomve unused function
-
----
- src/convert.c | 15 +--------------
- src/convert.h | 2 --
- 2 files changed, 1 insertion(+), 16 deletions(-)
-
-diff --git a/src/convert.c b/src/convert.c
-index 4136a35..77581e3 100644
---- a/src/convert.c
-+++ b/src/convert.c
-@@ -444,19 +444,6 @@ zend_string *php_decimal_rational_to_sci(const php_rational_t *obj, zend_long pr
- return str;
- }
-
--zend_string *php_decimal_rational_to_eng(const php_rational_t *obj, zend_long prec)
--{
-- zend_string *str;
--
-- PHP_DECIMAL_TEMP_MPD(tmp);
-- php_decimal_rational_evaluate(&tmp, obj, prec);
--
-- str = php_decimal_mpd_to_eng(&tmp);
-- mpd_del(&tmp);
--
-- return str;
--}
--
- zend_string *php_decimal_rational_to_fixed(const php_rational_t *obj, zend_long places, zend_bool commas, php_decimal_rounding_t mode)
- {
- PHP_DECIMAL_TEMP_MPD(tmp);
-@@ -597,4 +584,4 @@ void php_decimal_number_to_num_den(mpd_t *num, mpd_t *den, const zval *obj)
-
- assert(status == 0);
- zval_ptr_dtor(&result);
--}
-\ No newline at end of file
-+}
-diff --git a/src/convert.h b/src/convert.h
-index cb5e031..a3924e3 100644
---- a/src/convert.h
-+++ b/src/convert.h
-@@ -56,7 +56,6 @@ php_decimal_success_t php_decimal_mpd_set_string(mpd_t *mpd, const zend_string *
- php_decimal_success_t php_decimal_mpd_set_charptr(mpd_t *mpd, const char *str);
-
- zend_string *php_decimal_mpd_to_serialized(const mpd_t *mpd);
--zend_string *php_decimal_mpd_to_eng(const mpd_t *mpd);
- zend_string *php_decimal_mpd_to_sci(const mpd_t *mpd);
- zend_string *php_decimal_mpd_to_string(const mpd_t *mpd);
- zend_string *php_decimal_mpd_to_fixed(const mpd_t *mpd, zend_long places, zend_bool commas, php_decimal_rounding_t mode);
-@@ -69,7 +68,6 @@ void php_decimal_rational_set_nan(php_rational_t *obj);
- void php_decimal_rational_set_zero(php_rational_t *obj);
-
- zend_string *php_decimal_rational_to_sci(const php_rational_t *obj, zend_long prec);
--zend_string *php_decimal_rational_to_eng(const php_rational_t *obj, zend_long prec);
- zend_string *php_decimal_rational_to_string(const php_rational_t *obj);
- zend_string *php_decimal_rational_to_fixed(const php_rational_t *obj, zend_long places, zend_bool commas, php_decimal_rounding_t mode);
- zend_long php_decimal_rational_to_long(const php_rational_t *obj);
diff --git a/95.patch b/95.patch
deleted file mode 100644
index 72c7d62..0000000
--- a/95.patch
+++ /dev/null
@@ -1,431 +0,0 @@
-From 95eb63feb9ba3de78a3a64572050ef7cd5b1c5d9 Mon Sep 17 00:00:00 2001
-From: Remi Collet <remi@remirepo.net>
-Date: Tue, 14 Apr 2026 07:41:44 +0200
-Subject: [PATCH] Fix #93 silent Warning: unexpected NAN value was coerced to
- string
-
----
- tests/Decimal/cast.phpt | 2 +-
- tests/Decimal/methods/add.phpt | 18 +++++++++---------
- tests/Decimal/methods/div.phpt | 24 ++++++++++++------------
- tests/Decimal/methods/ln.phpt | 10 +++++-----
- tests/Decimal/methods/log10.phpt | 10 +++++-----
- tests/Decimal/methods/mul.phpt | 18 +++++++++---------
- tests/Decimal/methods/sub.phpt | 18 +++++++++---------
- tests/Number/helpers/Number.php | 2 +-
- tests/Number/methods/abs.phpt | 4 ++--
- tests/Number/methods/ceil.phpt | 4 ++--
- tests/Number/methods/floor.phpt | 4 ++--
- tests/Number/methods/trunc.phpt | 4 ++--
- tests/Rational/cast.phpt | 2 +-
- tests/Rational/methods/add.phpt | 18 +++++++++---------
- tests/Rational/methods/div.phpt | 24 ++++++++++++------------
- tests/Rational/methods/mul.phpt | 18 +++++++++---------
- tests/Rational/methods/pow.phpt | 2 +-
- tests/Rational/methods/sub.phpt | 2 +-
- 18 files changed, 92 insertions(+), 92 deletions(-)
-
-diff --git a/tests/Decimal/cast.phpt b/tests/Decimal/cast.phpt
-index b83094e..e8fd3f6 100644
---- a/tests/Decimal/cast.phpt
-+++ b/tests/Decimal/cast.phpt
-@@ -55,7 +55,7 @@ $tests = [
- [(float) Decimal::valueOf("1234.5678E+9"), 1.2345678E+12],
- [(float) Decimal::valueOf("1234.5678E+90"), 1.2345678E+93],
-
-- [(string) (float) Decimal::valueOf( "NAN"), "NAN"],
-+ [@(string) (float) Decimal::valueOf( "NAN"), "NAN"],
- [(string) (float) Decimal::valueOf( "INF"), "INF"],
- [(string) (float) Decimal::valueOf("-INF"), "-INF"],
-
-diff --git a/tests/Decimal/methods/add.phpt b/tests/Decimal/methods/add.phpt
-index 5ec2d98..210fb7b 100644
---- a/tests/Decimal/methods/add.phpt
-+++ b/tests/Decimal/methods/add.phpt
-@@ -65,15 +65,15 @@ $tests = [
- ],
-
- /* Special numbers */
-- [Decimal::valueOf( "NAN"), "NAN", (string) (NAN + NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "NAN"), "INF", (string) (NAN + INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "NAN"), "-INF", (string) (NAN + -INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "NAN", (string) (INF + NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "INF", (string) (INF + INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "-INF", (string) (INF + -INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "NAN", (string) (-INF + NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "INF", (string) (-INF + INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "-INF", (string) (-INF + -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "NAN", @(string) (NAN + NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "INF", @(string) (NAN + INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "-INF", @(string) (NAN + -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "NAN", @(string) (INF + NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "INF", @(string) (INF + INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "-INF", @(string) (INF + -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "NAN", @(string) (-INF + NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "INF", @(string) (-INF + INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "-INF", @(string) (-INF + -INF), Decimal::DEFAULT_PRECISION],
- ];
-
- foreach ($tests as $index => $test) {
-diff --git a/tests/Decimal/methods/div.phpt b/tests/Decimal/methods/div.phpt
-index e5db507..3da5b7f 100644
---- a/tests/Decimal/methods/div.phpt
-+++ b/tests/Decimal/methods/div.phpt
-@@ -52,18 +52,18 @@ $tests = [
- ],
-
- /* Special numbers */
-- [Decimal::valueOf(0), "NAN", (string) ( 0 / NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf(0), "INF", (string) ( 0 / INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf(0), "-INF", (string) ( 0 / -INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "NAN"), "NAN", (string) (NAN / NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "NAN"), "INF", (string) (NAN / INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "NAN"), "-INF", (string) (NAN / -INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "NAN", (string) (INF / NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "INF", (string) (INF / INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "-INF", (string) (INF / -INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "NAN", (string) (-INF / NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "INF", (string) (-INF / INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "-INF", (string) (-INF / -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf(0), "NAN", @(string) ( 0 / NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf(0), "INF", @(string) ( 0 / INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf(0), "-INF", @(string) ( 0 / -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "NAN", @(string) (NAN / NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "INF", @(string) (NAN / INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "-INF", @(string) (NAN / -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "NAN", @(string) (INF / NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "INF", @(string) (INF / INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "-INF", @(string) (INF / -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "NAN", @(string) (-INF / NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "INF", @(string) (-INF / INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "-INF", @(string) (-INF / -INF), Decimal::DEFAULT_PRECISION],
- ];
-
- foreach ($tests as $index => $test) {
-diff --git a/tests/Decimal/methods/ln.phpt b/tests/Decimal/methods/ln.phpt
-index d8657b1..3a51629 100644
---- a/tests/Decimal/methods/ln.phpt
-+++ b/tests/Decimal/methods/ln.phpt
-@@ -34,12 +34,12 @@ $tests = [
- [Decimal::valueOf("0.000123456", 50), "-8.9996257406810102209987166229396596684344507962672", 50],
-
- /* Match PHP on special values */
-- [Decimal::valueOf( "NAN"), (string) log( NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), (string) log(-INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), (string) log( INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), @(string) log( NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), @(string) log(-INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), @(string) log( INF), Decimal::DEFAULT_PRECISION],
-
-- [Decimal::valueOf( "0"), (string) log( 0), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-1"), (string) log(-1), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "0"), @(string) log( 0), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-1"), @(string) log(-1), Decimal::DEFAULT_PRECISION],
- ];
-
- foreach ($tests as $test) {
-diff --git a/tests/Decimal/methods/log10.phpt b/tests/Decimal/methods/log10.phpt
-index 7ec063f..ee6d517 100644
---- a/tests/Decimal/methods/log10.phpt
-+++ b/tests/Decimal/methods/log10.phpt
-@@ -30,12 +30,12 @@ $tests = [
- [Decimal::valueOf("0.000123456"), "-3.908487798372228318930600222932094", Decimal::DEFAULT_PRECISION],
- [Decimal::valueOf("0.000123456", 50), "-3.9084877983722283189306002229320942053464158123113", 50],
-
-- [Decimal::valueOf( "0"), (string) log10( 0), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "-1"), (string) log10( -1), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "0"), @(string) log10( 0), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "-1"), @(string) log10( -1), Decimal::DEFAULT_PRECISION],
-
-- [Decimal::valueOf( "NAN"), (string) log10( NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), (string) log10( INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), (string) log10(-INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), @(string) log10( NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), @(string) log10( INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), @(string) log10(-INF), Decimal::DEFAULT_PRECISION],
- ];
-
- foreach ($tests as $test) {
-diff --git a/tests/Decimal/methods/mul.phpt b/tests/Decimal/methods/mul.phpt
-index e0f171f..e11aea2 100644
---- a/tests/Decimal/methods/mul.phpt
-+++ b/tests/Decimal/methods/mul.phpt
-@@ -58,15 +58,15 @@ $tests = [
- ],
-
- /* Special numbers */
-- [Decimal::valueOf( "NAN"), "NAN", (string) (NAN * NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "NAN"), "INF", (string) (NAN * INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "NAN"), "-INF", (string) (NAN * -INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "NAN", (string) (INF * NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "INF", (string) (INF * INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "-INF", (string) (INF * -INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "NAN", (string) (-INF * NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "INF", (string) (-INF * INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "-INF", (string) (-INF * -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "NAN", @(string) (NAN * NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "INF", @(string) (NAN * INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "-INF", @(string) (NAN * -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "NAN", @(string) (INF * NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "INF", @(string) (INF * INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "-INF", @(string) (INF * -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "NAN", @(string) (-INF * NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "INF", @(string) (-INF * INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "-INF", @(string) (-INF * -INF), Decimal::DEFAULT_PRECISION],
-
- [Decimal::valueOf( "NAN"), 0, "NAN", Decimal::DEFAULT_PRECISION],
- [Decimal::valueOf( "INF"), 0, "NAN", Decimal::DEFAULT_PRECISION],
-diff --git a/tests/Decimal/methods/sub.phpt b/tests/Decimal/methods/sub.phpt
-index 6cc5018..9c019ee 100644
---- a/tests/Decimal/methods/sub.phpt
-+++ b/tests/Decimal/methods/sub.phpt
-@@ -62,15 +62,15 @@ $tests = [
- ],
-
- /* Special numbers */
-- [Decimal::valueOf( "NAN"), "NAN", (string) (NAN - NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "NAN"), "INF", (string) (NAN - INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "NAN"), "-INF", (string) (NAN - -INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "NAN", (string) (INF - NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "INF", (string) (INF - INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf( "INF"), "-INF", (string) (INF - -INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "NAN", (string) (-INF - NAN), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "INF", (string) (-INF - INF), Decimal::DEFAULT_PRECISION],
-- [Decimal::valueOf("-INF"), "-INF", (string) (-INF - -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "NAN", @(string) (NAN - NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "INF", @(string) (NAN - INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "NAN"), "-INF", @(string) (NAN - -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "NAN", @(string) (INF - NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "INF", @(string) (INF - INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf( "INF"), "-INF", @(string) (INF - -INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "NAN", @(string) (-INF - NAN), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "INF", @(string) (-INF - INF), Decimal::DEFAULT_PRECISION],
-+ [Decimal::valueOf("-INF"), "-INF", @(string) (-INF - -INF), Decimal::DEFAULT_PRECISION],
- ];
-
- foreach ($tests as $index => $test) {
-diff --git a/tests/Number/helpers/Number.php b/tests/Number/helpers/Number.php
-index 04236a1..a3e46a1 100644
---- a/tests/Number/helpers/Number.php
-+++ b/tests/Number/helpers/Number.php
-@@ -110,7 +110,7 @@ public function toRational(): \Decimal\Rational
-
- public function toString(): string
- {
-- return (string) $this->value;
-+ return @(string) $this->value;
- }
-
- public function toInt(): int
-diff --git a/tests/Number/methods/abs.phpt b/tests/Number/methods/abs.phpt
-index d10c194..a070bac 100644
---- a/tests/Number/methods/abs.phpt
-+++ b/tests/Number/methods/abs.phpt
-@@ -13,7 +13,7 @@ print_r(Number::valueOf("-5")->abs());
- print_r(Number::valueOf( 5)->abs());
- print_r(Number::valueOf(-5)->abs());
-
--print_r(Number::valueOf( NAN)->abs());
-+@print_r(Number::valueOf( NAN)->abs());
- print_r(Number::valueOf( INF)->abs());
- print_r(Number::valueOf(-INF)->abs());
-
-@@ -57,4 +57,4 @@ Number::mul
- Number Object
- (
- [value:protected] => INF
--)
-\ No newline at end of file
-+)
-diff --git a/tests/Number/methods/ceil.phpt b/tests/Number/methods/ceil.phpt
-index 05c26ea..669d50e 100644
---- a/tests/Number/methods/ceil.phpt
-+++ b/tests/Number/methods/ceil.phpt
-@@ -10,7 +10,7 @@ print_r(Number::valueOf("0")->ceil());
- print_r(Number::valueOf( "0.1")->ceil());
- print_r(Number::valueOf("-0.1")->ceil());
-
--print_r(Number::valueOf( NAN)->ceil());
-+@print_r(Number::valueOf( NAN)->ceil());
- print_r(Number::valueOf( INF)->ceil());
- print_r(Number::valueOf(-INF)->ceil());
-
-@@ -50,4 +50,4 @@ Number::toDecimal
- Number Object
- (
- [value:protected] => -INF
--)
-\ No newline at end of file
-+)
-diff --git a/tests/Number/methods/floor.phpt b/tests/Number/methods/floor.phpt
-index 26281dc..7690152 100644
---- a/tests/Number/methods/floor.phpt
-+++ b/tests/Number/methods/floor.phpt
-@@ -10,7 +10,7 @@ print_r(Number::valueOf("0")->floor());
- print_r(Number::valueOf( "0.1")->floor());
- print_r(Number::valueOf("-0.1")->floor());
-
--print_r(Number::valueOf( NAN)->floor());
-+@print_r(Number::valueOf( NAN)->floor());
- print_r(Number::valueOf( INF)->floor());
- print_r(Number::valueOf(-INF)->floor());
-
-@@ -50,4 +50,4 @@ Number::toDecimal
- Number Object
- (
- [value:protected] => -INF
--)
-\ No newline at end of file
-+)
-diff --git a/tests/Number/methods/trunc.phpt b/tests/Number/methods/trunc.phpt
-index d79104d..2fca527 100644
---- a/tests/Number/methods/trunc.phpt
-+++ b/tests/Number/methods/trunc.phpt
-@@ -10,7 +10,7 @@ print_r(Number::valueOf("0")->trunc());
- print_r(Number::valueOf( "0.1")->trunc());
- print_r(Number::valueOf("-0.1")->trunc());
-
--print_r(Number::valueOf( NAN)->trunc());
-+@print_r(Number::valueOf( NAN)->trunc());
- print_r(Number::valueOf( INF)->trunc());
- print_r(Number::valueOf(-INF)->trunc());
-
-@@ -50,4 +50,4 @@ Number::toDecimal
- Number Object
- (
- [value:protected] => -INF
--)
-\ No newline at end of file
-+)
-diff --git a/tests/Rational/cast.phpt b/tests/Rational/cast.phpt
-index 7a19552..53be09f 100644
---- a/tests/Rational/cast.phpt
-+++ b/tests/Rational/cast.phpt
-@@ -55,7 +55,7 @@ $tests = [
- [(float) Rational::valueOf("1234.5678E+9"), 1.2345678E+12],
- [(float) Rational::valueOf("1234.5678E+90"), 1.2345678E+93],
-
-- [(string) (float) Rational::valueOf( "NAN"), "NAN"],
-+ [@(string) (float) Rational::valueOf( "NAN"), "NAN"],
- [(string) (float) Rational::valueOf( "INF"), "INF"],
- [(string) (float) Rational::valueOf("-INF"), "-INF"],
-
-diff --git a/tests/Rational/methods/add.phpt b/tests/Rational/methods/add.phpt
-index 4e36bcf..7b70e85 100644
---- a/tests/Rational/methods/add.phpt
-+++ b/tests/Rational/methods/add.phpt
-@@ -33,15 +33,15 @@ $tests = [
- [Rational::valueOf(-1), "-1.5", "-5/2"],
-
- /* Special numbers */
-- [Rational::valueOf( "NAN"), "NAN", (string) (NAN + NAN)],
-- [Rational::valueOf( "NAN"), "INF", (string) (NAN + INF)],
-- [Rational::valueOf( "NAN"), "-INF", (string) (NAN + -INF)],
-- [Rational::valueOf( "INF"), "NAN", (string) (INF + NAN)],
-- [Rational::valueOf( "INF"), "INF", (string) (INF + INF)],
-- [Rational::valueOf( "INF"), "-INF", (string) (INF + -INF)],
-- [Rational::valueOf("-INF"), "NAN", (string) (-INF + NAN)],
-- [Rational::valueOf("-INF"), "INF", (string) (-INF + INF)],
-- [Rational::valueOf("-INF"), "-INF", (string) (-INF + -INF)],
-+ [Rational::valueOf( "NAN"), "NAN", @(string) (NAN + NAN)],
-+ [Rational::valueOf( "NAN"), "INF", @(string) (NAN + INF)],
-+ [Rational::valueOf( "NAN"), "-INF", @(string) (NAN + -INF)],
-+ [Rational::valueOf( "INF"), "NAN", @(string) (INF + NAN)],
-+ [Rational::valueOf( "INF"), "INF", @(string) (INF + INF)],
-+ [Rational::valueOf( "INF"), "-INF", @(string) (INF + -INF)],
-+ [Rational::valueOf("-INF"), "NAN", @(string) (-INF + NAN)],
-+ [Rational::valueOf("-INF"), "INF", @(string) (-INF + INF)],
-+ [Rational::valueOf("-INF"), "-INF", @(string) (-INF + -INF)],
- ];
-
- foreach ($tests as $index => $test) {
-diff --git a/tests/Rational/methods/div.phpt b/tests/Rational/methods/div.phpt
-index c2c45b5..594a59e 100644
---- a/tests/Rational/methods/div.phpt
-+++ b/tests/Rational/methods/div.phpt
-@@ -35,18 +35,18 @@ $tests = [
- ],
-
- /* Special numbers */
-- [Rational::valueOf(0), "NAN", (string) (0 / NAN)],
-- [Rational::valueOf(0), "INF", (string) (0 / INF)],
-- [Rational::valueOf(0), "-INF", (string) (0 / -INF)],
-- [Rational::valueOf( "NAN"), "NAN", (string) (NAN / NAN)],
-- [Rational::valueOf( "NAN"), "INF", (string) (NAN / INF)],
-- [Rational::valueOf( "NAN"), "-INF", (string) (NAN / -INF)],
-- [Rational::valueOf( "INF"), "NAN", (string) (INF / NAN)],
-- [Rational::valueOf( "INF"), "INF", (string) (INF / INF)],
-- [Rational::valueOf( "INF"), "-INF", (string) (INF / -INF)],
-- [Rational::valueOf("-INF"), "NAN", (string) (-INF / NAN)],
-- [Rational::valueOf("-INF"), "INF", (string) (-INF / INF)],
-- [Rational::valueOf("-INF"), "-INF", (string) (-INF / -INF)],
-+ [Rational::valueOf(0), "NAN", @(string) (0 / NAN)],
-+ [Rational::valueOf(0), "INF", @(string) (0 / INF)],
-+ [Rational::valueOf(0), "-INF", @(string) (0 / -INF)],
-+ [Rational::valueOf( "NAN"), "NAN", @(string) (NAN / NAN)],
-+ [Rational::valueOf( "NAN"), "INF", @(string) (NAN / INF)],
-+ [Rational::valueOf( "NAN"), "-INF", @(string) (NAN / -INF)],
-+ [Rational::valueOf( "INF"), "NAN", @(string) (INF / NAN)],
-+ [Rational::valueOf( "INF"), "INF", @(string) (INF / INF)],
-+ [Rational::valueOf( "INF"), "-INF", @(string) (INF / -INF)],
-+ [Rational::valueOf("-INF"), "NAN", @(string) (-INF / NAN)],
-+ [Rational::valueOf("-INF"), "INF", @(string) (-INF / INF)],
-+ [Rational::valueOf("-INF"), "-INF", @(string) (-INF / -INF)],
- ];
-
- foreach ($tests as $index => $test) {
-diff --git a/tests/Rational/methods/mul.phpt b/tests/Rational/methods/mul.phpt
-index 9bbd889..b7a4075 100644
---- a/tests/Rational/methods/mul.phpt
-+++ b/tests/Rational/methods/mul.phpt
-@@ -32,15 +32,15 @@ $tests = [
- [Rational::valueOf("-1.5"), "-2.4", "18/5"],
-
- /* Special numbers */
-- [Rational::valueOf( "NAN"), "NAN", (string) (NAN * NAN)],
-- [Rational::valueOf( "NAN"), "INF", (string) (NAN * INF)],
-- [Rational::valueOf( "NAN"), "-INF", (string) (NAN * -INF)],
-- [Rational::valueOf( "INF"), "NAN", (string) (INF * NAN)],
-- [Rational::valueOf( "INF"), "INF", (string) (INF * INF)],
-- [Rational::valueOf( "INF"), "-INF", (string) (INF * -INF)],
-- [Rational::valueOf("-INF"), "NAN", (string) (-INF * NAN)],
-- [Rational::valueOf("-INF"), "INF", (string) (-INF * INF)],
-- [Rational::valueOf("-INF"), "-INF", (string) (-INF * -INF)],
-+ [Rational::valueOf( "NAN"), "NAN", @(string) (NAN * NAN)],
-+ [Rational::valueOf( "NAN"), "INF", @(string) (NAN * INF)],
-+ [Rational::valueOf( "NAN"), "-INF", @(string) (NAN * -INF)],
-+ [Rational::valueOf( "INF"), "NAN", @(string) (INF * NAN)],
-+ [Rational::valueOf( "INF"), "INF", @(string) (INF * INF)],
-+ [Rational::valueOf( "INF"), "-INF", @(string) (INF * -INF)],
-+ [Rational::valueOf("-INF"), "NAN", @(string) (-INF * NAN)],
-+ [Rational::valueOf("-INF"), "INF", @(string) (-INF * INF)],
-+ [Rational::valueOf("-INF"), "-INF", @(string) (-INF * -INF)],
-
- [Rational::valueOf( "NAN"), 0, "NAN"],
- [Rational::valueOf( "INF"), 0, "NAN"],
-diff --git a/tests/Rational/methods/pow.phpt b/tests/Rational/methods/pow.phpt
-index 6b4da2b..f5552dd 100644
---- a/tests/Rational/methods/pow.phpt
-+++ b/tests/Rational/methods/pow.phpt
-@@ -107,7 +107,7 @@ foreach ($tests as $test) {
- ];
-
- foreach ($results as $result) {
-- if ((string) $result !== (string) $expect) {
-+ if ((string) $result !== @(string) $expect) {
- print_r(compact("op1", "op2", "result", "expect"));
- break;
- }
-diff --git a/tests/Rational/methods/sub.phpt b/tests/Rational/methods/sub.phpt
-index 85d3257..b8e54af 100644
---- a/tests/Rational/methods/sub.phpt
-+++ b/tests/Rational/methods/sub.phpt
-@@ -53,7 +53,7 @@ foreach ($tests as $index => $test) {
- ];
-
- foreach ($results as $result) {
-- if ((string) $result !== (string) $expect) {
-+ if ((string) $result !== @(string) $expect) {
- print_r(compact("index", "op1", "op2", "result", "expect"));
- break;
- }
diff --git a/composer.json b/composer.json
index 5325b19..e0921b9 100644
--- a/composer.json
+++ b/composer.json
@@ -4,7 +4,7 @@
"license": "MIT",
"description": "Correctly-rounded, arbitrary precision decimal floating-point arithmetic in PHP",
"require": {
- "php": ">= 7.4.0"
+ "php": ">= 8.2.0"
},
"php-ext": {
"extension-name": "decimal"
diff --git a/php-pecl-decimal.spec b/php-pecl-decimal.spec
index adfdbb1..69e3e1e 100644
--- a/php-pecl-decimal.spec
+++ b/php-pecl-decimal.spec
@@ -29,14 +29,12 @@
Name: %{?scl_prefix}php-pecl-%{pecl_name}
Summary: Arbitrary-precision floating-point decimal
License: MIT
-Version: 2.0.1
+Version: 2.0.2
Release: 1%{?dist}
%forgemeta
URL: %{forgeurl}
Source0: %{forgesource}
-Patch0: 95.patch
-
BuildRequires: make
BuildRequires: %{?dtsprefix}gcc
BuildRequires: %{?scl_prefix}php-devel >= 8.2
@@ -65,7 +63,8 @@ Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSIO
%prep
%forgesetup
-%patch -P0 -p1
+
+sed -e '/PHP_DECIMAL_VERSION/s/2.0.1/%{version}/' -i php_decimal.h
# Sanity check, really often broken
extver=$(sed -n '/#define PHP_DECIMAL_VERSION/{s/.* "//;s/".*$//;p}' php_decimal.h)
@@ -159,6 +158,11 @@ TEST_PHP_ARGS="-n -d extension=%{buildroot}%{php_extdir}/%{pecl_name}.so" \
%changelog
+* Wed Apr 15 2026 Remi Collet <remi@remirepo.net> - 2.0.2-1
+- update to 2.0.2 (no change)
+- drop patch merged upstream
+- open https://github.com/php-decimal/ext-decimal/pull/97 fix version
+
* Sun Apr 12 2026 Remi Collet <remi@remirepo.net> - 2.0.1-1
- update to 2.0.1
- drop support for PHP < 8.2