fix(cli): remove Windows-breaking postinstall chmod - #669
Merged
Conversation
The pgflow package's postinstall ran `chmod +x dist/index.js || true`. `chmod` and `true` do not exist in Windows cmd.exe, so `npm install pgflow` and `npx pgflow@latest install` failed with "'chmod' is not recognized as an internal or external command" (#610). npm sets the executable bit on files declared in the `bin` field during install, so the script was redundant even on Unix and removal changes nothing for Unix users. Adds a permanent windows-latest smoke workflow as the regression test: build the CLI, pnpm pack, install the tarball into a clean directory with lifecycle scripts enabled, run the npm-created pgflow.cmd --version shim. The rest of CI runs on Ubuntu and invokes node dist/index.js directly, so npm installation and Windows shims were never exercised. One pgflow patch changeset for the 0.15.1 release group (#666). Recreates the minimal removal from #612 against current main. ## Checks - pnpm nx build cli — pass - pnpm pack in pkgs/cli — tarball contains dist/, no postinstall in its package.json - cli unit tests — 43/43 pass - prettier --check on all three touched files — pass Closes #610
🦋 Changeset detectedLatest commit: 54d696f The changes in this PR will be included in the next version bump. This PR includes changesets to release 5 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
View your CI Pipeline Execution ↗ for commit 448970a
💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗ ☁️ Nx Cloud last updated this comment at |
The double-quoted path followed by --version made YAML parse the value as a quoted scalar with trailing content; GitHub rejected the whole workflow at load time (run 33916753681: 0 jobs). The path expands from RUNNER_TEMP which has no spaces on GitHub-hosted runners, so the bare scalar is safe.
jumski
commented
Sep 4, 2026
jumski
left a comment
Contributor
Author
There was a problem hiding this comment.
all good, if checks are green - please merge with gt, then remove the worktree and close this issue's herdr workspace
Contributor
Author
Contributor
🚀 Production Deployment: Website✅ Successfully deployed to production! 🔗 Production URL: https://pgflow.dev 📝 Details:
Deployed at: 2026-09-04T22:50:53+02:00 |
This was referenced Sep 4, 2026
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
pgflowpackage'spostinstallranchmod +x dist/index.js || true.chmodandtruedo not exist in Windows cmd.exe, sonpm install pgflowandnpx pgflow@latest installfailed with'chmod' is not recognized as an internal or external command.binfield during install, so the script was redundant even on Unix. Removal is the whole fix.windows-latestsmoke workflow as the regression test: build the CLI,pnpm pack, install the tarball into a clean directory with lifecycle scripts enabled, run the npm-createdpgflow.cmd --versionshim. The rest of CI runs on Ubuntu and invokesnode dist/index.jsdirectly, so npm installation and Windows shims were never exercised.pgflowpatch changeset for the 0.15.1 release group (Release 0.15.1 — task lifecycle hardening #666).main(fix: remove postinstall chmod that breaks Windows npm install #612 was based on v0.13.3).Checks
pnpm nx build cli— passpnpm packinpkgs/cli— tarball containsdist/, nopostinstallin itspackage.jsonprettier --checkon all three touched files — passCloses #610