Skip to content

Stdlib: PHP_BUILD_DATE on PROFILE=8.5 (#23231)#23236

Merged
PurHur merged 1 commit into
masterfrom
agent/issue-23231-php-build-date
Jul 26, 2026
Merged

Stdlib: PHP_BUILD_DATE on PROFILE=8.5 (#23231)#23236
PurHur merged 1 commit into
masterfrom
agent/issue-23231-php-build-date

Conversation

@PurHur

@PurHur PurHur commented Jul 26, 2026

Copy link
Copy Markdown
Owner

Summary

  • Define Core constant PHP_BUILD_DATE when PHP_COMPILER_PROFILE=8.5 (deterministic Jan 1 2026 00:00:00 stamp; withheld on ≤8.4).
  • Extend createFromFormat with textual month M and whitespace-tolerant j so the stamp parses like php-src/__DATE__.
  • Compliance + repro + CompilerVersion gate tests.

Closes #23231

php-src reference

  • main/php_version.h / main/main.cPHP_BUILD_DATE
  • Format: M j Y H:i:s (php.watch / php-src __DATE__+__TIME__)

PHP implementation

  • lib/CompilerVersion.phpsupportsPhpBuildDateConstant() / PHP_BUILD_DATE_STAMP
  • ext/standard/VmPhpCoreConstants.php — forward-profile Core registration
  • ext/standard/VmDateTimeNative.phpM + space-padded j

Test plan

  • PHP_COMPILER_PROFILE=8.5 php bin/vm.php test/repro/maintainer_gap_php_build_date_85.phpok
  • no profile / PROFILE=8.4 → defined('PHP_BUILD_DATE') false
  • vendor/bin/phpunit --filter testSupportsPhpBuildDateConstant → OK (3)
  • vendor/bin/phpunit --filter php_build_date test/compliance/VMTest.php → OK (2)

Verification transcript

=== PROFILE=8.5 repro ===
ok
=== phantom ===
ok
OK (3 tests, 4 assertions)  # gate
OK (2 tests, 2 assertions)  # VM compliance

Trust probe (pre-claim): inventory OK 6561/6561; user_release_ready: no (known north-star5-fast gen-0 mismatch on master).

Made with Cursor

Define the PHP 8.5 Core constant with a deterministic M j Y H:i:s stamp,
and teach createFromFormat textual month (M) + space-padded day so the
value parses under php-src-strict.

Co-authored-by: Cursor <cursoragent@cursor.com>
@PurHur
PurHur merged commit 583f3ec into master Jul 26, 2026
1 check failed
@PurHur
PurHur deleted the agent/issue-23231-php-build-date branch July 26, 2026 00:16
PurHur added a commit that referenced this pull request Jul 26, 2026
…23239)

Interim Pillar 1 restamp so north-star5-verify-fast step 4f-m stays green; blob sha/size unchanged. Honest verified-fresh rebuild remains #22642.

Co-authored-by: PurHur <PurHur@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Stdlib: PHP_BUILD_DATE constant missing on PROFILE=8.5 (main/php build stamp)

1 participant