-
-
Notifications
You must be signed in to change notification settings - Fork 339
StaticPHP v3 #980
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: v3
Are you sure you want to change the base?
StaticPHP v3 #980
Conversation
- Introduced DirDiff class for tracking directory file changes. - Updated ConsoleApplication to use addCommand for build targets. - Enhanced PackageBuilder with methods for deploying binaries and extracting debug info. - Improved package installation logic to support shared extensions. - Added readline extension with patching for static builds.
…ing extraction logic
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Copilot <[email protected]>
@henderkes There's no urgent things. Just when you return from your vacation, and if you have time, it would be best we could discuss what modifications are still needed for the current framework of v3. Please feel free to contact me if you'd like. Currently I've finished the major part of framework according to RFC, but I haven't ported most of the implementation yet, mainly to prevent major changes to the framework structure from requiring massive modifications. And for anyone: If you have any feedback on the framework design, please let me know. |
|
I haven't had much of a look yet and the changelist is quite massive, so it might be a good idea to chat about it one evening after I had a rough glance. I'll give everything (especially vendor mode) a play and rewrite the static-php/packages properly on top of the new branch. Might have to add versioned packages to it first though, because that's the part still holding up apk and proper apt support. |
|
For a quick reference for command mode, in the current branch, the available commands:
The remaining commands and some of the option implementations may not have been tested. |
You mean the dependencies' version from artifacts? |
No, I mean versioned .deb packages like php-zts8.3-... Nothing on the spc side.
Why is --build-cli deprecated? What would be the new way to build multiple SAPIs at once? |
Important notes
STATUS:
dev-> alpha -> beta -> rc -> stableContribution notes:
alphaversion, any changes should be merged intov3-dev, notv3.alphaversion, any changes should be merged intov3and we will deprecatev3-devbranch.betaversion.RFCs
Progress of refactoring
bin/refactoringbin/spcfor v3bin/spc-alpine-dockerbin/spc-gnu-dockerbin/docker-entrypoint.shbin/setup-runtimev3 new modules
bootstrapfile for initialization (StaticPHP v3 #980) (src/bootstrap.php)init-registrycommand for vendor userCommands refactoring
ConsoleApplication dynamic generating commands for
targettype packages (StaticPHP v3 #980)Custom commands in external registry (StaticPHP v3 #980)
DownloadCommand
--from-zip,--all,--with-openssl11have been removed (StaticPHP v3 #980)--without-suggests,--for-packages,--ignore-cache,--parallel,--no-shallow-clone(StaticPHP v3 #980)--with-php,--clean,--custom-url,--custom-git,--no-alt,--with-php(StaticPHP v3 #980)--for-extensions,--for-libs,--without-suggestions,--ignore-cache-sources,--prefer-pre-built(StaticPHP v3 #980)BaseCommand
BuildLibsCommand
--alloption forbuild:libs(StaticPHP v3 #980)BuildPHPCommand -> BuildTargetCommand with
phppackage--with-libs: Keep for compatibility, add--with-packagesoption (StaticPHP v3 #980)--build-shared--build-all: Special parsing in v3 (StaticPHP v3 #980)--no-strip,--disable-opcache-jit,--build-{sapi},--with-config-file-path,--with-config-file-scan-dir,--with-hardcoded-ini,--with-micro-fake-cli,--with-added-patch (-P),--without-micro-ext-test,--with-upx-pack,--with-micro-logo,--enable-micro-win32,--with-frankenphp-apphas been moved tophppackage definition (StaticPHP v3 #980)no-stripdisable-opcache-jitwith-config-file-pathwith-config-file-scan-dirwith-hardcoded-iniwith-micro-fake-cliwith-addeed-patchwithout-micro-ext-testwith-upx-packwith-micro-logoenable-micro-win32with-frankenphp-appbuild-sharedwith-packages(with-libs)build-allbuild-{sapi}exceptbuild-frankenphp(StaticPHP v3 #980)build-frankenphpwith-suggests(with-suggested-libs,with-suggested-exts)no-download(StaticPHP v3 #980)with-clean#[StaticPHP\Attribute\Package\Info](StaticPHP v3 #980)phppackagebuildstage before (StaticPHP v3 #980)CraftCommand
DeleteDownloadCommand
DoctorCommand (StaticPHP v3 #980) (Just command, not Doctor items)
DumpExtensionsCommand
DumpLicenseCommand
ExtractCommand (Just command, not Extractor)
for-extensions(StaticPHP v3 #980)for-libs(StaticPHP v3 #980)for-packages(StaticPHP v3 #980)without-suggestsforfor-*options (StaticPHP v3 #980)InstallPkgCommand ->InstallPackageCommand
skip-extractMicroCombineCommand
SPCConfigCommand
SwitchPhpVersionCommand
Dev commands
Doctor module
Legacy modules (v2 only - SPC namespace)
These modules exist in v2 but are refactored/merged into new v3 modules: