Pin shell scripts to LF, bump to 2.3.1#47
Merged
Merged
Conversation
The 2.3.0 tarball shipped scripts/postinstall.sh with CRLF line endings because npm publish was run from a Windows WT with git's autocrlf converting on checkout. Consumer installs on Linux then fail with `$'\r': command not found` at the first line of the script. Add .gitattributes that pins *.sh to LF regardless of platform autocrlf settings, so any future publish from any environment produces a consistent tarball. Bump to 2.3.1 to roll out the fix. Note for whoever publishes 2.3.1: after pulling this branch, the existing WT files are not automatically re-checked-out, so on Windows you may need to force the .gitattributes rules to take effect on the current WT: git rm --cached -- scripts/*.sh git checkout -- scripts/*.sh Then verify with `file scripts/postinstall.sh` — it should not report "with CRLF line terminators" — before running npm publish.
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.
The 2.3.0 tarball shipped scripts/postinstall.sh with CRLF line endings because npm publish was run from a Windows WT with git's autocrlf converting on checkout. Consumer installs on Linux then fail with
$'\r': command not foundat the first line of the script.Add .gitattributes that pins *.sh to LF regardless of platform autocrlf settings, so any future publish from any environment produces a consistent tarball. Bump to 2.3.1 to roll out the fix.
Note for whoever publishes 2.3.1: after pulling this branch, the existing WT files are not automatically re-checked-out, so on Windows you may need to force the .gitattributes rules to take effect on the current WT:
git rm --cached -- scripts/.sh
git checkout -- scripts/.sh
Then verify with
file scripts/postinstall.sh— it should not report "with CRLF line terminators" — before running npm publish.