chore: release - #1
Open
github-actions[bot] wants to merge 1 commit into
Open
Conversation
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 was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
just-bash@3.3.0
Minor Changes
#291
47f604aThanks @trieloff! - jq: add external-argument flags (--arg,--argjson,--rawfile,--slurpfile,--args,--jsonargs) and the$ARGSobject ($ARGS.named/$ARGS.positional), matching real jq 1.7.1 behavior including exit codes, error messages, and prototype-sensitive key handling.#336
d97425dThanks @trieloff! - Support user file descriptors (fd >= 3).exec 3< file,N< file/N> file/N>> fileon any command,read -u N,read <&N,>&N,N<&M, andN<&-now go through a real descriptor table: a descriptor carries one shared read position,execkeeps it open until it is closed, and every other construct — includingdone N< fileon a loop — gets it only for the duration of that command.#331
6680247Thanks @trieloff! - Treat a-FILE operand ingrepas standard input, matching GNU.grep PATTERN -now reads stdin instead of failing with "No such file or directory", stdin is labelled(standard input)in the multi-file prefix and in-l/-L/-coutput, repeated-operands see the stream drained by the first one, and-is exempt from-rrecursion and--include/--excludefiltering.#325
edc7f2fThanks @trieloff! - Support process substitution<(cmd)and>(cmd).<(cmd)runscmdand substitutes a readable/dev/fd/Npath backed by anin-memory file;
>(cmd)substitutes a writable path whose contents are fed tocmdonce the outer command finishes. Descriptors are numbered from 63downwards like bash and released when the command that opened them completes.
Process substitutions retain their surrounding word context in assignments,
conditionals, regular expressions, and heredoc delimiters. Previously any use
raised
Parse error: Expected redirection target.#327
eaedb5bThanks @trieloff! - Addgrep -f FILE/--file=FILEto read patterns from a file (one per line). Patterns from-fOR-combine with-epatterns and with each other,-f -reads patterns from stdin, empty pattern lines match every line, and an empty pattern file selects nothing (exit 1). Newline-separatedPATTERNSoperands are now split into individual patterns, and-xgroups alternatives correctly (^(?:a|b)$).Patch Changes
#358
bd1df37Thanks @privatenumber! - Parse and serialize bare file descriptor variable redirections such as{output}>output.logand{input}<<EOF. Bare redirects create their target with a command-scoped descriptor, while named command forms keep the allocated descriptor available.#347
abb904bThanks @privatenumber! - Fix escaped reserved words being parsed as shell syntax. Unquoted escapes now retain their provenance through lexing and word parsing, including when the word is serialized back to Bash.#332
4f9bdecThanks @trieloff! - Fixgrep -Lexit status to match GNU grep. The status reports whether a linewas selected, not whether a filename was printed, so
grep -Lnow exits 0 whenevery file matched (printing nothing) and 1 when no file matched (printing every
name) — previously these were inverted.
#339
31d247fThanks @mutewinter! - network: restore private-range-enforced requests from the bundled buildEvery request made with
denyPrivateRangesenabled failed withNetwork access denied: DNS pinning unavailable for private IP enforcement, socurlcould not reach any host at all. The published ESM bundle was affected; source consumers and the CommonJS bundle were not.The pinned connection owner reads
Agentandfetchoff a dynamicimport("undici"). Node's resolution of the package exposes those as named exports, but the ESM build inlines undici's CommonJS module into a chunk whose namespace carries it underdefaultalone, soAgentwasundefinedand theTypeErrorfrom constructing it was reported as a runtime incapable of pinning.The namespace is now normalized before the transport is read off it, which also covers a consumer that bundles just-bash further.
#336
d97425dThanks @trieloff! - Stop command groups, function bodies andevalfrom rewinding stdin they never replaced, so{ { read a; }; read b; }givesbthe second line instead of replaying the first.#348
1a7940dThanks @privatenumber! - Reject unsupported command-leading reserved words in every parser context instead of discarding them or executing them as simple commands. Unknown command AST nodes now fail explicitly instead of returning a successful result.#345
2208a34Thanks @privatenumber! - Restore command groups and subshells after the process-substitution and stdin-ownership changes were combined without forwarding ownership through inner command dispatch.#336
d97425dThanks @trieloff! - Apply output redirections attached towhileanduntilloops.while true; do echo x; break; done >/dev/nullno longer leaks its output to the caller, and> file,>>,2>,2>&1,&>and>|now behave on loops the way they already did onforandcase.untilloops also gained the input-redirection handlingwhileloops already had, sountil ! read l; do ...; done < filereads from the file. A loop now only restores stdin it owns, so reading inside a loop no longer rewinds an enclosing group's read position:printf 'a\nb\n' | { while read x; do break; done; read y; }seesy=b.#328
65dafd5Thanks @trieloff! - Stop pipelines from draining the enclosing shell's stdin, sowhile read …; do … | …; done < fileruns once per line again.#349
be55fecThanks @privatenumber! - Process redirections through policy-driven transactions that preserve Bash ordering, descriptor lifetimes, persistentexecroutes, compound-command stdin, control-flow output routing, and shared read-write descriptor positions without duplicate expansion or opening.#338
19a02c2Thanks @mutewinter! - sqlite3: report failed statements on stderr and exit non-zero without-bailA statement that failed was written to stdout as
Error: ...and the command still exited0unless-bailwas passed. Realsqlite3writes the error to stderr and exits1in either mode;-bailonly decides whether the remaining statements still run.Two consequences for callers:
sqlite3 db "SELECT ..." > out.csvsilently wrote the error text into the data file, andsqlite3 db "..." && next-steprannext-stepafter the query had failed, so a shell script could not detect a bad query without opting into-bailand losing the ability to see later statements.Errors now accumulate on stderr in statement order and the exit status is
1whenever any statement failed. Successful runs are unchanged,-bailstill stops at the first failure, and the partial stdout produced before a failure is still emitted. Writeback of a partially-successful script is also unchanged.#360
1fbde34Thanks @privatenumber! - Preserve whether a here-document ended at its delimiter or at end-of-input. Unterminated final body lines now receive Bash's trailing newline, backslash-newline continuations are removed during expansion, and serialization rejects unterminated documents rather than manufacturing a closing delimiter.@just-bash/executor@4.0.0
Patch Changes
bd1df37,abb904b,4f9bdec,31d247f,d97425d,1a7940d,2208a34,47f604a,d97425d,d97425d,6680247,65dafd5,be55fec,19a02c2,1fbde34,edc7f2f,eaedb5b]:executor-tools-example@1.0.8
Patch Changes
bd1df37,abb904b,4f9bdec,31d247f,d97425d,1a7940d,2208a34,47f604a,d97425d,d97425d,6680247,65dafd5,be55fec,19a02c2,1fbde34,edc7f2f,eaedb5b]: