Changelog
The latest releases of BAML.
- Canary
Generic parameters declared with an intersection bound, T extends A & B, now enforce every interface in the intersection. Previously only the first bound was surfaced, so the second and later interfaces were accepted at the declaration but never actually applied. All interfaces in the intersection are now enforced, and a bound member can be reached through any of them. Code that compiled before because an argument only satisfied the first bound may now fail to type-check, so verify your intersection-bounded generics still pass.
- Canary
No predecessor release, commit log, or file diff was available for this version, so there are no changes to describe. This is the earliest tracked release on the engine channel.
- Canary
No predecessor release, commit log, or file diff is available for this version, so there are no changes to report. This is either the oldest release recorded on the engine channel or the comparison lookup failed.
- Canary
The bitwise NOT operator ~ now actually computes a bitwise complement. Previously it was a silent identity: ~x returned x unchanged (B-766).
- Canary
google-ai clients now accept provider options through a new GoogleAiOptions block and can delegate to the Vertex AI backend when configured for Google Cloud.
- Canary
google-ai clients now accept a provider-options block, and a retry_policy with missing delay fields no longer crashes at runtime.
- Canary
The baml.math namespace is gone. Its aggregates are now methods on float[], so baml.math.mean(xs) and baml.math.median(xs) become xs.mean() and xs.median(), matching the existing xs.sum(). If your code called baml.math.*, you must update the call sites.
- Canary
This is the earliest canary release on record, with no predecessor to diff against and no commit log available. There is nothing concrete to report about what changed in this build. Consult the corresponding release tag or the stable changelog for the substantive changes in this line.
- Canary
The baml.math namespace has been removed. The aggregate free functions baml.math.sum, baml.math.mean, and baml.math.median no longer exist. mean and median are now methods on float[], alongside the existing sum, so rewrite baml.math.mean(xs) as xs.mean(). baml.math.trunc is also gone from the public surface; prefer the throwing float.itrunc() or the float-returning float.trunc().
- Canary
This is the oldest release recorded on the canary channel, so there is no predecessor to compare against and no commit log or file diff was available. No user-visible changes can be described from the provided context.
- Canary
The baml.math namespace no longer exists. Its aggregates moved onto numeric-array types, so baml.math.mean(xs) and baml.math.median(xs) are now the methods xs.mean() and xs.median(), and baml.math.sum(xs) is xs.sum(). This channel also makes baml playground usable over SSH tunnels.
- Canary
The BAML runtime package is renamed from baml_core to baml_bridge. Update your install and dependency commands before upgrading, because the old package names no longer resolve.
- Canary
Backtick string literals arrive with interpolation, escape handling, and multi-line auto-dedent, alongside a batch of new stdlib interfaces and stricter compile-time checks.
- Canary
No commit log or file diff was available for this release, so there are no user-visible changes to report. If you need details on what shipped in 0.223.0, consult the release tag directly.
- Canary
Array.filter and Array.remove_at are now part of the standard library, and array iterators are lazy, so filter and map chains do no work until you collect() them.
- Canary
0.12.0 lands a concurrency model built on spawn and await, several new standard library namespaces, and a wave of language and tooling fixes. Highlights for code you write:
- Canary
This canary build of the BAML toolchain has no commits or file changes relative to its predecessor on the canary channel. There is nothing user-visible to report.
- Canary
This canary adds three CLI commands and cleans up the help that the wrapper presents.