All notable changes to Brioche will be documented in this file.
Note that the individual Rust crates within this repo are not considered stable and changes will not be documented in the changelog.
v0.1.3 - 2024-09-27
- Fix Brioche LSP erasing locked download and git ref hashes (#130)
- Fix "failed to move temporary project from registry" error. This occurred due to a race condition when a project tried to be fetched more than once from the registry, e.g. from a dependency shared by multiple other dependencies, like
std
(#131) - Fix (very annoying!) "Request textDocument/diagnostic failed" error from LSP whenever a
.bri
file was first opened (#132)
v0.1.2 - 2024-09-26
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 thebrioche.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 thebrioche.lock
lockfile. This is useful when used with thegitCheckout
function from thegit
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 toBrioche.glob(...)
, but works with existing recipes instead of inputs from the project (#119)
- 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
- 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
- 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
v0.1.1 - 2024-06-09
- Add new TypeScript runtime op to get the version of Brioche (#59). This will allow for updating packages to take advantage of new features without breaking backwards compatibility
- Add new
collect_references
recipe type (#57). This will be used by thestd
package to improve container sizes
- Increase timeouts when fetching from registry from 10s to 120s (#54 by @matklad). This is a workaround due to very slow cold start times seen in some cases when making requests to the registry
- Tweak registry sync rules to avoid downloading unnecessary dependencies (#56). This should drastically reduce the download times during the first-time user experience (especially with some changes to the registry itself)
- Download project files in parallel from registry (#58)
v0.1.0 - 2024-06-02
- Initial release!