Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
670a8f7
ext/phar: Improve signature tests
Girgias Oct 16, 2025
9a24c6a
ext/phar: assert function are not passed NULL pointers
Girgias Oct 16, 2025
6ac29ec
ext/phar: remove unused parameters for phar_do_403()
Girgias Oct 15, 2025
c0856bc
ext/phar: remove unused parameters for phar_do_404()
Girgias Oct 15, 2025
d7eef8c
ext/phar: use zend_string for f404 param of phar_do_404()
Girgias Oct 15, 2025
8fa09cd
ext/phar: Use RETURN_BOOL() when possible
Girgias Oct 15, 2025
44a863a
ext/phar: Do not aquire lifetime of basename parameter in phar_file_a…
Girgias Oct 15, 2025
0b37777
ext/phar/phar_object.c: add some const qualifiers
Girgias Oct 15, 2025
3828b24
ext/phar: Refactor phar_create_default_stub()
Girgias Oct 15, 2025
ad9c60f
ext/phar: start refactoring phar_postprocess_ru_web()
Girgias Oct 16, 2025
94284df
Fix GH-20122: getColumnMeta() for JSON-column in MySQL
nielsdos Oct 11, 2025
4fa4509
Merge branch 'PHP-8.3' into PHP-8.4
nielsdos Oct 16, 2025
02bd332
Merge branch 'PHP-8.4' into PHP-8.5
nielsdos Oct 16, 2025
984416d
Merge branch 'PHP-8.5'
nielsdos Oct 16, 2025
fbac7a3
phar: Get rid of bailouts in Phar::webPhar() (#20190)
nielsdos Oct 16, 2025
1570f6a
Fix test on 8.4+
nielsdos Oct 16, 2025
6a572d7
Merge branch 'PHP-8.4' into PHP-8.5
nielsdos Oct 16, 2025
be97470
Merge branch 'PHP-8.5'
nielsdos Oct 16, 2025
6980d51
[ci skip] Fail test temporarily
nielsdos Oct 16, 2025
41a8b3c
Merge branch 'PHP-8.4' into PHP-8.5
nielsdos Oct 16, 2025
009cf30
Merge branch 'PHP-8.5'
nielsdos Oct 16, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions ext/mysqli/tests/mysqli_fetch_field_types.phpt
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ require_once 'skipifconnectfailure.inc';
// MYSQLI_TYPE_GEOMETRY => array('GEOMETRY', 'TODO add testing'),
MYSQLI_TYPE_NEWDECIMAL => array('DECIMAL', '1.1'),
MYSQLI_TYPE_BIT => array('BIT', 0),
MYSQLI_TYPE_JSON => array('JSON', '[]'),
);

foreach ($datatypes as $php_type => $datatype) {
Expand Down
6 changes: 6 additions & 0 deletions ext/pdo_mysql/mysql_statement.c
Original file line number Diff line number Diff line change
Expand Up @@ -746,6 +746,12 @@ static char *type_to_name_native(int type) /* {{{ */
PDO_MYSQL_NATIVE_TYPE_NAME(DATE)
#ifdef FIELD_TYPE_NEWDATE
PDO_MYSQL_NATIVE_TYPE_NAME(NEWDATE)
#endif
#ifdef FIELD_TYPE_VECTOR
PDO_MYSQL_NATIVE_TYPE_NAME(VECTOR)
#endif
#ifdef FIELD_TYPE_JSON
PDO_MYSQL_NATIVE_TYPE_NAME(JSON)
#endif
PDO_MYSQL_NATIVE_TYPE_NAME(TIME)
PDO_MYSQL_NATIVE_TYPE_NAME(DATETIME)
Expand Down
32 changes: 32 additions & 0 deletions ext/pdo_mysql/tests/gh20122.phpt
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
--TEST--
GH-20122 (getColumnMeta() for JSON-column in MySQL)
--EXTENSIONS--
pdo
pdo_mysql
--SKIPIF--
<?php
require_once __DIR__ . '/inc/mysql_pdo_test.inc';
MySQLPDOTest::skip();
?>
--XFAIL--
--FILE--
<?php
require_once __DIR__ . '/inc/mysql_pdo_test.inc';
$pdo = MySQLPDOTest::factory();

$db->exec('CREATE TABLE test (bar JSON)');
$db->exec('INSERT INTO test VALUES("[]")');

$stmt = $db->query('SELECT * from test');
$meta = $stmt->getColumnMeta(0);

// Note: JSON is an alias for LONGTEXT on MariaDB!
echo $meta['native_type'], "\n";
?>
--CLEAN--
<?php
require __DIR__ . '/mysql_pdo_test.inc';
MySQLPDOTest::dropTestTable();
?>
--EXPECTF--
%r(JSON|LONGTEXT)%r
Loading