Releases: google/emboss
Releases · google/emboss
v2023.0622.090004
Fix error message printing in `emboss_front_end.py`. (#91)
v2023.0525.204127
Design Sketch for String Support (#82) Add a design sketch for string support in Emboss.
v2023.0518.164408
Fix header_generator_test (#88) * Fix header_generator_test Due to a missing `unittest.main()` call, the header_generator_test was not actually running any tests when run with bazel/run directly. However, the failure was noticed by `python -m unittest discover`. Fixed the header_generator_test in the following ways: - Import test_util (tests failed due to missing import). - Change attribute_checker.normalize_and_verify to header_generator.generate_header. - Remove unused imports. - Make appropriate BUILD changes. - Add unittest.main() call so that unit tests are run. Additionally, this change adds a (blank) __init__.py to compiler/ and compiler/util/ so that they are importable by the unittest module. This means that running `python -m unittest discover -p '*_test.py'` from the main emboss repository should run all python tests in the compiler - and could be a good sanity check to make sure all python tests pass, even when `bazel test compiler/...` could miss tests (not declared in BUILD or missing the unittest.main() call). * Move front_end/test_util to util/test_util
v2023.0517.231226
Add attributes to enum values (#86) * Add attributes to enum values As of this change, the grammar allows attributes on enum values, either inline or indented in the body, the same as fields. Additionally, this change updates the formatter and grammar documentation to account for this change. * Check attributes of enum values This ensures that enum values are checked during attribute verification. Since currently there are no non-backend attributes for enum values, having any (non-backend) attribute at all will produce an error.
v2023.0511.224246
Add design for alternate enum cases (#83) * Add design for alternate enum cases * Fix quotes in doc example * Added a future work section
v2023.0502.065523
Factor back-end attribute checking into the back end. (#80) Factor back-end attribute checking into the back end. This change splits up `front_end/attribute_checker.py`, moving the generic parts to a new file `util/attribute_util.py`, and moving the back-end-specific parts to `back_end/cpp/header_generator.py`. Some tests from `front_end/attribute_checker_test.py` were moved to a new test suite, `header_generator_test.py`. There should probably be a `util/attribute_checker_test.py`, but for now the old tests provide sufficient coverage. As a result of moving some attribute checking into the back end, `generate_header()` can now return errors. A future change should convert some of the `assert` statements in the same file into error returns. In order for the `emboss_codegen_cpp.py` driver to properly display errors, the original source code of the `.emb` is now included verbatim in the IR, increasing the IR size by about 3%. This change does still enforce some minimal checking of back end attributes: the back end must be listed in the new `[expected_back_ends]` attribute (default value `"cpp"`), or it is considered to be an error. This change does not document the `[expected_back_ends]` attribute because it is not currently useful for end users.
v2023.0403.201622
Merge pull request #79 from reventlov/fix_traverse_ir_test Fix `traverse_ir_test` by using `varkw` instead of `kwonlyargs`.
v2023.0322.212832
Merge pull request #81 from reventlov/import_ir Switch `emboss_cc_library` to use real Starlark rules.
v2023.0309.011051
Merge pull request #77 from AnthonyDiGirolamo/py311fix Fix Python 3.11 inspect usage
v2023.0304.041958
Merge pull request #74 from reventlov/division_doc Add design sketch for division operator.