Skip to content

Releases: hyperupcall/bake

v1.6.0

18 Mar 01:14
v1.6.0
63efada
Compare
Choose a tag to compare

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.cfg now errors when unexpected arguments and values are passed
  • When executing tasks manually, the current directory is now switched to $BAKE_ROOT (if the option pedantic-task-cd is set to yes)
    • This might be the default later, but for now it's hidden behind an option because it uses the DEBUG trap. It feels dirty and slow, but that is probably not the case
  • The exit code when a script fails is now included in the "Your Bakefile failed" string
  • Miscellaneous documentation improvements

v1.5.1

19 Feb 21:07
v1.5.1
de8c9bf
Compare
Choose a tag to compare

Fixes

  • Deprecated function bake.assert_nonempty works in the same way as it did in v1.5.1 (a fix was made to pass positional parameters correctly with $@)
  • Both bake.assert_nonempty and bake.assert_not_empty now work with variables called variable and __variable

v1.5.0

19 Feb 20:59
v1.5.0
7c9d56f
Compare
Choose a tag to compare

Features

  • Deprecate bake.assert_nonempty in favor of the new bake.assert_not_empty function. 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 ./bake file for easier reading (if forgot the function names)

Fixes

  • On terminals without color and with NO_COLOR enabled, execution should not unexpectedly terminate

v1.4.0

10 Feb 11:30
v1.4.0
5b37fec
Compare
Choose a tag to compare

Features

  • Add -h flag to show help
  • Add ability to disable stacktrace with the new bake.cfg function (call it in init() 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

02 Feb 04:56
v1.3.0
801f0dd
Compare
Choose a tag to compare

Features

  • No longer set nullglob shopt option

    • (this reduces bugs and unintended side effects)
  • Stacktrace now prints with the filenames in the correct order

v1.2.0

26 Jan 09:46
v1.2.0
211e9e6
Compare
Choose a tag to compare

Features

  • Optional -f flag 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

20 Jan 09:02
v1.1.0
4c75382
Compare
Choose a tag to compare

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()
  • exec is now used to launch the ./bake file

v1.0.0

05 Jan 12:13
v1.0.0
4d0831c
Compare
Choose a tag to compare

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 &|)

Fixes

  • Running bake with ./bake now works (previously BAKE_ROOT would have been undefined in this case)
  • Errors are printed in a slightly nicer format

v0.2.1

23 Dec 10:17
v0.2.1
a38c2c0
Compare
Choose a tag to compare

Fixes

  • Package name in basalt.toml now matches the project name, bake

v0.2.0

23 Dec 10:13
v0.2.0
61c8cd5
Compare
Choose a tag to compare

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