NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #3191 most downloaded on PyPI
Last release 2 months ago
04 Aug 2026
Release timing varies
gaps range from 8 days to 2 months
Nearly every release is documented
notes for 33 of 33 stable releases
Nothing withdrawn
no release was ever pulled
2 years old
33 releases · first in 2024
One column per month.
Surround interoplation expressions with spaces when formatting ( #3685 by casey )
1.58.0 Latest
Latest
Compare
Pass arguments to cmd.exe without escaping ( #3636 by casey )
cmd.exe without escaping (#3636 by casey)split('') splits into characters (#3650 by casey)[env] variables visible to shell() invocations (#3631 by casey)- (#3608 by casey)-= or --= (#3607 by casey)choose() regardless of count (#3605 by casey)[arg(flag)] with [arg(pattern)] (#3602 by casey)dotenv-command in root module (#3643 by casey).. (#3641 by casey)[arg(min)] greater than zero cannot be default (#3639 by casey)--allow-missing (#3601 by casey)len() function (#3663 by casey)else if to grammar (#3667 by casey)--evaluate (#3657 by casey)--show and --usage (#3649 by casey)--completions (#3642 by casey)--show and --usage (#3632 by casey)--no-highlight when echoing script recipes (#3630 by casey)--groups (#3622 by casey)--global-justfile (#3621 by casey)NotFound during fallback (#3617 by casey)--evaluate paths (#3613 by casey)[default] attribute (#3610 by casey)--choose (#3606 by casey)canonicalize() error message (#3604 by casey)Deprecate set windows-shell ( #3536 by casey )
shell() commands during dry run (#3588 by casey)--show (#3578 by casey)[cache] expressions (#3573 by casey)eager keyword in --dump and --fmt (#3565 by casey)[env] variables to recipe bodies (#3566 by casey)multiple in dump (#3562 by casey)--evaluate padding (#3561 by casey)--usage (#3559 by casey)is_dependency() in [confirm] expressions (#3558 by casey)[doc] attributes (#3547 by casey)path_exists('') return false (#3570 by casey)set ignore-comments only apply to shell recipes (#3544 by casey)!include error (#3541 by casey)[doc] to be const expression (#3516 by casey)--show, --list, and --usage (#3580 by casey)num_jobs() function (#3537 by casey)--jobs option to limit parallelism (#3531 by casey)indentation setting (#3530 by casey)[arg(min)] (#3524 by casey)[arg(max)] (#3522 by casey)ExpressionContext with .into() (#3590 by casey)ListEntry (#3583 by casey)[arg(min, max)] description in readme (#3572 by casey)Recipe::group_arguments() (#3560 by casey)set windows-shell (#3536 by casey)[arg] attribute construction into helper method (#3525 by casey)Fix panic when empty path is passed to --show and --usage ( #3511 by casey )
Fix forwarded dependency flag value ( #3489 by casey )
[arg(pattern)] to be a list (#3484 by casey)[arg(help)] to be expression (#3483 by casey)[arg(pattern)] to be expression (#3482 by casey)style() (#3503 by casey)-F for --dotenv-filename (#3498 by casey)just_version() function (#3497 by casey)[arg(multiple)] (#3493 by casey)[arg(short)] to first character of parameter name (#3486 by casey)style() (#3479 by casey)style() function (#3478 by casey)set minimum-version (#3477 by casey)assert_eval_eq in tests (#3499 by casey)switch.apply() (#3491 by casey)[arg(help)] may be a list (#3485 by casey)Analyzer (#3481 by casey)ConstEvalError (#3480 by casey)ModuleAlias (#3475 by casey)Test::write() strings (#3469 by casey)Count (#3467 by casey)Forbid duplicate attribute keys ( #3454 by casey )
--dotenv-command multiple times (#3445 by casey)[arg] value to be expression (#3429 by casey)[continue] attribute (#3442 by casey)--dotenv-command and set dotenv-command (#3441 by casey)--no-cache flag (#3463 by casey)just --clean (#3462 by casey)just --clean instructions to readme (#3461 by casey)--clean by recipe and module path (#3460 by casey)--clean subcommand for clearing recipe cache (#3459 by casey)AttributeDiscriminant to AttributeKind (#3464 by casey)Environment struct (#3450 by casey)Test::no_justfile() (#3449 by casey)UnstableFeature enum (#3448 by casey)ctrl consistently (#3443 by casey)Local Variables: block from justfile (#3432 by casey)Add recipe_name() function ( #3366 by casey )
assert() message (#3423 by casey)[arg] long key when formatting (#3397 by casey)split() function (#3420 by casey)which() require set lists (#3418 by casey)env() functions work with lists (#3416 by casey)+ and / work with lists (#3415 by casey)=~ and !~ (#3414 by casey)--dotenv-filename and --dotenv-path options (#3413 by casey).env files (#3412 by casey)[env] work with lists (#3409 by casey)assert() and [confirm] messages (#3408 by casey)assert(condition) evaluates to condition (#3405 by casey)assert() evaluate to "true" when set lists is enabled (#3404 by casey)=~ and !~ work with lists (#3403 by casey)if without else evalutes to [] when false (#3401 by casey)!= and == (#3402 by casey)flag [arg] attribute (#3398 by casey)show() require set lists (#3392 by casey)bool() function (#3391 by casey)! (#3389 by casey)show() function (#3383 by casey)--evaluate (#3382 by casey)append() and prepend() over lists (#3375 by casey)absolute_path() over lists (#3374 by casey)set lists (#3372 by casey)[arg] attribute examples in readme (#3422 by casey)[env] and [working-directory] string context errors (#3411 by casey)[parallel] with mapped dependencies (#3399 by casey)StringResult and ValueResult instead of FunctionResult (#3396 by casey)Lexer::lex_choices() (#3390 by casey)summary module (#3385 by casey)show() and --evaluate in tests (#3384 by casey)rule110 recipe to demo group (#3368 by casey)--list (#3367 by casey)is_dependency to defined function evaluators (#3365 by casey)value consistently in functions (#3364 by casey)Add [shell] attribute to override default-script setting ( #3359 by casey )
[shell] attribute to override default-script setting (#3359 by casey)default-script setting (#3354 by casey)--default-list flag (#3350 by casey)default-list setting (#3337 by casey)--list output (#3346 by casey)Add no-cd setting ( #2981 by hans-d )
[env] attribute to take expressions (#3329 by casey)[working-directory] (#3326 by casey)--justfile - (#3325 by casey)parent_directory() of bare filename return . (#3313 by casey)[env] override module-level exports (#3312 by casey)cargo-limit commands in justfile (#3331 by casey)Filter --choose by --group ( #3298 by casey )
--choose by --group (#3298 by casey)[android] recipe attribute (#2884 by duncanawoods)module_path() function (#3270 by casey)[doc] attribute (#3275 by casey)--fmt subcommand (#3301 by casey):: on last argument (#3300 by casey)module_path field in JSON (#3288 by casey)read() description (#3295 by casey)assert() in readme (#3279 by casey)--evaluate-format shell (#3278 by casey)set no-exit-message and [exit-message] (#3269 by casey)Add --time to print recipe execution time (#3099 by GeorgeLS)
--time to print recipe execution time (#3099 by GeorgeLS)--complete-aliases (#3235 by casey)--justfile-name to configure justfile filename (#3234 by casey)runtime_directory() function (#3226 by barskern)--evaluate-format (#3221 by casey)--evaluate (#3219 by casey)--indentation (#3215 by casey)module_file() and module_directory() to readme (#2965 by cspotcode).env from special files (#3250 by casey)evaluate_target to evaluation_target (#3220 by casey)semver_matches() returns strings (#3212 by casey)[no-exit-message] (#3200 by imp-joshi)Fix bash completion of command lines containing : (#3205 by casey)
: (#3205 by casey)--set missing value error message interpolation (#3198 by cuiweixie)#compdef to zsh completion script (#3197 by casey)Build docker images (#3174 by casey)
--usage (#3172 by casey)--json as synonym for --dump --dump-format json (#3143 by casey)which() and require() respect PATHEXT on Windows (#3144 by casey)Block on running parallel dependencies (#3139 by casey)
Add lazy evaluation setting (#3083 by casey)
? (#2547 by casey)--group flag to filter --list output by group (#3117 by terror)[env(NAME, VALUE) recipe attribute (#2957 by neunenak)--timestamp print timestamps unconditionally (#3114 by casey)--timestamps with script recipes (#3050 by casey)[private] modules are excluded from --list output (#2889 by Scott-Guest)Test builder (#3054 by casey)Don't leak signal handler pipe into child processes (#3035 by rjmac)
long to default to to parameter name (#3041 by casey)working-directory (#3033 by casey)-x options (#3028 by casey)--long options (#3026 by casey)Allow requiring recipe arguments to match regular expression patterns (#3000 by casey)
Properly close format string delimiter (#2997 by casey)
Add f'{format}' strings (#2985 by casey)
{{…}} for format strings (#2993 by casey)[script] attribute (#2988 by casey)softprops/action-gh-release to 2.5.0 (#2979 by app/dependabot)just-lsp in readme (#2846 by terror)just --list submodule example in readme (#2973 by neodejack)actions/checkout (#2969 by app/dependabot)Only initialize signal handler once (#2953 by casey)
env() usage in readme (#2936 by laniakea64)Add [default] attribute (#2878 by casey)
[default] attribute (#2878 by casey)--ceiling when looking for justfile (#2870 by casey)softprops/action-gh-release to 2.3.3 (#2879 by app/dependabot)actions/checkout to v5 (#2864 by app/dependabot)PATH_SEP value in readme (#2859 by casey)just-mcp in readme (#2843 by casey)[parallel] attribute in parallelism section (#2837 by casey)Run imported recipes in correct scope (#2835 by casey)
Run recipes from submodules in correct directory (#2829 by eisbaw)
Fix scope lookup for nested submodules (#2820 by casey)
Export variables to submodules (#2816 by casey)
Use correct scope when running recipes in submodules (#2810 by casey)
[parallel] attribute to run dependencies in parallel (#2803 by casey)cygpath with --cygpath and $JUST_CYGPATH (#2804 by hyrious)install.sh if available (#2676 by jpeeler)[metadata] recipe attribute (#2794 by wiktor-k)Treat SIGINFO as non-fatal (#2788 by casey)
dotenv-override setting (#2785 by Lun4m)PATH_SEP and PATH_VAR_SEP constants (#2679 by casey)--tempdir command-line option (#2798 by casey)arkade to readme (#2700 by rgee0)#[ignore] attributes (#2797 by casey)extractions/setup-just version in readme (#2735 by esadek)return in Recipe::confirm (#2789 by casey)mise to alternatives in readem (#2758 by koppor)softprops/action-gh-release (#2781 by app/dependabot)default as name of --init justfile default recipe (#2777 by casey)just.systems link to --init justfile (#2776 by casey)kitchen-sink.just comment (#2738 by azarmadr)softprops/action-gh-release (#2716 by app/dependabot)-S in uv example (#2696 by rmoorman)--request without parsing justfile (#2683 by casey)Allow the target of aliases to be recipes in submodules (#2632 by corvusrabus)
--list-submodules require --list (#2622 by casey)test! macro from readme (#2648 by casey)Test struct instead of test! macro (#2642 by casey)Namepaths are non-empty (#2638 by casey)Add which() and require() for finding executables (#2440 by 0xzhzh)
which() and require() for finding executables (#2440 by 0xzhzh)no-exit-message Setting and [exit-message] attribute (#2568 by ArchieAtkinson)--list with --alias-style (#2342 by marcaddeo)read_to_string(path) function (#2507 by begoon)[private] attribute when formatting assignments (#2592 by casey)if … else if … without superfluous braces (#2573 by casey)! at end-of-file (#2520 by casey)require() (#2594 by casey)trim_*_match functions take subtrings (#2574 by xavdid)softprops/action-gh-release from 2.2.0 to 2.2.1 (#2570 by app/dependabot)quiet setting and fix typos in readme (#2549 by unennhexium)env() instead of env_var*() (#2546 by laniakea64)|| to provide default for empty environment variable (#2545 by casey)Line predicates (#2543 by casey)uv (#2526 by casey)Add [openbsd] recipe attribute (#2497 by vtamara)
[openbsd] recipe attribute (#2497 by vtamara)[working-directory] recipe attribute (#2438 by bcheidemann)--allow-missing to ignore missing recipe and submodule errors (#2460 by R3ZV)--request subcommand for testing (#2498 by casey)Config from ExecutionContext instead of passing separately (#2481 by casey)Add style() function (#2462 by casey)
style() function (#2462 by casey)&& and || operators (#2444 by casey)softprops/action-gh-release (#2471 by app/dependabot)-g to rust-just install instructions (#2459 by gnpaone)set shell is not used for [script] recipes (#2468 by iloveitaly)derivative with derive-where (#2465 by laniakea64)justfile instead of mf on invalid examples in readme (#2447 by casey)shell(…) as an alternative to backticks (#2430 by offby1)-CommandWithArgs instead of -cwa (#2404 by casey)-cwa flag for PowerShell positional arguments (#2403 by casey)unwrap_or when creating relative path in loader (#2400 by casey)Allow default values to use earlier recipe arguments (#2382 by casey)
--one flag to forbid multiple recipes from being invoked on the command line (#2374 by casey)\u{…} (#2360 by laniakea64)--explain flag is passed (#2319 by neunenak)console codeblocks in readme (#2388 by casey)\u{...} (#2371 by laniakea64)--dotenv-path in readme (#2366 by willie).sha256sum files (#2358 by casey)Subcommand::run (#2336 by neunenak)--list output (#2340 by casey)Allow fallback with recipes in submodules (#2329 by casey)
[private] attribute on assignments (#2300 by adsnaider).sha256sum files for release artifacts (#2323 by twm)--help output (#2302 by casey)Your coding agent can read these notes before it upgrades. Set up the MCP server →