Skip to content

Releases: google/emboss

v2026.0212.185041

12 Feb 18:50
1dc287f

Choose a tag to compare

Integrate Black formatter with Bazel for local development (#244)

fix: Integrate black formatter with Bazel for local development

Adds two bazel run targets for Python code formatting:
- //:black_fix - Reformats Python files in-place
- //:black_check - Checks formatting without modifying files

Resolves Issue #226

v2026.0129.185105

29 Jan 18:51
e24ea8c

Choose a tag to compare

Merge pull request #243 from google/fix-bazel-9-compatibility

Fix Bazel 9 compatibility: add explicit load() for cc_* rules

v2025.1202.230212

02 Dec 23:02
41c1b64

Choose a tag to compare

Merge pull request #201 from reventlov/error_example_generator

Error example generator

v2025.1202.230055

02 Dec 23:00
dee7693

Choose a tag to compare

Merge pull request #202 from reventlov/fix_includes

Fix some #includes

v2025.1003.000719

03 Oct 00:07

Choose a tag to compare

Update repo_token for releases

Update the release workflow to use a new personal access token.

v2025.0204.163557

04 Feb 16:35
2104ce4

Choose a tag to compare

Update deprecated `assertRegexpMatches` to its new name. (#217)

v2025.0203.171022

03 Feb 17:10
5901d12

Choose a tag to compare

Fix ASAN failure in `array.rend()`. (#219)

The iterator constructor used `array[index]` to initialize an internal
cached view (necessary so that `operator->` can return a pointer), which
caused pointer arithmetic overflow when `index` was -1 -- as in the case
of `rend()`.

This change uses a checked `array.at(index)` method to get a null view
when `index` is out of bounds.

I considered changing `array[index]` to return a null view for
out-of-bounds indexes, but user code may be inadvertently relying on
that behavior, so I am leaving it out of this bug fix.

v2024.1221.181843

21 Dec 18:18
1827594

Choose a tag to compare

Handle very large `.emb` files. (#215)

This change switches parse tree handling to use iteration (with an
explicit stack) instead of recursion, which:

*   Allows large (>~1000 entity) `.emb` files to be formatted.
*   Allows very large (>~16k entity) `.emb` files to be compiled.

The difference in sizes in the previous code was due to `module_ir.py`
hackily increasing the recursion limit: while this more or less worked,
it was a little dangerous (it ran the risk of blowing out the C stack,
depending on platform) and only increased the limit.  This change
removes the limit entirely (at least, up to the available memory on the
system).

v2024.1219.234851

19 Dec 23:48
615a955

Choose a tag to compare

Add `alignas` specifier to buffer in explicit alignment test. (#216)

Also update workflow to emit test logs on failure.

v2024.1218.230943

18 Dec 23:09
bb45c18

Choose a tag to compare

Add docs for would-be contributors. (#213)