Bob Weinand
0741858ca7
Fix mysqli build with mysqlnd and without PDO
2020-09-20 02:57:39 +02:00
Nikita Popov
9962ad6444
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Support NO_BACKSLASH_ESCAPES with newer libmysqlclient
2020-09-18 15:26:04 +02:00
Nikita Popov
e6dc9abdb7
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Support NO_BACKSLASH_ESCAPES with newer libmysqlclient
2020-09-18 15:25:35 +02:00
Nikita Popov
70cba36fc9
Support NO_BACKSLASH_ESCAPES with newer libmysqlclient
...
Requires the use of mysql_real_escape_string_quote().
2020-09-18 15:24:57 +02:00
Nikita Popov
b0661a9667
Fix warnings when building against libmysqlclient
...
At least for version 8.0 this is warning free now.
2020-09-17 15:02:35 +02:00
Nikita Popov
5cb8b04646
Drop support for libmysqlclient < 5.5
...
Given how little maintenance the libmysqlclient driver sees, be
more aggressive in dropping old version support here.
2020-09-17 12:05:30 +02:00
Nikita Popov
3ad57f9f31
Merge branch 'PHP-7.4'
...
* PHP-7.4:
pdo_mysql/mysqli (native) libmysqlclient_r no-longer used
mysql: native mysql-8.0 uses _Bool
mysqli: use native api
2020-09-17 11:35:03 +02:00
Nikita Popov
d591e1c4f5
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
pdo_mysql/mysqli (native) libmysqlclient_r no-longer used
mysql: native mysql-8.0 uses _Bool
mysqli: use native api
2020-09-17 11:32:01 +02:00
Daniel Black
202a0697f3
mysqli: use native api
...
Tested with:
* mysql-5.6.49-linux-glibc2.12-x86_64
* mysql-5.7.31-linux-glibc2.12-x86_64
* mysql-8.0.21-linux-glibc2.17-x86_64
* mariadb-10.5.6
configure --with-mysqli=/usr/local/$version/bin/mysql_config --with-pdo-mysql=/usr/local/$version
MySQL-8.0 removed my_bool
Some options where deprecated in mysql-8.0
MY_CHARSET_INFO used with exposed api mysql_get_character_set_info
rather than internal structures.
2020-09-17 11:27:31 +02:00
Dharman
8f56b7a755
mysqli: Promote warning in field_seek
...
Aligning the behaviour of fetch_field and field_seek.
2020-09-17 09:42:42 +02:00
Dharman
0d99a5618f
Changed the wording of the error message
...
"cannot be used in MYSQLI_USE_RESULT mode" sounds more correct than "cannot be used with MYSQLI_USE_RESULT"
Closes GH-6137.
2020-09-16 11:10:11 +02:00
George Peter Banyard
7a95e943d6
Promote warnings to Error in MySQLi extension
...
Closes GH-5803
2020-09-15 19:12:02 +02:00
Nikita Popov
4a98b64413
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove bogus REGISTER_LONG_CONSTANT
2020-08-25 12:36:06 +02:00
Nikita Popov
86e7aa20ad
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Remove bogus REGISTER_LONG_CONSTANT
2020-08-25 12:35:54 +02:00
Nikita Popov
063082043a
Remove bogus REGISTER_LONG_CONSTANT
...
This shouldn't be in this function, probably a copy/paste mistake...
2020-08-25 12:35:38 +02:00
Nikita Popov
196671a2b2
Simplify mysqli_stmt_bind_param() implementation
...
By using zpp.
2020-08-14 11:45:08 +02:00
Nikita Popov
f7f557926e
Fix arg/func info
...
* mysqli_get_server_info() cannot return null. The underlying API
is infallible.
* mysqli_select_db() func info is redundant.
* mb_detect_order() can only return array|true, not array|false.
Also make the func_info.phpt test that is supposed to catch these
kinds of issues actually work.
2020-07-21 15:00:33 +02:00
Max Semenik
2b5de6f839
Remove proto comments from C files
...
Closes GH-5758
2020-07-06 21:13:34 +02:00
Máté Kocsis
596561009c
Fix some UNKNOWN default values
...
In ext/ffi, ext/intl, ext/mysqli, and ext/pcntl
2020-06-09 09:46:51 +02:00
George Peter Banyard
82afcf4401
Fix [-Wundef] warning in MySQLi extension
2020-05-18 00:37:19 +02:00
Máté Kocsis
3ebce8e9fc
Fix UNKNOWN default values in various extensions
...
Closes GH-5514
2020-05-05 19:08:20 +02:00
Nikita Popov
8597ec00d4
Remove support for libmysqlclient 5.0
...
Closes GH-5391.
2020-04-23 10:38:20 +02:00
Nikita Popov
a866ef88ed
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix MySQL local infile / attr handling on big endian systems
2020-04-16 11:23:11 +02:00
Nikita Popov
f684553c2c
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix MySQL local infile / attr handling on big endian systems
2020-04-16 11:22:43 +02:00
guirish
a1c1736bfb
Fix MySQL local infile / attr handling on big endian systems
...
Make sure pointer types match what is used by libmysql everywhere.
Closes GH-5380.
2020-04-16 11:22:17 +02:00
Nikita Popov
d4471c6aae
Remove int6store()
...
The implementation is broken (syntactically). As it's not used
anyway, I'm just dropping it instead.
2020-04-14 10:37:37 +02:00
Tom Van Looy
fabe6a310c
Add ext/mysqli stubs
...
Closes GH-4913.
2020-02-25 11:06:46 +01:00
Máté Kocsis
d1764ca330
Make error messages more consistent by fixing capitalization
...
Closes GH-5066 As a first step, let's capitalize their initial letter when it is applicable.
2020-01-17 14:52:46 +01:00
Máté Kocsis
afdaa91170
Fix #78880 : Final spelling fixes
2020-01-16 19:14:31 +01:00
Máté Kocsis
7b4a4d2ace
Use RETURN_THROWS() after try_convert_to_string()
2020-01-03 17:04:06 +01:00
Máté Kocsis
1b93cfee0c
Use RETURN_THROWS() after zend_parse_method_parameters()
2020-01-02 23:01:37 +01:00
Máté Kocsis
345703724c
Use RETURN_THROWS() during ZPP in most of the extensions
...
Except for some bigger ones: reflection, sodium, spl
2019-12-31 11:46:11 +01:00
Christoph M. Becker
55fd97c576
Fix #78790 : mysqli_get_client_info() expects exactly 0 parameters, 1 given
...
Although the `mysqli` parameter is unused, it had been accepted so far,
and the documentation even claims that parameter would be required. To
not break BC, we allow it again.
2019-12-30 17:40:16 +01:00
Christoph M. Becker
b0391c3e26
Revert "Fix #78790 : mysqli_get_client_info() expects exactly 0 parameters"
...
This reverts commit 87fad8cdf0
, since,
apparently, `mysqli_get_client_info()` is also supposed to be called
without argument.
2019-11-11 10:06:21 +01:00
Christoph M. Becker
87fad8cdf0
Fix #78790 : mysqli_get_client_info() expects exactly 0 parameters
...
`mysqli_get_client_info()` and `mysqli_thread_safe()` can also be
called as methods, so we have to cater to this when parsing the
arguments.
2019-11-11 10:01:17 +01:00
Máté Kocsis
2204dbde3b
Add missing ZPP checks
...
Closes GH-4878.
2019-11-01 15:26:52 +01:00
Gabriel Caruso
5d6e923d46
Remove mention of PHP major version in Copyright headers
...
Closes GH-4732.
2019-09-25 14:51:43 +02:00
George Peter Banyard
c072ef71ee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Drop E_STRICT notice in mysqli extension
2019-08-31 23:17:21 +02:00
George Peter Banyard
e895e96286
Drop E_STRICT notice in mysqli extension
2019-08-31 23:14:10 +02:00
Peter Kokot
ccac19ed6c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Small typo and proto name fix
2019-07-15 18:15:58 +02:00
George Peter Banyard
548d1ec27c
Small typo and proto name fix
...
Closes GH-4415
2019-07-15 18:15:17 +02:00
Nikita Popov
0a0ca984f0
Merge branch 'PHP-7.4'
2019-06-28 14:48:08 +02:00
Sebastian Pop
70ef87539d
Fix compilation errors when building against libmysql
...
Closes GH-4316.
2019-06-28 14:46:12 +02:00
Andrey Hristov
c7e5699c42
Merge branch 'PHP-7.4'
2019-06-19 18:20:42 +03:00
Andrey Hristov
65915d44cb
Merge branch 'PHP-7.3' into PHP-7.4
2019-06-19 16:43:15 +03:00
Andrey Hristov
7ba1e6b34d
Merge branch 'PHP-7.2' into PHP-7.3
2019-06-19 16:43:06 +03:00
Andrey Hristov
82021ad9df
Fix version comparison
2019-06-19 16:42:43 +03:00
twosee
63171d88f2
Add do...while(0) for RETURN_* and ZVAL_* APIs
...
Closes GH-4255.
2019-06-12 16:17:16 +02:00
Nikita Popov
83e0bfb50c
Merge branch 'PHP-7.3' into PHP-7.4
2019-06-11 15:41:05 +02:00
Tyson Andre
5d3e3a62a2
Be more precise about possible types for mysqli methods
...
mysqli has an uncommon approach to 64-bit compatibility:
it will convert numbers that can't be represented on 32-bit
platforms to a string.
This is documented at
https://www.php.net/manual/en/mysqli-stmt.affected-rows.php#refsect1-mysqli-stmt.affected-rows-returnvalues
So if there's a query to a remote mysqli server that affects
more than 2.2 billion rows, then the opcache inference might be
incorrect.
(It's possible to add a MAY_BE_STRING_ON_32_BIT_PLATFORM bitflag macro to
account for this, but I don't think there's a need or want to?)
Patches 3162285b86
This is based on the list of php 7.4 functions using
MYSQLI_RETURN_LONG_INT in mysqli_api.c
2019-06-11 15:40:33 +02:00