Kamil Tekiela
eedbffec2e
Empty some values of mysqli_get_charset() ( #21361 )
...
* Stop reporting unhelpful values in mysqli_get_charset
* Remove element "comment" as it has been undocumented
2026-03-07 22:09:02 +00:00
Alexandre Daubois
11a95749b1
Convert more zend_parse_parameters_none() to fast ZPP ( #21330 )
2026-03-04 14:07:46 +01:00
Petr Sumbera
ce1cadba29
Fix Solaris tests and add nightly CI job
...
Closes GH-20709
2026-03-04 10:12:03 +01:00
Arshid
f0d321e947
[mysqli] Simply if -> RETURN_TRUE/FALSE with RETURN_BOOL() (GH-21149)
2026-02-06 10:07:54 +01:00
Arshid
a5a0ff6448
ext/mysqli: raise ValueError for invalid option in mysqli_options() ( #20971 )
...
Closes GH-20968
Co-authored-by: Ilija Tovilo <ilija.tovilo@me.com >
Co-authored-by: Kamil Tekiela <tekiela246@gmail.com >
Co-authored-by: Gina Peter Banyard <girgias@php.net >
2026-02-03 18:27:10 +00:00
Khaled Alam
d03d69a88a
Remove duplicate #include statements ( #21085 )
...
* Remove duplicate #include statements across the codebase.
* feat: Restore conditional/unconditional include pairs in lscriu.c
2026-01-30 16:37:13 +01:00
Arnaud Le Blanc
65b4073922
Include the actual stub name in generated arginfo headers ( #20993 )
2026-01-21 20:57:00 +01:00
Kamil Tekiela
724ff60318
Add MYSQLI_OPT_COMPRESS ( #20987 )
2026-01-20 22:33:02 +00:00
Kamil Tekiela
f4538c67c3
Remove unused macro
2025-12-18 20:53:11 +00:00
Kamil Tekiela
3de6dd12b6
Merge branch 'PHP-8.5'
...
* PHP-8.5:
Squashed commit of the following:
2025-12-14 15:29:58 +00:00
Kamil Tekiela
c566502d9e
Merge branch 'PHP-8.4' into PHP-8.5
...
* PHP-8.4:
Squashed commit of the following:
2025-12-14 15:29:02 +00:00
Kamil Tekiela
c54abaa7e4
Merge branch 'PHP-8.3' into PHP-8.4
...
* PHP-8.3:
Squashed commit of the following:
2025-12-14 15:28:01 +00:00
Kamil Tekiela
dbf56e0eba
Squashed commit of the following:
...
commit c4adcbe582
Author: Kamil Tekiela <tekiela246@gmail.com >
Date: Fri Oct 17 15:32:14 2025 +0100
Add NEWS
commit 84a6e675af
Author: Kamil Tekiela <tekiela246@gmail.com >
Date: Fri Oct 17 14:49:26 2025 +0100
Handle errors in mysqli_begin_transaction
2025-12-14 15:25:34 +00:00
Remi Collet
839803847e
Merge branch 'PHP-8.5'
...
* PHP-8.5:
NEWS
NEWS
NEWS
Fix GH-20528: Regression breaks mysql connexion using an IPv6 address enclosed in square brackets
2025-11-21 09:21:19 +01:00
Remi Collet
7bdeedb430
Merge branch 'PHP-8.4' into PHP-8.5
...
* PHP-8.4:
NEWS
NEWS
Fix GH-20528: Regression breaks mysql connexion using an IPv6 address enclosed in square brackets
2025-11-21 09:20:41 +01:00
Remi Collet
c9de303087
Merge branch 'PHP-8.3' into PHP-8.4
...
* PHP-8.3:
NEWS
Fix GH-20528: Regression breaks mysql connexion using an IPv6 address enclosed in square brackets
2025-11-21 09:19:56 +01:00
Remi Collet
9d71c1e0b6
Fix GH-20528: Regression breaks mysql connexion using an IPv6 address enclosed in square brackets
2025-11-21 09:17:20 +01:00
Gina Peter Banyard
0df31e5a5b
Merge branch 'PHP-8.5'
...
* PHP-8.5:
Update NEWS for null deprecation bug fix
Fix GH-20194: null offset deprecation not emitted for writes (#20238 )
2025-10-29 18:37:29 +00:00
Gina Peter Banyard
9a1b8a785d
Fix GH-20194: null offset deprecation not emitted for writes ( #20238 )
...
Based on a patch from @ndossche
2025-10-29 18:36:10 +00:00
Niels Dossche
984416dde3
Merge branch 'PHP-8.5'
...
* PHP-8.5:
Fix GH-20122: getColumnMeta() for JSON-column in MySQL
2025-10-16 22:56:24 +02:00
Niels Dossche
02bd332040
Merge branch 'PHP-8.4' into PHP-8.5
...
* PHP-8.4:
Fix GH-20122: getColumnMeta() for JSON-column in MySQL
2025-10-16 22:56:17 +02:00
Niels Dossche
4fa45096a7
Merge branch 'PHP-8.3' into PHP-8.4
...
* PHP-8.3:
Fix GH-20122: getColumnMeta() for JSON-column in MySQL
2025-10-16 22:56:09 +02:00
Niels Dossche
94284df7b2
Fix GH-20122: getColumnMeta() for JSON-column in MySQL
...
While at it, also add VECTOR.
Closes GH-20143.
2025-10-16 22:55:17 +02:00
Niels Dossche
22bcea0d2d
Merge branch 'PHP-8.5'
...
* PHP-8.5:
Update SKIPIF for bug #67563 (#20133 )
2025-10-13 08:34:40 +02:00
Niels Dossche
1adf63d45c
Merge branch 'PHP-8.4' into PHP-8.5
...
* PHP-8.4:
Update SKIPIF for bug #67563 (#20133 )
2025-10-13 08:34:33 +02:00
Niels Dossche
a1c290f7cb
Merge branch 'PHP-8.3' into PHP-8.4
...
* PHP-8.3:
Update SKIPIF for bug #67563 (#20133 )
2025-10-13 08:34:25 +02:00
Niels Dossche
8a21d62c28
Update SKIPIF for bug #67563 ( #20133 )
2025-10-13 08:34:03 +02:00
Kamil Tekiela
f543f4951c
Clean up some minor things in ext/mysqli ( #20120 )
...
* Remove unused fields and typedefs
* Remove unused __name parameter
2025-10-12 01:20:48 +01:00
Tim Düsterhus
985d681501
tree-wide: Replace zval_is_true() by zend_is_true() ( #20065 )
...
* tree-wide: Replace `zval_is_true()` by `zend_is_true()`
The former is a direct alias of the latter which is much more often used.
* zend_operators: Remove `zval_is_true()`
2025-10-07 20:44:32 +02:00
Ilija Tovilo
d10d18852b
Merge branch 'PHP-8.5'
...
* PHP-8.5:
Skip proc_open_multiplex.phpt on PPC runner
Skip mysqli_fetch_all_data_types_variation.phpt on PPC runner
2025-10-03 23:12:57 +02:00
Ilija Tovilo
db8e28b8a2
Merge branch 'PHP-8.4' into PHP-8.5
...
* PHP-8.4:
Skip mysqli_fetch_all_data_types_variation.phpt on PPC runner
2025-10-03 23:12:16 +02:00
Ilija Tovilo
0e1addf8b5
Skip mysqli_fetch_all_data_types_variation.phpt on PPC runner
2025-10-03 23:11:47 +02:00
Niels Dossche
57ce245e1e
Reduce code bloat in arginfo by using specialised string releases ( #20016 )
...
* Reduce code bloat in arginfo by using specialised string releases
Comparing this patch to master (c7da728574 ),
with a plain configure command without any options:
```
text data bss dec hex filename
20683738 1592400 137712 22413850 156021a sapi/cli/php
20688522 1592400 137712 22418634 15614ca sapi/cli/php_old
```
We see a minor reduction of 0.023% in code size.
* Also use true for the other initialization line
* Also use specialized code for consts
2025-10-02 22:00:20 +02:00
David CARLIER
39dda7239f
ext/mysqli: internal updates ( #19072 )
...
* global struct size reduction.
* connection port ini value sanity check addition.
2025-10-01 12:50:11 +01:00
Niels Dossche
f60dd15f95
Merge branch 'PHP-8.5'
...
* PHP-8.5:
Fix bug #67563 : mysqli compiled with mysqlnd does not take ipv6 adress as parameter
2025-09-30 15:21:19 +02:00
Niels Dossche
5fd378236f
Merge branch 'PHP-8.4' into PHP-8.5
...
* PHP-8.4:
Fix bug #67563 : mysqli compiled with mysqlnd does not take ipv6 adress as parameter
2025-09-30 15:21:07 +02:00
Niels Dossche
4496322e42
Merge branch 'PHP-8.3' into PHP-8.4
...
* PHP-8.3:
Fix bug #67563 : mysqli compiled with mysqlnd does not take ipv6 adress as parameter
2025-09-30 15:20:50 +02:00
Niels Dossche
6db12e7cd8
Fix bug #67563 : mysqli compiled with mysqlnd does not take ipv6 adress as parameter
...
In the past, when libmysqlclient could be used, it accepted ipv6 addresses
as hostname without enclosing it first in brackets. However, in mysqlnd
this never worked. In the past this caused a discrepancy between the two
implementations.
Nowadays, mysqli only works with mysqlnd so we don't even have to cater
to libmysqlclient. However, a plain ipv6 address should still work as a
hostname. Also for people migrating to newer PHP versions it's nice if
this keeps working.
The solution is to check if we're dealing with an ipv6 address not yet
enclosed in brackets. In that case we add the brackets automatically.
Closes GH-19750.
2025-09-30 15:20:14 +02:00
Tim Düsterhus
9fa2e96c90
mysqli: Use true / false instead of 1 / 0 when assigning to bool
...
Changes done with Coccinelle:
@@
bool b;
@@
- b = 0
+ b = false
@@
bool b;
@@
- b = 1
+ b = true
2025-09-24 18:51:40 +02:00
Daniel Scherzer
3f3a266a2b
gen_stub: Infer constants' types from values ( #19568 )
...
Don't require `@var` with a type when the type can be inferred from a literal
value in the stub file.
2025-09-03 18:26:43 -07:00
Arnaud Le Blanc
6f32e1c690
Deprecate driver specific PDO constants
...
RFC: https://wiki.php.net/rfc/deprecations_php_8_5 .
Closes GH-19526
2025-08-26 09:06:19 +02:00
Tim Düsterhus
5d86515772
mysqli: Deprecate mysqli_execute() ( #19286 )
...
RFC: https://wiki.php.net/rfc/deprecations_php_8_5#formally_deprecate_mysqli_execute
2025-08-08 21:23:31 +01:00
Daniel Scherzer
ff810d5e36
Arginfo: reuse zend_string objects for initializing attribute values ( #19241 )
...
Avoid initializing the same string content multiple times and make use of the
fact that the strings created to initialize attribute values are not freed by
simply making use of an existing zend_string with the same content if one is
available.
2025-07-27 17:27:22 -07:00
DanielEScherzer
1eadf553f1
Arginfo: avoid using temporary zvals for initializing attribute values ( #19141 )
...
Instead of
* adding a zval on the stack
* initializing it
* copying the value to the attribute
Just initialize the value directly in the zend_attribute_arg
2025-07-21 13:33:51 -07:00
Daniel Scherzer
142e378618
Arginfo: add and use known strings for attribute values
2025-07-14 17:31:22 -07:00
DanielEScherzer
9225cb45ac
Make zend_register_*_constant() functions return pointers, use them ( #19029 )
...
Have each of the specialized methods for registering a constant return a
pointer to the registered constant the same way that the generic
`zend_register_constant()` function does, and use those in the generated
arginfo files to avoid needing to search for a constant that was just
registered in order to add attributes to it.
2025-07-07 12:23:52 -07:00
Niels Dossche
984bcb5d69
ext/mysqli: Get rid of calls to strcpy ( #18970 )
...
strcpy is a dangerous API that should be avoided.
2025-06-28 14:04:39 +02:00
Niels Dossche
737db4a7dc
Use hasThis() where appropriate ( #18967 )
...
This macro was introduced to solve false compilers warning about the getThis()
condition not making sense for the address-taken part of the ternary.
2025-06-28 10:12:43 +02:00
DanielEScherzer
171501b93f
Replace @deprecated with #[\Deprecated] for internal constants ( #18780 )
...
Only covers constants declared via stub files, others will be handled
separately in a later commit.
Does not include the intl extension, since that had some errors relating to the
cpp code; that extension will be updated separately.
2025-06-26 11:27:15 -07:00
Tim Düsterhus
4c5a6b0e8d
tree-wide: Remove stacktraces from tests testing throwing clones ( #18748 )
...
This is in preparation for the possible future transformation of `clone` into a
function call, but also meaningful on its own, since the purpose of the tests
is not to test the stack trace generation, but rather that an exception was
thrown. It also cleans up some unreachable code in the tests.
2025-06-03 20:08:47 +02:00