Skip to content

Commit 459020d

Browse files
authored
Merge branch 'master' into feat/zend-class-use-traits
2 parents 2f76222 + 65b4073 commit 459020d

205 files changed

Lines changed: 616 additions & 380 deletions

File tree

Some content is hidden

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

.github/workflows/real-time-benchmark.yml

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ permissions:
3636
contents: read
3737
pull-requests: write
3838
concurrency:
39-
group: ${{ github.workflow }}
39+
group: ${{ github.workflow }}-${{ github.event_name }}
4040
cancel-in-progress: false
4141
jobs:
4242
REAL_TIME_BENCHMARK:
@@ -135,7 +135,7 @@ jobs:
135135
run: |
136136
set -e
137137
138-
BASELINE_SHORT_SHA="$(echo "${{ env.BASELINE_COMMIT }}" | cut -c1-4)"
138+
BASELINE_SHORT_SHA="$(echo "${{ env.BASELINE_COMMIT }}" | cut -c 1-7)"
139139
140140
cat << EOF > ./php-version-benchmarks/config/php/baseline.ini
141141
PHP_NAME="PHP - baseline@$BASELINE_SHORT_SHA"
@@ -152,7 +152,7 @@ jobs:
152152
run: |
153153
set -e
154154
155-
BASELINE_SHORT_SHA="$(echo "${{ env.BASELINE_COMMIT }}" | cut -c1-4)"
155+
BASELINE_SHORT_SHA="$(echo "${{ env.BASELINE_COMMIT }}" | cut -c 1-7)"
156156
157157
cat << EOF > ./php-version-benchmarks/config/php/baseline_jit.ini
158158
PHP_NAME="PHP - baseline@$BASELINE_SHORT_SHA (JIT)"
@@ -240,12 +240,12 @@ jobs:
240240
241241
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
242242
WORKSPACE="manual"
243-
BASE_COMMIT="$(echo "${{ env.BASELINE_COMMIT }}" | cut -c 1-6)"
243+
BASE_COMMIT="$(echo "${{ env.BASELINE_COMMIT }}" | cut -c 1-10)"
244244
else
245245
WORKSPACE="nightly"
246-
BASE_COMMIT="$(echo "${{ env.LAST_RESULT_SHA }}" | cut -c 1-6)"
246+
BASE_COMMIT="$(echo "${{ env.LAST_RESULT_SHA }}" | cut -c 1-10)"
247247
fi
248-
COMPARE_COMMIT="$(echo "${{ env.COMMIT }}" | cut -c 1-6)"
248+
COMPARE_COMMIT="$(echo "${{ env.COMMIT }}" | cut -c 1-10)"
249249
250250
cp ./php-version-benchmarks/config/infra/aws/x86_64-metal.ini.dist ./php-version-benchmarks/config/infra/aws/x86_64-metal.ini
251251
sed -i "s|INFRA_DOCKER_REGISTRY=public.ecr.aws/abcdefgh|INFRA_DOCKER_REGISTRY=${{ secrets.PHP_VERSION_BENCHMARK_DOCKER_REGISTRY }}|g" ./php-version-benchmarks/config/infra/aws/x86_64-metal.ini
@@ -301,16 +301,3 @@ jobs:
301301
NEWEST_RESULT_DIRECTORY=$(ls -td ${{ github.workspace }}/php-version-benchmarks/docs/results/${{ env.YEAR }}/*/ | head -1)
302302
sed -i "s|#ARTIFACT_URL#|${{ steps.upload.outputs.artifact-url }}|g" "${NEWEST_RESULT_DIRECTORY}result.md"
303303
gh pr comment ${{ inputs.pull_request }} --body-file "${NEWEST_RESULT_DIRECTORY}result.md" --repo ${{ github.repository }}
304-
- name: Cleanup
305-
if: always()
306-
run: |
307-
set -ex
308-
309-
rm -rf ./php-version-benchmarks/tmp/
310-
rm -f ./php-version-benchmarks/build/infrastructure/config/*.tfvars
311-
rm -rf ./php-version-benchmarks/build/infrastructure/aws/.terraform/
312-
rm -f ./php-version-benchmarks/build/infrastructure/aws/.terraform.lock.hcl
313-
rm -f ./php-version-benchmarks/build/infrastructure/aws/aws.tfplan
314-
rm -f ./php-version-benchmarks/build/infrastructure/aws/terraform.tfstate
315-
rm -f ./php-version-benchmarks/build/infrastructure/aws/terraform.tfstate.backup
316-
rm -f ./php-version-benchmarks/config/infra/aws/*.ini

NEWS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,8 @@ PHP NEWS
8686
transmitted data can remain unacknowledged. (James Lucas)
8787
. Added AF_UNSPEC support for sock_addrinfo_lookup() as a sole umbrella for
8888
AF_INET* family only. (David Carlier)
89+
. Fixed GH-20532 (socket_addrinfo_lookup gives the error code with a new optional
90+
parameter). (David Carlier)
8991

9092
- SPL:
9193
. DirectoryIterator key can now work better with filesystem supporting larger

UPGRADING

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,11 @@ PHP 8.6 UPGRADE NOTES
7777
- Phar:
7878
. Phar::mungServer() now supports reference values.
7979

80+
- Sockets:
81+
. socket_addrinfo_lookup() now has an additional optional argument $error
82+
when not null, and on failure, gives the error code (one of the EAI_*
83+
constants).
84+
8085
- Zip:
8186
. ZipArchive::extractTo now raises a TypeError for the
8287
files argument if one or more of the entries is not
@@ -105,13 +110,33 @@ PHP 8.6 UPGRADE NOTES
105110
- Hash:
106111
. The bundled version of xxHash was upgraded to 0.8.2.
107112

113+
- mysqli
114+
. Added new constant MYSQLI_OPT_COMPRESS.
115+
108116
========================================
109117
10. New Global Constants
110118
========================================
111119

112120
- Sockets:
113121
. TCP_USER_TIMEOUT (Linux only).
114122
. AF_UNSPEC.
123+
. EAI_BADFLAGS.
124+
. EAI_NONAME.
125+
. EAI_AGAIN.
126+
. EAI_FAIL.
127+
. EAI_NODATA.
128+
. EAI_FAMILY.
129+
. EAI_SOCKTYPE.
130+
. EAI_SERVICE.
131+
. EAI_ADDRFAMILY.
132+
. EAI_SYSTEM.
133+
. EAI_OVERFLOW
134+
. EAI_INPROGRESS.
135+
. EAI_CANCELED.
136+
. EAI_NOTCANCELED.
137+
. EAI_ALLDONE.
138+
. EAI_INTR.
139+
. EAI_IDN_ENCODE.
115140

116141
========================================
117142
11. Changes to INI File Handling

UPGRADING.INTERNALS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,10 @@ PHP 8.6 INTERNALS UPGRADE NOTES
7474
- ext/mbstring:
7575
. Added GB18030-2022 to default encoding list for zh-CN.
7676

77+
- ext/mysqlnd:
78+
. Dropped session_options parameter from all methods in mysqlnd_auth.
79+
The same information is present in conn->options and should be used instead.
80+
7781
- ext/standard:
7882
. _php_error_log() now has a formal return type of zend_result.
7983
. _php_error_log() now accepts zend_string* values instead of char*.

Zend/tests/attributes/nodiscard/007.phpt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ zend_test_nodiscard();
1212
?>
1313
--EXPECTF--
1414
<!-- internal enter NoDiscard::__construct() -->
15+
<!-- internal leave NoDiscard::__construct() -->
1516

1617
Warning: The return value of function zend_test_nodiscard() should either be used or intentionally ignored by casting it as (void), custom message in %s on line %d
1718
<!-- internal enter zend_test_nodiscard() -->
19+
<!-- internal leave zend_test_nodiscard() -->
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
--TEST--
2+
GH-20905: Lazy proxy bailing __clone assertion
3+
--CREDITS--
4+
Viet Hoang Luu (@vi3tL0u1s)
5+
--FILE--
6+
<?php
7+
8+
function test() {
9+
function f() {}
10+
}
11+
12+
class A {
13+
public $_;
14+
public function __clone() {
15+
test();
16+
}
17+
}
18+
19+
test();
20+
clone (new ReflectionClass(A::class))->newLazyProxy(fn() => new A);
21+
22+
?>
23+
--EXPECTF--
24+
Fatal error: Cannot redeclare function f() (previously declared in %s:%d) in %s on line %d
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
--TEST--
2+
GH-20479: Hooked object properties overflow
3+
--CREDITS--
4+
Viet Hoang Luu (@vi3tL0u1s)
5+
--FILE--
6+
<?php
7+
8+
#[AllowDynamicProperties]
9+
class Trigger {
10+
public $a = 'x';
11+
public $b = 'x';
12+
public $c = 'x';
13+
public $d = 'x';
14+
public $e = 'x';
15+
public $f = 'x';
16+
public string $trigger {
17+
get {
18+
return 'trigger';
19+
}
20+
}
21+
}
22+
23+
$obj = new Trigger();
24+
// Add 2 dynamic props
25+
$obj->g = $obj->h = 'x';
26+
var_export($obj);
27+
28+
?>
29+
--EXPECT--
30+
\Trigger::__set_state(array(
31+
'a' => 'x',
32+
'b' => 'x',
33+
'c' => 'x',
34+
'd' => 'x',
35+
'e' => 'x',
36+
'f' => 'x',
37+
'trigger' => 'trigger',
38+
'h' => 'x',
39+
'g' => 'x',
40+
))

Zend/zend_attributes_arginfo.h

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Zend/zend_builtin_functions_arginfo.h

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Zend/zend_closures_arginfo.h

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)