Skip to content

Stdlib: move_uploaded_file for VM (multipart upload apps) (#2005) - #2021

Merged
PurHur merged 2 commits into
masterfrom
issue-2005-move-uploaded-file
May 25, 2026
Merged

Stdlib: move_uploaded_file for VM (multipart upload apps) (#2005)#2021
PurHur merged 2 commits into
masterfrom
issue-2005-move-uploaded-file

Conversation

@PurHur

@PurHur PurHur commented May 25, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add move_uploaded_file() VM builtin with phpc_upload_* temp-path validation and .. rejection on destinations.
  • Wire AOT/JIT native helper __compiler_move_uploaded_file (JIT compliance deferred; excluded from JITTest like password_hash).
  • Add VM compliance PHPT and AOT fixture; update capability matrix.

Test plan

  • ./vendor/bin/phpunit --filter 'testCases#427' test/compliance/VMTest.php (Docker)
  • ./script/docker-ci-local.sh fast --filter move_uploaded_file (full fast gate on merge host)
  • phpc serve + multipart POST on examples/006-FileUploadWeb (optional follow-up)

Closes #2005

Made with Cursor

PurHur and others added 2 commits May 25, 2026 12:12
Implement temp-path validation for phpc_upload_* files, AOT runtime
__compiler_move_uploaded_file, compliance/AOT PHPT coverage, and skip
JIT until a dedicated lowering test lands.

Co-authored-by: Cursor <cursoragent@cursor.com>
Feature already landed on master; keep SelfHostBuiltinPolicy filesystem
entry and remove duplicate JIT registration / VmUpload fork.

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: move_uploaded_file for VM (multipart upload reference apps)

1 participant