Skip to content

Commit cc3890a

Browse files
committed
Merge tag 'php-8.3.14' into was-8.3.x
Tag for php-8.3.14
2 parents 4257870 + dc83dee commit cc3890a

File tree

206 files changed

+6287
-531
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

206 files changed

+6287
-531
lines changed

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
/ext/random @TimWolla @zeriyoshi
4747
/ext/session @Girgias
4848
/ext/simplexml @nielsdos
49+
/ext/soap @nielsdos
4950
/ext/sockets @devnexen
5051
/ext/spl @Girgias
5152
/ext/standard @bukka

.github/actions/brew/action.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ runs:
1919
enchant \
2020
libffi \
2121
intltool \
22+
icu4c \
2223
libiconv \
2324
t1lib \
2425
libxml2 \

.github/actions/configure-macos/action.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ runs:
99
- shell: bash
1010
run: |
1111
set -x
12+
BREW_OPT="$(brew --prefix)"/opt
1213
export PATH="/usr/local/opt/bison/bin:$PATH"
1314
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/[email protected]/lib/pkgconfig"
1415
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/curl/lib/pkgconfig"
@@ -18,8 +19,10 @@ runs:
1819
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/libxslt/lib/pkgconfig"
1920
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/zlib/lib/pkgconfig"
2021
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/icu4c/lib/pkgconfig"
22+
sed -i -e 's/Requires.private:.*//g' "$BREW_OPT/curl/lib/pkgconfig/libcurl.pc"
2123
./buildconf --force
2224
./configure \
25+
CFLAGS="-Wno-strict-prototypes -Wno-unused-but-set-variable -Wno-single-bit-bitfield-constant-conversion" \
2326
--enable-option-checking=fatal \
2427
--prefix=/usr/local \
2528
--enable-fpm \

.github/actions/configure-x64/action.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ inputs:
66
skipSlow:
77
default: false
88
required: false
9+
asan:
10+
default: false
11+
required: false
912
runs:
1013
using: composite
1114
steps:

.github/nightly_matrix.php

Lines changed: 27 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,17 @@
11
<?php
22

3-
const BRANCHES = ['master', 'PHP-8.3', 'PHP-8.2', 'PHP-8.1', 'PHP-8.0'];
3+
const BRANCHES = [
4+
['ref' => 'master', 'version' => [8, 5]],
5+
['ref' => 'PHP-8.4', 'version' => [8, 4]],
6+
['ref' => 'PHP-8.3', 'version' => [8, 3]],
7+
['ref' => 'PHP-8.2', 'version' => [8, 2]],
8+
['ref' => 'PHP-8.1', 'version' => [8, 1]],
9+
];
410

511
function get_branch_commit_cache_file_path(): string {
612
return dirname(__DIR__) . '/branch-commit-cache.json';
713
}
814

9-
function get_branch_matrix(array $branches) {
10-
$result = array_map(function ($branch) {
11-
$branch_key = strtoupper(str_replace('.', '', $branch));
12-
return [
13-
'name' => $branch_key,
14-
'ref' => $branch,
15-
];
16-
}, $branches);
17-
18-
return $result;
19-
}
20-
2115
function get_branches() {
2216
$branch_commit_cache_file = get_branch_commit_cache_file_path();
2317
$branch_commit_map = [];
@@ -27,93 +21,45 @@ function get_branches() {
2721

2822
$changed_branches = [];
2923
foreach (BRANCHES as $branch) {
30-
$previous_commit_hash = $branch_commit_map[$branch] ?? null;
31-
$current_commit_hash = trim(shell_exec('git rev-parse origin/' . $branch));
24+
$previous_commit_hash = $branch_commit_map[$branch['ref']] ?? null;
25+
$current_commit_hash = trim(shell_exec('git rev-parse origin/' . $branch['ref']));
3226

3327
if ($previous_commit_hash !== $current_commit_hash) {
3428
$changed_branches[] = $branch;
3529
}
3630

37-
$branch_commit_map[$branch] = $current_commit_hash;
31+
$branch_commit_map[$branch['ref']] = $current_commit_hash;
3832
}
3933

4034
file_put_contents($branch_commit_cache_file, json_encode($branch_commit_map));
4135

42-
return get_branch_matrix($changed_branches);
36+
return $changed_branches;
4337
}
4438

45-
function get_matrix_include(array $branches) {
46-
$jobs = [];
47-
foreach ($branches as $branch) {
48-
$jobs[] = [
49-
'name' => '_ASAN_UBSAN',
50-
'branch' => $branch,
51-
'debug' => true,
52-
'zts' => true,
53-
'configuration_parameters' => "CFLAGS='-fsanitize=undefined,address -DZEND_TRACK_ARENA_ALLOC' LDFLAGS='-fsanitize=undefined,address'",
54-
'run_tests_parameters' => '--asan',
55-
'test_function_jit' => false,
56-
'asan' => true,
57-
];
58-
if ($branch['ref'] !== 'PHP-8.0') {
59-
$jobs[] = [
60-
'name' => '_REPEAT',
61-
'branch' => $branch,
62-
'debug' => true,
63-
'zts' => false,
64-
'run_tests_parameters' => '--repeat 2',
65-
'timeout_minutes' => 360,
66-
'test_function_jit' => true,
67-
'asan' => false,
68-
];
69-
$jobs[] = [
70-
'name' => '_VARIATION',
71-
'branch' => $branch,
72-
'debug' => true,
73-
'zts' => true,
74-
'configuration_parameters' => "CFLAGS='-DZEND_RC_DEBUG=1 -DPROFITABILITY_CHECKS=0 -DZEND_VERIFY_FUNC_INFO=1'",
75-
'run_tests_parameters' => '-d zend_test.observer.enabled=1 -d zend_test.observer.show_output=0',
76-
'timeout_minutes' => 360,
77-
'test_function_jit' => true,
78-
'asan' => false,
79-
];
80-
}
81-
}
82-
return $jobs;
83-
}
84-
85-
function get_windows_matrix_include(array $branches) {
86-
$jobs = [];
87-
foreach ($branches as $branch) {
88-
$jobs[] = [
89-
'branch' => $branch,
90-
'x64' => true,
91-
'zts' => true,
92-
'opcache' => true,
93-
];
94-
$jobs[] = [
95-
'branch' => $branch,
96-
'x64' => false,
97-
'zts' => false,
98-
'opcache' => false,
99-
];
100-
}
101-
return $jobs;
39+
function get_current_version(): array {
40+
$file = dirname(__DIR__) . '/main/php_version.h';
41+
$content = file_get_contents($file);
42+
preg_match('(^#define PHP_MAJOR_VERSION (?<num>\d+)$)m', $content, $matches);
43+
$major = (int) $matches['num'];
44+
preg_match('(^#define PHP_MINOR_VERSION (?<num>\d+)$)m', $content, $matches);
45+
$minor = (int) $matches['num'];
46+
return [$major, $minor];
10247
}
10348

10449
$trigger = $argv[1] ?? 'schedule';
10550
$attempt = (int) ($argv[2] ?? 1);
106-
$discard_cache = ($trigger === 'schedule' && $attempt !== 1) || $trigger === 'workflow_dispatch';
51+
$monday = date('w', time()) === '1';
52+
$discard_cache = $monday
53+
|| ($trigger === 'schedule' && $attempt !== 1)
54+
|| $trigger === 'workflow_dispatch';
10755
if ($discard_cache) {
10856
@unlink(get_branch_commit_cache_file_path());
10957
}
110-
111-
$branches = get_branches();
112-
$matrix_include = get_matrix_include($branches);
113-
$windows_matrix_include = get_windows_matrix_include($branches);
58+
$branch = $argv[3] ?? 'master';
59+
$branches = $branch === 'master'
60+
? get_branches()
61+
: [['ref' => $branch, 'version' => get_current_version()]];
11462

11563
$f = fopen(getenv('GITHUB_OUTPUT'), 'a');
11664
fwrite($f, 'branches=' . json_encode($branches, JSON_UNESCAPED_SLASHES) . "\n");
117-
fwrite($f, 'matrix-include=' . json_encode($matrix_include, JSON_UNESCAPED_SLASHES) . "\n");
118-
fwrite($f, 'windows-matrix-include=' . json_encode($windows_matrix_include, JSON_UNESCAPED_SLASHES) . "\n");
11965
fclose($f);

.github/scripts/windows/test_task.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ mkdir %~d0\usr\local\share\enchant\hunspell
103103
if %errorlevel% neq 0 exit /b 3
104104
echo Fetching enchant dicts
105105
pushd %~d0\usr\local\share\enchant\hunspell
106-
powershell -Command wget http://windows.php.net/downloads/qa/appveyor/ext/enchant/dict.zip -OutFile dict.zip
106+
powershell -Command wget https://downloads.php.net/~windows/qa/appveyor/ext/enchant/dict.zip -OutFile dict.zip
107107
unzip dict.zip
108108
del /q dict.zip
109109
popd

.github/workflows/labeler.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ permissions:
77

88
jobs:
99
triage:
10+
if: github.repository == 'php/php-src'
1011
permissions:
1112
pull-requests: write
1213
runs-on: ubuntu-latest

0 commit comments

Comments
 (0)