Skip to content

0.1.2

Compare
Choose a tag to compare
@kylewlacy kylewlacy released this 26 Sep 09:03
· 10 commits to main since this release
ddf9102

This release includes many minor features and fixes over the last few months, especially focused on unblocking work in the brioche-packages repo. Additionally, this release includes support for the new Brioche.download(...) and Brioche.gitRef(...) recipes, which automatically pin download hashes in the brioche.lock lockfile, meaning you no longer need to find and update the hashes in code by hand!

Standard library

NOTE: These features require both the latest version of Brioche and an appropriate version of the std package. Consult the std changelog for more details

  • Add Brioche.download("..."). The provided URL will be downloaded, and the hash will automatically be recorded in the brioche.lock lockfile (#102)
  • Add Brioche.gitRef({ repository, ref }). The git repository URL will be fetched, and the commit for the corresponding ref (branch or tag name) will be recorded in the brioche.lock lockfile. This is useful when used with the gitCheckout function from the git package (#126)
  • Add std.glob(...) recipe. This takes a directory and some glob patterns, and returns a new directory containing only the contents matching a pattern. This is similar to Brioche.glob(...), but works with existing recipes instead of inputs from the project (#119)

Fixed

  • Fix brioche self-update command. Unfortunately, upgrading from v0.1.1 will still need to be done manually, but auto-updates should work going forward! (#112 by @jaudiger)
  • Fix .unarchive() recipes sometimes not properly baking when unarchiving a tarfile containing long filename entries (#127, with work from #117 by @jaudiger

Changed

  • Update most subcommands to take the --project (-p) or --registry (-r) argument more than once. The command will apply to each project. This applies to the following subcommands:
  • Update brioche fmt to print formatted files (#75 by @jaudiger)
  • Update Process.dependencies recipes to support more flexible env var configurations. Namely, dependencies can now set env vars for fallbacks, in addition to the existing env vars that get appended

Internals

  • Upgrade OpenTelemetry SDK packages. Brioche now uses the conventional OpenTelemetry SDK environment variables for configuration
  • Upgrade Deno Core from v0.201.0 to v0.303.0
  • Update Rust toolchain to v1.81
  • Restructure some internal crates. Some crates that were originally in the main Brioche repository now live in brioche-dev/brioche-runtime-utils