Skip to content

Add ? guard sigil#2547

Merged
casey merged 13 commits intomasterfrom
guards
Mar 13, 2026
Merged

Add ? guard sigil#2547
casey merged 13 commits intomasterfrom
guards

Conversation

@casey
Copy link
Copy Markdown
Owner

@casey casey commented Dec 23, 2024

Closes #2544.

This is new weird syntax, which I am quite fond of, but I know other people may not like semantic line noise as much as I do, so going to let this sit for a few days to see what people think before merging.

@liquidaty
Copy link
Copy Markdown

I like it!

@torinthiel
Copy link
Copy Markdown

torinthiel commented Jan 15, 2025

How does that interact with shebang recepies?

@casey
Copy link
Copy Markdown
Owner Author

casey commented Jan 16, 2025

? couldn't be used in shebang recipes, since they aren't evaluated line-by-line. However, shebang recipes, since they are normal scripts, would have better facilities for stopping the script without an error if something fails, so they don't really need it.

@casey casey merged commit c907cfa into master Mar 13, 2026
6 checks passed
@casey casey deleted the guards branch March 13, 2026 04:24
@casey casey mentioned this pull request Mar 13, 2026
renovate Bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 15, 2026
##### [\`1.47.0\`](https://github.com/casey/just/blob/HEAD/CHANGELOG.md#1470---2026-03-14)

##### Added

- Add lazy evaluation setting ([#3083](casey/just#3083) by [casey](https://github.com/casey))
- Add guard sigil `?` ([#2547](casey/just#2547) by [casey](https://github.com/casey))
- Add `--group` flag to filter `--list` output by group ([#3117](casey/just#3117) by [terror](https://github.com/terror))
- Add attributes for DragonFly BSD, FreeBSD, and NetBSD ([#3115](casey/just#3115) by [jakewilliami](https://github.com/jakewilliami))
- Add `[env(NAME, VALUE)` recipe attribute ([#2957](casey/just#2957) by [neunenak](https://github.com/neunenak))

##### Changed

- Make `--timestamp` print timestamps unconditionally ([#3114](casey/just#3114) by [casey](https://github.com/casey))
- Print `--timestamps` with script recipes ([#3050](casey/just#3050) by [casey](https://github.com/casey))
- `[private]` modules are excluded from `--list` output ([#2889](casey/just#2889) by [Scott-Guest](https://github.com/Scott-Guest))

##### Misc

- Fix readme typo ([#3122](casey/just#3122) by [Rohan5commit](https://github.com/Rohan5commit))
- Move choose and run into match statement ([#3120](casey/just#3120) by [casey](https://github.com/casey))
- Add uv install instructions to readme ([#3062](casey/just#3062) by [npikall](https://github.com/npikall))
- Suppress error when --choose is cancelled by user ([#3098](casey/just#3098) by [cobyfrombrooklyn-bot](https://github.com/cobyfrombrooklyn-bot))
- Test formatting justfile with undefined variable succeeds ([#3110](casey/just#3110) by [casey](https://github.com/casey))
- Format without compiling ([#3103](casey/just#3103) by [terror](https://github.com/terror))
- Fix Gentoo installation instructions ([#3085](casey/just#3085) by [DarthGandalf](https://github.com/DarthGandalf))
- Deny unreachable pub ([#3080](casey/just#3080) by [casey](https://github.com/casey))
- Fix readme typo ([#3079](casey/just#3079) by [pvinis](https://github.com/pvinis))
- Include blank chapters in book ([#3076](casey/just#3076) by [casey](https://github.com/casey))
- Clean up build script ([#3078](casey/just#3078) by [casey](https://github.com/casey))
- Increase stack size on Windows ([#3077](casey/just#3077) by [casey](https://github.com/casey))
- Fix readme typo ([#3066](casey/just#3066) by [kenden](https://github.com/kenden))
- Remove dependency on executable-path ([#3058](casey/just#3058) by [casey](https://github.com/casey))
- Fix typos ([#3056](casey/just#3056) by [galenseilis](https://github.com/galenseilis))
- Avoid conditional compilation in integration tests ([#3055](casey/just#3055) by [casey](https://github.com/casey))
- Assert exit status last in `Test` builder ([#3054](casey/just#3054) by [casey](https://github.com/casey))
- Remove makedeb/MPR installation instructions ([#3053](casey/just#3053) by [Chengings](https://github.com/Chengings))
- Handle errors when checking for files ([#3051](casey/just#3051) by [casey](https://github.com/casey))
renovate Bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 15, 2026
##### [\`1.47.0\`](https://github.com/casey/just/blob/HEAD/CHANGELOG.md#1470---2026-03-14)

##### Added

- Add lazy evaluation setting ([#3083](casey/just#3083) by [casey](https://github.com/casey))
- Add guard sigil `?` ([#2547](casey/just#2547) by [casey](https://github.com/casey))
- Add `--group` flag to filter `--list` output by group ([#3117](casey/just#3117) by [terror](https://github.com/terror))
- Add attributes for DragonFly BSD, FreeBSD, and NetBSD ([#3115](casey/just#3115) by [jakewilliami](https://github.com/jakewilliami))
- Add `[env(NAME, VALUE)` recipe attribute ([#2957](casey/just#2957) by [neunenak](https://github.com/neunenak))

##### Changed

- Make `--timestamp` print timestamps unconditionally ([#3114](casey/just#3114) by [casey](https://github.com/casey))
- Print `--timestamps` with script recipes ([#3050](casey/just#3050) by [casey](https://github.com/casey))
- `[private]` modules are excluded from `--list` output ([#2889](casey/just#2889) by [Scott-Guest](https://github.com/Scott-Guest))

##### Misc

- Fix readme typo ([#3122](casey/just#3122) by [Rohan5commit](https://github.com/Rohan5commit))
- Move choose and run into match statement ([#3120](casey/just#3120) by [casey](https://github.com/casey))
- Add uv install instructions to readme ([#3062](casey/just#3062) by [npikall](https://github.com/npikall))
- Suppress error when --choose is cancelled by user ([#3098](casey/just#3098) by [cobyfrombrooklyn-bot](https://github.com/cobyfrombrooklyn-bot))
- Test formatting justfile with undefined variable succeeds ([#3110](casey/just#3110) by [casey](https://github.com/casey))
- Format without compiling ([#3103](casey/just#3103) by [terror](https://github.com/terror))
- Fix Gentoo installation instructions ([#3085](casey/just#3085) by [DarthGandalf](https://github.com/DarthGandalf))
- Deny unreachable pub ([#3080](casey/just#3080) by [casey](https://github.com/casey))
- Fix readme typo ([#3079](casey/just#3079) by [pvinis](https://github.com/pvinis))
- Include blank chapters in book ([#3076](casey/just#3076) by [casey](https://github.com/casey))
- Clean up build script ([#3078](casey/just#3078) by [casey](https://github.com/casey))
- Increase stack size on Windows ([#3077](casey/just#3077) by [casey](https://github.com/casey))
- Fix readme typo ([#3066](casey/just#3066) by [kenden](https://github.com/kenden))
- Remove dependency on executable-path ([#3058](casey/just#3058) by [casey](https://github.com/casey))
- Fix typos ([#3056](casey/just#3056) by [galenseilis](https://github.com/galenseilis))
- Avoid conditional compilation in integration tests ([#3055](casey/just#3055) by [casey](https://github.com/casey))
- Assert exit status last in `Test` builder ([#3054](casey/just#3054) by [casey](https://github.com/casey))
- Remove makedeb/MPR installation instructions ([#3053](casey/just#3053) by [Chengings](https://github.com/Chengings))
- Handle errors when checking for files ([#3051](casey/just#3051) by [casey](https://github.com/casey))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Guard sigil

3 participants