Skip to content

Update to PHP 8.4 and migrate to pnpm#314

Open
mauteri wants to merge 6 commits into
mainfrom
template-improvements-from-ziff
Open

Update to PHP 8.4 and migrate to pnpm#314
mauteri wants to merge 6 commits into
mainfrom
template-improvements-from-ziff

Conversation

@mauteri
Copy link
Copy Markdown

@mauteri mauteri commented Oct 3, 2025

Updates template to PHP 8.4 and migrates from npm to pnpm to match the ziffdavis-wp-platform repository configuration.

Changes

  • Updated PHP requirement from 8.2 to 8.4 in composer.json, Dockerfile, and GitHub workflow
  • Migrated from npm to pnpm (added packageManager field and pnpm-workspace.yaml)
  • Updated all npm commands to pnpm in package.json and CI workflow
  • Bumped Docker image to v2.3.0 with PHP 8.4
  • Updated xdebug to 3.4.5 for PHP 8.4 compatibility

We will merge these changes after VIP is out of PHP 8.4 testing mode.

@mauteri mauteri changed the title Update PHP 8.4 and switch to pnpm. Update to PHP 8.4 and migrate to pnpm Oct 3, 2025
Comment thread local/public/wp-config.php Outdated
// Multisite config.
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false ); // Matching VIP setup.
define( 'SUBDOMAIN_INSTALL', true );
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nandotess @bartoszgadomski we made this change on Ziff, but seems like it should be done here as well since you use network.local.wpenv.net and main.local.wpenv.net in the template setup. Am I understanding that correctly? Let me know your thoughts (cc @landbryo)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds like you're right

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would prefer to keep this mathing VIP.

setup-multisite.sh changes this to true during setup and revert it back at the end of the script.

I need to be honest I don't know the issues having this set to false. But I know for sure this should not block development and site creation. On Vox, this is still false. On DK this is false and localhost setup is working.

@mauteri mauteri marked this pull request as ready for review October 3, 2025 19:01
Copy link
Copy Markdown
Contributor

@nandotess nandotess left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think it's a good idea to change to PHP 8.4 yet since it's still on testing mode on VIP (thanks to Miina I have learned this today).

else
echo "Node modules cache miss - installing dependencies"
npm install --ignore-scripts --prefer-offline --no-audit
pnpm install --ignore-scripts --prefer-offline
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mauteri I'm interested in learning more about using pnpm before it's used as a default on projects. My only concern about it is having certain tooling on some projects, but not on others. Does changing to pnpm offer advantages that all projects should use? Are there any downsides to using pnpm that need to be considered on projects?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@aurooba could speak more to it, but there is apparently a huge performance benefit moving to pnpm. @landbryo is also moving to use it on Ziff Davis.

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.

4 participants