Releases: bash-bastion/bake
Releases · bash-bastion/bake
Release list
v1.6.0
Features
- The stacktrace is no longer printed by default
- This change was made because most Bakefiles are small; thus, the sources of script-errors are mostly self-evident and the stacktrace only makes it harder to see the error that really matters
Fixes
bake.cfgnow errors when unexpected arguments and values are passed- When executing tasks manually, the current directory is now switched to
$BAKE_ROOT(if the optionpedantic-task-cdis set toyes)- This might be the default later, but for now it's hidden behind an option because it uses the
DEBUGtrap. It feels dirty and slow, but that is probably not the case
- This might be the default later, but for now it's hidden behind an option because it uses the
- The exit code when a script fails is now included in the "Your Bakefile failed" string
- Miscellaneous documentation improvements
v1.5.1
Fixes
- Deprecated function
bake.assert_nonemptyworks in the same way as it did inv1.5.1(a fix was made to pass positional parameters correctly with$@) - Both
bake.assert_nonemptyandbake.assert_not_emptynow work with variables calledvariableand__variable
v1.5.0
Features
- Deprecate
bake.assert_nonemptyin favor of the newbake.assert_not_emptyfunction. As this is a stable release (1.0.0), I'll keep the older version for several releases until it is removed bake.*functions have moved to the top of the./bakefile for easier reading (if forgot the function names)
Fixes
- On terminals without color and with
NO_COLORenabled, execution should not unexpectedly terminate
v1.4.0
Features
- Add
-hflag to show help - Add ability to disable stacktrace with the new
bake.cfgfunction (call it ininit()to affect all tasks) - Enable setting variables just like make (
bake CC=gcc build)
Fixes
- Once again tweaked the stacktrace to be more friendly. This is likely the last time I do it
- General improvements
v1.3.0
Features
-
No longer set
nullglobshopt option- (this reduces bugs and unintended side effects)
-
Stacktrace now prints with the filenames in the correct order
v1.2.0
Features
- Optional
-fflag to specify Bakefile location - Execute
init()function (if it exists), which passes the task name as the first positional parameter
Fixes
- Improved printing, output messages
v1.1.0
A few small improvements in this release
Fixes
- Stacktrace print no longer shows the trap error handler
Before:
Error (bake): Your 'Bakefile.sh' did not exit successfully
Stacktrace:
-> bake:52 __bake_print_stacktrace()
-> bake:17 __bake_trap_err()
-> Bakefile.sh:235 task.fail()
-> bake:244 main()After:
Error (bake): Your 'Bakefile.sh' did not exit successfully
Stacktrace:
-> Bakefile.sh:235 task.fail()
-> bake:244 __bake_main()execis now used to launch the./bakefile
v1.0.0
First full release! This release focuses on polish and consistency. I'm super happy with the state of bake now - so much so that I'm using it with nearly every nearly single project I make
Features
- Function names now begin with
bake(BREAKING CHANGE)- This was done so it was easier to differentiate between user functions and built-in ones provided by bake. I don't expect any more breaking changes with the built-in utility functions
- Pretty console output sent to standard error
- This makes piping easier (as long as
|is used instead of&|)
- This makes piping easier (as long as
Fixes
- Running bake with
./bakenow works (previouslyBAKE_ROOTwould have been undefined in this case) - Errors are printed in a slightly nicer format
v0.2.1
Fixes
- Package name in
basalt.tomlnow matches the project name,bake
v0.2.0
Features
The main feature being, the code actually works! This essentially implements everything described in ./README.md. I don't really expect anything else to be added, as this super minimal app is feature complete