Open
Conversation
9f0aa46 to
14483db
Compare
14483db to
d9e2335
Compare
d9e2335 to
74408ed
Compare
74408ed to
15855ba
Compare
15855ba to
c7aa456
Compare
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.
This PR contains the following updates:
3.8.0→3.13.1Release Notes
mvdan/sh (shfmt)
v3.13.1Compare Source
[[zsh]]in EditorConfig files.zshrcand.bash_profile--apply-ignorewhen used with explicit args - #1310;;with the previous line when formatting - #1289$1[foo]was parsed as a subscript in Zsh - #1288$!in double quotes in Zsh - #1298namerefvariablesv3.13.0Compare Source
This release introduces support for Zsh in the parser and formatter, which was tracked in issue #120 alongside the label https://github.com/mvdan/sh/labels/zsh. While support is not complete, it should be far enough for many use cases.
This release also drops support for Go 1.24 and includes many other enhancements:
-lprints any filenamesshfmt -versionis now derived from the git current tag, dropping the-ldflagsworkaroundLangZshLangVariantis now a bitset, allowing the use of sets like "Bash-like"InteractiveSeqandStmtsSeqiterator methods forParserPrintervia struct embeddingdeclare {a,b}_c=valueshopt -s dotglobandshopt -s extglob!(expr)extended glob patternsdeclare,type,readConfig.DotGlobandConfig.ExtGlobfor the interpreterVariable.Flagsto get the one-characterdeclareflagsGlobLeadingDotandExtendedOperatorsfor the interpreterNegExtGlobErrorto mark the use of!(expr)negation patternsConsider becoming a sponsor if you benefit from the work that went into this release!
Binaries built on
go version go1.26.1 linux/amd64with:Note that this release no longer includes a
sha256sums.txtasset; GitHub now provide digests natively.v3.12.0Compare Source
mvdan-shJS package is discontinued in favor ofsh-syntax- #1145--writeto replace non-regular files - #843IsBuiltinto check if a command name is a shell built-in - #1164HandlerContext.Builtinto allowExecHandlerFuncto call built-ins$!andwait PID- #221ExecHandlerFuncerrors via theRunner.RunAPIHandlerContext.Posto provide handlers with source positionsNewExitStatusandIsExitStatusin favor ofExitStatuswaitto always return the status of the last given job$RANDOMand$SRANDOM$BASH_REMATCHwhen matching regular expressions via=~Bracesmode; usesyntax.SplitBracesinstead**to only act as "globstar" when alone as a path element - #1149*and**to not match leading dots in basenamesNoGlobStarmode to match the POSIX semanticsv3.11.0Compare Source
This release drops support for Go 1.22 and includes many enhancements.
-l=0and-f=0to split filenames with null bytes - #1096Parser.WordsSeqParser.IncompleteandIsIncompleteto work well withParser.Words- #937RecoverErrorsLangErrorto include which language was used when parsingtestread/write/exec operators to work correctly on directories - #1116cancelreaderdependency withos.File.SetReadDeadlineOpenHandlerwhen opening named pipes for process substitutions - #1120TMPDIRif set viaEnvto create temporary files such as named pipesFieldsSeqUnsetkind with a newVariable.Setboolean fieldConsider becoming a sponsor if you benefit from the work that went into this release!
v3.10.0Compare Source
--filenameout of the parser options category - #1079v3.9.0which broke redirecting files to stdin - #1099v3.9.0whereHandlerContext.Stdinwas never nilInteractiveoption to be used by interactive shells - #1100<&-Consider becoming a sponsor if you benefit from the work that went into this release!
v3.9.0Compare Source
This release drops support for Go 1.21 and includes many fixes.
os.Pipefor stdin to prevent draining by subprocesses - #1085nocaseglobbash option - #1073@kparameter expansion operatortest -Oandtest -Goperators on non-Windows - #1080read -sbuiltin flag - #1063A special thanks to @theclapp for their contributors to this release!
Consider becoming a sponsor if you benefit from the work that went into this release!
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.