feat(release): add WordPress platform support - #347
Merged
Conversation
Bumps [lint-staged](https://github.com/lint-staged/lint-staged) from 17.0.7 to 17.0.8. - [Release notes](https://github.com/lint-staged/lint-staged/releases) - [Changelog](https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md) - [Commits](lint-staged/lint-staged@v17.0.7...v17.0.8) --- updated-dependencies: - dependency-name: lint-staged dependency-version: 17.0.8 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
…-staged-17.0.8 chore(deps-dev): bump lint-staged from 17.0.7 to 17.0.8
Bumps [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) from 21.0.2 to 21.1.0. - [Release notes](https://github.com/conventional-changelog/commitlint/releases) - [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md) - [Commits](https://github.com/conventional-changelog/commitlint/commits/v21.1.0/@commitlint/cli) --- updated-dependencies: - dependency-name: "@commitlint/cli" dependency-version: 21.1.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional) from 21.0.2 to 21.1.0. - [Release notes](https://github.com/conventional-changelog/commitlint/releases) - [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-conventional/CHANGELOG.md) - [Commits](https://github.com/conventional-changelog/commitlint/commits/v21.1.0/@commitlint/config-conventional) --- updated-dependencies: - dependency-name: "@commitlint/config-conventional" dependency-version: 21.1.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 26.0.0 to 26.0.1. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 26.0.1 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
…itlint/cli-21.1.0 chore(deps-dev): bump @commitlint/cli from 21.0.2 to 21.1.0
…itlint/config-conventional-21.1.0 chore(deps-dev): bump @commitlint/config-conventional from 21.0.2 to 21.1.0
…s/node-26.0.1 chore(deps-dev): bump @types/node from 26.0.0 to 26.0.1
added 11 commits
July 19, 2026 19:10
added 6 commits
August 29, 2026 21:45
added 4 commits
August 29, 2026 22:33
Contributor
|
🎉 This PR is included in version 2.3.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Ships WordPress as a first-class platform, fixes the packaging defect in 2.2.0, and hardens the cache, CLI surface, and release pipeline.
Platform
wordpressas a supported platform alongsidedrupalandnone, with the built-in WordPress starter and detection for standard WordPress, Bedrock, and Composer web-root layouts.drupal || wordpress), so a shared component system can target multiple platforms. Variant selection prefers an exact match, then a compatible variant, then a genericnonevariant.emulsify audit, delegating to the project-installed@emulsify/coreaudit.Packaging
dist/node_modules/; this ships 63 files at 35.6 KiB packed.Cache
GIT_TERMINAL_PROMPT=0; a timeout falls back to the cached clone rather than failing the command.emulsify cache clearwith--dry-run, and a--refreshflag on the component commands.Correctness
component installnow exits non-zero when a requested component fails to install. It previously logged a warning and exited 0, soemulsify component install x && npm run buildwould proceed against a missing component..cli/systemInstall.jshook now runs. The path was being joined ontosystem.emulsify.jsonitself rather than its directory, so the documented hook had never fired.findFileInCurrentPathnow terminates at the filesystem root on Windows and UNC paths, where it previously looped forever, and finds a config file located at the root.component list,install, andcreate. An unrecognized variant platform is skipped with one warning instead of throwing for the whole variant list.--repositoryand--checkoutare now required together; passing either alone previously fell through and silently installed a different system.-c/--checkout, which was registered and documented but never read, and corrects asystem installerror that advertised a--nameflag that never existed.CI and release
github-actionsDependabot ecosystem, and removescontributors.yml, which ran an unpinned third-party action with a PAT against a README heading that no longer exists.$HOME.Repo
CONTRIBUTING.md,SECURITY.md,CODE_OF_CONDUCT.md,CODEOWNERS, issue forms, this PR template, and.editorconfig.preparetohusky(thehusky installsubcommand is deprecated in v9) and narrowslint-stagedso a commit no longer reformats the entiresrc/tree. Removes thelintscript, which ran the test suite, and the orphanedtsconfig.eslint.json; ESLint is not installed in this project.npm auditis clean, down from 7 high advisories including one in production dependencies.Related Issue
Closes #192
Verification
npm run buildnpm run typenpm testnpm run pack:dry-runnpm run smoke:packRun from a clean clone on Node 24: 49 suites / 407 tests, e2e 6/6 with 0 todos,
npm cireports 0 vulnerabilities, packed artifact is 63 files / 35.6 KiB / 139.2 KiB unpacked.npm run release:analyzepredictsminor: v2.2.0 -> v2.3.0from 31 commits and confirms the squash title preserves the release type.Checklist
Notes
Cache format change. The cache key changed, so the entry from 2.2.0 is orphaned rather than migrated. Run
emulsify cache clearonce after upgrading to reclaim the disk. Stale entries cannot be mistakenly reused — reuse requires a sidecar 2.2.0 never wrote.Behavior changes worth knowing. A failed dependency install now also fails the command, not just a failed requested component.
emulsify -c <ref> <command>now errors as an unknown option instead of being silently ignored.Placeholders to fill.
SECURITY.mdhas aTODO(contact)for the private reporting address, and.github/CODEOWNERShas no rules yet — both were deliberately left for a maintainer rather than invented.Before merging: branch protection still references
CI / Validate, which no longer exists. The required checks are nowCI / Unit (ubuntu-latest),CI / Unit (macos-latest),CI / Unit (windows-latest), andCI / Package.Follow-ups:
getRepositoryLatestTagstill makes an unboundedls-remoteand should get the same timeout treatment as the cache lookup.--variantwas registered under atest:commit so it won't appear in the generated release notes.