diff --git a/.release-please-manifest.json b/.release-please-manifest.json index c47e642..666d2e4 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,8 +1,8 @@ { - "crates/oxabl": "0.3.2", - "crates/oxabl_lexer": "0.3.1", - "crates/oxabl_parser": "0.4.0", - "crates/oxabl_ast": "0.4.0", - "crates/oxabl_common": "0.3.0", - "crates/oxabl_codegen": "0.3.0" + "crates/oxabl": "0.4.0", + "crates/oxabl_lexer": "0.4.0", + "crates/oxabl_parser": "0.5.0", + "crates/oxabl_ast": "0.5.0", + "crates/oxabl_common": "0.4.0", + "crates/oxabl_codegen": "0.4.0" } diff --git a/Cargo.lock b/Cargo.lock index 721b879..33cc497 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -777,7 +777,7 @@ checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" [[package]] name = "oxabl" -version = "0.3.2" +version = "0.4.0" dependencies = [ "clap", "indicatif", @@ -792,14 +792,14 @@ dependencies = [ [[package]] name = "oxabl_ast" -version = "0.4.0" +version = "0.5.0" dependencies = [ "rust_decimal", ] [[package]] name = "oxabl_codegen" -version = "0.3.0" +version = "0.4.0" dependencies = [ "scraper", "serde", @@ -809,14 +809,14 @@ dependencies = [ [[package]] name = "oxabl_common" -version = "0.3.0" +version = "0.4.0" dependencies = [ "codspeed-criterion-compat", ] [[package]] name = "oxabl_lexer" -version = "0.3.1" +version = "0.4.0" dependencies = [ "codspeed-criterion-compat", "oxabl_common", @@ -827,7 +827,7 @@ dependencies = [ [[package]] name = "oxabl_parser" -version = "0.4.0" +version = "0.5.0" dependencies = [ "codspeed-criterion-compat", "oxabl_ast", diff --git a/crates/oxabl/CHANGELOG.md b/crates/oxabl/CHANGELOG.md index 91cd322..2e0e0f1 100644 --- a/crates/oxabl/CHANGELOG.md +++ b/crates/oxabl/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +## [0.4.0](https://github.com/oxabl-project/oxabl/compare/oxabl-v0.3.2...oxabl-v0.4.0) (2026-04-11) + + +### Features + +* **cli:** Add codebase validation CLI with `oxabl check` ([c31438c](https://github.com/oxabl-project/oxabl/commit/c31438c730c2aaaa87d6da1e41ad3a28a2c66a57)) +* **parser:** Support LIKE syntax in DEFINE VARIABLE, DEFINE PARAMETER, and VAR ([edf3b84](https://github.com/oxabl-project/oxabl/commit/edf3b8463dc6b32afb564352546b4312877fdcf8)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * oxabl_parser bumped from 0.4.0 to 0.5.0 + * oxabl_lexer bumped from 0.3.1 to 0.4.0 + * oxabl_common bumped from 0.3.0 to 0.4.0 + * oxabl_ast bumped from 0.4.0 to 0.5.0 + ## [0.3.2](https://github.com/oxabl-project/oxabl/compare/oxabl-v0.3.1...oxabl-v0.3.2) (2026-04-04) diff --git a/crates/oxabl/Cargo.toml b/crates/oxabl/Cargo.toml index c967486..2ed62d5 100644 --- a/crates/oxabl/Cargo.toml +++ b/crates/oxabl/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxabl" -version = "0.3.2" +version = "0.4.0" edition = "2024" license = "MIT" description = "High-performance tooling suite for Progress ABL" @@ -11,10 +11,10 @@ name = "oxabl" path = "src/main.rs" [dependencies] -oxabl_parser = { path = "../oxabl_parser", version = "0.4.0" } -oxabl_lexer = { path = "../oxabl_lexer", version = "0.3.1" } -oxabl_common = { path = "../oxabl_common", version = "0.3.0" } -oxabl_ast = { path = "../oxabl_ast", version = "0.4.0" } +oxabl_parser = { path = "../oxabl_parser", version = "0.5.0" } +oxabl_lexer = { path = "../oxabl_lexer", version = "0.4.0" } +oxabl_common = { path = "../oxabl_common", version = "0.4.0" } +oxabl_ast = { path = "../oxabl_ast", version = "0.5.0" } clap = { version = "4", features = ["derive"] } walkdir = "2" indicatif = "0.17" diff --git a/crates/oxabl_ast/CHANGELOG.md b/crates/oxabl_ast/CHANGELOG.md index 71bd3f2..d11a025 100644 --- a/crates/oxabl_ast/CHANGELOG.md +++ b/crates/oxabl_ast/CHANGELOG.md @@ -1,5 +1,34 @@ # Changelog +## [0.5.0](https://github.com/oxabl-project/oxabl/compare/oxabl_ast-v0.4.0...oxabl_ast-v0.5.0) (2026-04-11) + + +### Features + +* **ast:** add dataset/data-source AST types and lexer keywords ([96d0416](https://github.com/oxabl-project/oxabl/commit/96d041669d0b2c4b20d14fe40503b11079e4b345)) +* **parser:** add database manipulation statements ([8428b93](https://github.com/oxabl-project/oxabl/commit/8428b93b8848864fc52ec6f95310184130f7c3a8)) +* **parser:** add database manipulation statements ([404e85c](https://github.com/oxabl-project/oxabl/commit/404e85c91a57f5f7244cb1680f05d4f5ed0bb1e7)) +* **parser:** add dataset and data-source parsing support ([ae26e42](https://github.com/oxabl-project/oxabl/commit/ae26e428db7022c864bde37b877e1f7021ca1b0c)) +* **parser:** add dataset benchmark fixture and apply formatting ([e2510d5](https://github.com/oxabl-project/oxabl/commit/e2510d582b67d7906fde12ba94a91ba341c424c4)) +* **parser:** Add include file reference parsing ([28cba6b](https://github.com/oxabl-project/oxabl/commit/28cba6b250247e2936c3a19e711465145189e7fe)) +* **parser:** add ON trigger and TRIGGER PROCEDURE statement parsing ([0ec08d3](https://github.com/oxabl-project/oxabl/commit/0ec08d30a6f927ff11e54a0cfc2c53c68e8d0af6)) +* **parser:** add ON trigger and TRIGGER PROCEDURE statement parsing ([6dfffdc](https://github.com/oxabl-project/oxabl/commit/6dfffdcac671142290109f13294499ba14e8fac7)) +* **parser:** add OO-ABL support ([5c3b2fb](https://github.com/oxabl-project/oxabl/commit/5c3b2fb9269db4dfeaca7d9d041dd8f9424f8bdf)) +* **parser:** add OO-ABL support (CLASS, METHOD, PROPERTY, INTERFACE) ([f2ec7a5](https://github.com/oxabl-project/oxabl/commit/f2ec7a5587330fd7c7a0909c752c0478e78fae02)) +* **parser:** add preprocessor statement parsing ([a2f82fd](https://github.com/oxabl-project/oxabl/commit/a2f82fd7032dda5fc7c27c3dccead1cf652eec17)) +* **parser:** add preprocessor statement parsing ([eea5606](https://github.com/oxabl-project/oxabl/commit/eea560646d49c24614f9bce123432523781defe1)) +* **parser:** add PUBLISH/SUBSCRIBE/UNSUBSCRIBE and DEFINE EVENT parsing ([4eb3af4](https://github.com/oxabl-project/oxabl/commit/4eb3af451f99bf02512e5799b9c25bfd1d0336e7)) +* **parser:** add PUBLISH/SUBSCRIBE/UNSUBSCRIBE and DEFINE EVENT parsing ([233af8c](https://github.com/oxabl-project/oxabl/commit/233af8ca8df241e00606241a38b8aaed5e86871c)) +* **parser:** add stream and frame parsing ([e959ffd](https://github.com/oxabl-project/oxabl/commit/e959ffd74e5a2459800eb076a4e19547d3b3ae70)) +* **parser:** add stream and frame parsing ([8182d4e](https://github.com/oxabl-project/oxabl/commit/8182d4e1b952d7de365348469b9d69ba2a9e599c)) +* **parser:** Support LIKE syntax in DEFINE VARIABLE, DEFINE PARAMETER, and VAR ([edf3b84](https://github.com/oxabl-project/oxabl/commit/edf3b8463dc6b32afb564352546b4312877fdcf8)) +* **parser:** Support LIKE syntax in DEFINE VARIABLE, DEFINE PARAMETER, and VAR ([dbb1fdf](https://github.com/oxabl-project/oxabl/commit/dbb1fdf325c9dc77ecd89437d74ac2cf03986021)) + + +### Bug Fixes + +* **ast, lexer:** resolved some code breakage from the last merge ([f7b44d3](https://github.com/oxabl-project/oxabl/commit/f7b44d37474515ff00c0865d3a6a462af7966ff8)) + ## [0.4.0](https://github.com/oxabl-project/oxabl/compare/oxabl_ast-v0.3.0...oxabl_ast-v0.4.0) (2026-04-04) diff --git a/crates/oxabl_ast/Cargo.toml b/crates/oxabl_ast/Cargo.toml index 215adbc..a61d42d 100644 --- a/crates/oxabl_ast/Cargo.toml +++ b/crates/oxabl_ast/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxabl_ast" -version = "0.4.0" +version = "0.5.0" edition = "2024" license = "MIT" description = "AST node definitions for the Oxabl ABL parser" diff --git a/crates/oxabl_codegen/CHANGELOG.md b/crates/oxabl_codegen/CHANGELOG.md index 74444a6..e1fea2a 100644 --- a/crates/oxabl_codegen/CHANGELOG.md +++ b/crates/oxabl_codegen/CHANGELOG.md @@ -1,5 +1,21 @@ # Changelog +## [0.4.0](https://github.com/oxabl-project/oxabl/compare/oxabl_codegen-v0.3.0...oxabl_codegen-v0.4.0) (2026-04-11) + + +### Features + +* **parser:** add preprocessor statement parsing ([a2f82fd](https://github.com/oxabl-project/oxabl/commit/a2f82fd7032dda5fc7c27c3dccead1cf652eec17)) +* **parser:** add preprocessor statement parsing ([eea5606](https://github.com/oxabl-project/oxabl/commit/eea560646d49c24614f9bce123432523781defe1)) +* **parser:** add stream and frame parsing ([e959ffd](https://github.com/oxabl-project/oxabl/commit/e959ffd74e5a2459800eb076a4e19547d3b3ae70)) + + +### Performance Improvements + +* **lexer:** eliminate heap allocations in keyword matching ([2fa1b87](https://github.com/oxabl-project/oxabl/commit/2fa1b87f9c7bb37ea3fa699a9e4073a34d8c5226)) +* **lexer:** eliminate heap allocations in keyword matching ([c7553f7](https://github.com/oxabl-project/oxabl/commit/c7553f7d46f0867c43794e7afdd65eb31795953b)) +* **lexer:** use length-dispatched match in match_keyword() ([3a24353](https://github.com/oxabl-project/oxabl/commit/3a243534295d9b3737f056fb107816449ba06c45)) + ## [0.3.0](https://github.com/oxabl-project/oxabl/compare/oxabl_codegen-v0.2.0...oxabl_codegen-v0.3.0) (2026-04-03) diff --git a/crates/oxabl_codegen/Cargo.toml b/crates/oxabl_codegen/Cargo.toml index fd6753c..a889451 100644 --- a/crates/oxabl_codegen/Cargo.toml +++ b/crates/oxabl_codegen/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxabl_codegen" -version = "0.3.0" +version = "0.4.0" edition = "2024" license = "MIT" description = "Code generation tool for Oxabl lexer keywords and atoms" diff --git a/crates/oxabl_common/CHANGELOG.md b/crates/oxabl_common/CHANGELOG.md index fe6acee..9033bfb 100644 --- a/crates/oxabl_common/CHANGELOG.md +++ b/crates/oxabl_common/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.4.0](https://github.com/oxabl-project/oxabl/compare/oxabl_common-v0.3.0...oxabl_common-v0.4.0) (2026-04-11) + + +### Features + +* **bench:** expand benchmark suite to cover parser, lexer scenarios, and source map ([18c6681](https://github.com/oxabl-project/oxabl/commit/18c6681ab28e2097fdff15c647841d95ff49fb51)) +* **bench:** expand benchmark suite to parser, lexer scenarios, and source map ([36abc32](https://github.com/oxabl-project/oxabl/commit/36abc32aebd88514f1fcd203b9da0c9a4eb3d88a)) + ## [0.3.0](https://github.com/oxabl-project/oxabl/compare/oxabl_common-v0.2.0...oxabl_common-v0.3.0) (2026-04-03) diff --git a/crates/oxabl_common/Cargo.toml b/crates/oxabl_common/Cargo.toml index a8da94f..842a1b2 100644 --- a/crates/oxabl_common/Cargo.toml +++ b/crates/oxabl_common/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxabl_common" -version = "0.3.0" +version = "0.4.0" edition = "2024" license = "MIT" description = "Shared utilities for the Oxabl ABL tooling suite" diff --git a/crates/oxabl_lexer/CHANGELOG.md b/crates/oxabl_lexer/CHANGELOG.md index e8f1dd0..6d9301d 100644 --- a/crates/oxabl_lexer/CHANGELOG.md +++ b/crates/oxabl_lexer/CHANGELOG.md @@ -1,5 +1,51 @@ # Changelog +## [0.4.0](https://github.com/oxabl-project/oxabl/compare/oxabl_lexer-v0.3.1...oxabl_lexer-v0.4.0) (2026-04-11) + + +### Features + +* **ast:** add dataset/data-source AST types and lexer keywords ([96d0416](https://github.com/oxabl-project/oxabl/commit/96d041669d0b2c4b20d14fe40503b11079e4b345)) +* **bench:** expand benchmark suite to cover parser, lexer scenarios, and source map ([18c6681](https://github.com/oxabl-project/oxabl/commit/18c6681ab28e2097fdff15c647841d95ff49fb51)) +* **bench:** expand benchmark suite to parser, lexer scenarios, and source map ([36abc32](https://github.com/oxabl-project/oxabl/commit/36abc32aebd88514f1fcd203b9da0c9a4eb3d88a)) +* **lexer:** add OO-ABL keyword Kind variants ([2380ac8](https://github.com/oxabl-project/oxabl/commit/2380ac8b856175931097d9d2703f0b60ba9b7f11)) +* **lexer:** add OO-ABL keyword Kind variants ([c3977f4](https://github.com/oxabl-project/oxabl/commit/c3977f46987e5255766b2c384dc1499cac592364)) +* **parser:** add database manipulation statements ([8428b93](https://github.com/oxabl-project/oxabl/commit/8428b93b8848864fc52ec6f95310184130f7c3a8)) +* **parser:** add database manipulation statements ([404e85c](https://github.com/oxabl-project/oxabl/commit/404e85c91a57f5f7244cb1680f05d4f5ed0bb1e7)) +* **parser:** add dataset and data-source parsing support ([ae26e42](https://github.com/oxabl-project/oxabl/commit/ae26e428db7022c864bde37b877e1f7021ca1b0c)) +* **parser:** add dataset benchmark fixture and apply formatting ([e2510d5](https://github.com/oxabl-project/oxabl/commit/e2510d582b67d7906fde12ba94a91ba341c424c4)) +* **parser:** Add include file reference parsing ([28cba6b](https://github.com/oxabl-project/oxabl/commit/28cba6b250247e2936c3a19e711465145189e7fe)) +* **parser:** add ON trigger and TRIGGER PROCEDURE statement parsing ([0ec08d3](https://github.com/oxabl-project/oxabl/commit/0ec08d30a6f927ff11e54a0cfc2c53c68e8d0af6)) +* **parser:** add ON trigger and TRIGGER PROCEDURE statement parsing ([6dfffdc](https://github.com/oxabl-project/oxabl/commit/6dfffdcac671142290109f13294499ba14e8fac7)) +* **parser:** add OO-ABL support (CLASS, METHOD, PROPERTY, INTERFACE) ([f2ec7a5](https://github.com/oxabl-project/oxabl/commit/f2ec7a5587330fd7c7a0909c752c0478e78fae02)) +* **parser:** add preprocessor statement parsing ([a2f82fd](https://github.com/oxabl-project/oxabl/commit/a2f82fd7032dda5fc7c27c3dccead1cf652eec17)) +* **parser:** add preprocessor statement parsing ([eea5606](https://github.com/oxabl-project/oxabl/commit/eea560646d49c24614f9bce123432523781defe1)) +* **parser:** add PUBLISH/SUBSCRIBE/UNSUBSCRIBE and DEFINE EVENT parsing ([4eb3af4](https://github.com/oxabl-project/oxabl/commit/4eb3af451f99bf02512e5799b9c25bfd1d0336e7)) +* **parser:** add PUBLISH/SUBSCRIBE/UNSUBSCRIBE and DEFINE EVENT parsing ([233af8c](https://github.com/oxabl-project/oxabl/commit/233af8ca8df241e00606241a38b8aaed5e86871c)) +* **parser:** add stream and frame parsing ([e959ffd](https://github.com/oxabl-project/oxabl/commit/e959ffd74e5a2459800eb076a4e19547d3b3ae70)) +* **parser:** add stream and frame parsing ([8182d4e](https://github.com/oxabl-project/oxabl/commit/8182d4e1b952d7de365348469b9d69ba2a9e599c)) + + +### Bug Fixes + +* **ast, lexer:** resolved some code breakage from the last merge ([f7b44d3](https://github.com/oxabl-project/oxabl/commit/f7b44d37474515ff00c0865d3a6a462af7966ff8)) +* **lexer:** Consume ABL translation suffixes (:U, :T) as part of string literals ([962ad7d](https://github.com/oxabl-project/oxabl/commit/962ad7d25bcad7e445680eaa3194c39fdafabe06)) +* **lexer:** Consume ABL translation suffixes (:U, :T) as part of string literals ([af6bdc3](https://github.com/oxabl-project/oxabl/commit/af6bdc3aa1a43dfba36c9e111be2294e16959ed6)) + + +### Performance Improvements + +* **lexer:** eliminate heap allocations in keyword matching ([2fa1b87](https://github.com/oxabl-project/oxabl/commit/2fa1b87f9c7bb37ea3fa699a9e4073a34d8c5226)) +* **lexer:** eliminate heap allocations in keyword matching ([c7553f7](https://github.com/oxabl-project/oxabl/commit/c7553f7d46f0867c43794e7afdd65eb31795953b)) +* **lexer:** use length-dispatched match in match_keyword() ([3a24353](https://github.com/oxabl-project/oxabl/commit/3a243534295d9b3737f056fb107816449ba06c45)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * oxabl_common bumped from 0.3.0 to 0.4.0 + ## [0.3.1](https://github.com/oxabl-project/oxabl/compare/oxabl_lexer-v0.3.0...oxabl_lexer-v0.3.1) (2026-04-03) diff --git a/crates/oxabl_lexer/Cargo.toml b/crates/oxabl_lexer/Cargo.toml index 81bc34a..a0f599a 100644 --- a/crates/oxabl_lexer/Cargo.toml +++ b/crates/oxabl_lexer/Cargo.toml @@ -1,13 +1,13 @@ [package] name = "oxabl_lexer" -version = "0.3.1" +version = "0.4.0" edition = "2024" license = "MIT" description = "Tokenizer for Progress ABL source code" repository = "https://github.com/oxabl-project/oxabl/crates/oxabl_lexer" [dependencies] -oxabl_common = { path = "../oxabl_common", version = "0.3.0" } +oxabl_common = { path = "../oxabl_common", version = "0.4.0" } rust_decimal = "1.40.0" string_cache = "0.9.0" diff --git a/crates/oxabl_parser/CHANGELOG.md b/crates/oxabl_parser/CHANGELOG.md index d7dc088..906bf6b 100644 --- a/crates/oxabl_parser/CHANGELOG.md +++ b/crates/oxabl_parser/CHANGELOG.md @@ -1,5 +1,60 @@ # Changelog +## [0.5.0](https://github.com/oxabl-project/oxabl/compare/oxabl_parser-v0.4.0...oxabl_parser-v0.5.0) (2026-04-11) + + +### Features + +* **ast:** add dataset/data-source AST types and lexer keywords ([96d0416](https://github.com/oxabl-project/oxabl/commit/96d041669d0b2c4b20d14fe40503b11079e4b345)) +* **bench:** expand benchmark suite to cover parser, lexer scenarios, and source map ([18c6681](https://github.com/oxabl-project/oxabl/commit/18c6681ab28e2097fdff15c647841d95ff49fb51)) +* **bench:** expand benchmark suite to parser, lexer scenarios, and source map ([36abc32](https://github.com/oxabl-project/oxabl/commit/36abc32aebd88514f1fcd203b9da0c9a4eb3d88a)) +* **lexer:** add OO-ABL keyword Kind variants ([2380ac8](https://github.com/oxabl-project/oxabl/commit/2380ac8b856175931097d9d2703f0b60ba9b7f11)) +* **lexer:** add OO-ABL keyword Kind variants ([c3977f4](https://github.com/oxabl-project/oxabl/commit/c3977f46987e5255766b2c384dc1499cac592364)) +* **parser:** add database manipulation statements ([8428b93](https://github.com/oxabl-project/oxabl/commit/8428b93b8848864fc52ec6f95310184130f7c3a8)) +* **parser:** add database manipulation statements ([404e85c](https://github.com/oxabl-project/oxabl/commit/404e85c91a57f5f7244cb1680f05d4f5ed0bb1e7)) +* **parser:** add dataset and data-source parsing support ([ae26e42](https://github.com/oxabl-project/oxabl/commit/ae26e428db7022c864bde37b877e1f7021ca1b0c)) +* **parser:** add dataset benchmark fixture and apply formatting ([e2510d5](https://github.com/oxabl-project/oxabl/commit/e2510d582b67d7906fde12ba94a91ba341c424c4)) +* **parser:** add dataset, data-source, and XML/serialize parsing ([356d658](https://github.com/oxabl-project/oxabl/commit/356d6587d6961d1fbc7f2fdbc49cfdc6564b3268)) +* **parser:** Add include file reference parsing ([28cba6b](https://github.com/oxabl-project/oxabl/commit/28cba6b250247e2936c3a19e711465145189e7fe)) +* **parser:** add ON trigger and TRIGGER PROCEDURE statement parsing ([0ec08d3](https://github.com/oxabl-project/oxabl/commit/0ec08d30a6f927ff11e54a0cfc2c53c68e8d0af6)) +* **parser:** add ON trigger and TRIGGER PROCEDURE statement parsing ([6dfffdc](https://github.com/oxabl-project/oxabl/commit/6dfffdcac671142290109f13294499ba14e8fac7)) +* **parser:** add OO-ABL support ([5c3b2fb](https://github.com/oxabl-project/oxabl/commit/5c3b2fb9269db4dfeaca7d9d041dd8f9424f8bdf)) +* **parser:** add OO-ABL support (CLASS, METHOD, PROPERTY, INTERFACE) ([f2ec7a5](https://github.com/oxabl-project/oxabl/commit/f2ec7a5587330fd7c7a0909c752c0478e78fae02)) +* **parser:** add preprocessor statement parsing ([a2f82fd](https://github.com/oxabl-project/oxabl/commit/a2f82fd7032dda5fc7c27c3dccead1cf652eec17)) +* **parser:** add preprocessor statement parsing ([eea5606](https://github.com/oxabl-project/oxabl/commit/eea560646d49c24614f9bce123432523781defe1)) +* **parser:** add PUBLISH/SUBSCRIBE/UNSUBSCRIBE and DEFINE EVENT parsing ([4eb3af4](https://github.com/oxabl-project/oxabl/commit/4eb3af451f99bf02512e5799b9c25bfd1d0336e7)) +* **parser:** add PUBLISH/SUBSCRIBE/UNSUBSCRIBE and DEFINE EVENT parsing ([233af8c](https://github.com/oxabl-project/oxabl/commit/233af8ca8df241e00606241a38b8aaed5e86871c)) +* **parser:** add stream and frame parsing ([e959ffd](https://github.com/oxabl-project/oxabl/commit/e959ffd74e5a2459800eb076a4e19547d3b3ae70)) +* **parser:** add stream and frame parsing ([8182d4e](https://github.com/oxabl-project/oxabl/commit/8182d4e1b952d7de365348469b9d69ba2a9e599c)) +* **parser:** Support LIKE syntax in DEFINE VARIABLE, DEFINE PARAMETER, and VAR ([edf3b84](https://github.com/oxabl-project/oxabl/commit/edf3b8463dc6b32afb564352546b4312877fdcf8)) +* **parser:** Support LIKE syntax in DEFINE VARIABLE, DEFINE PARAMETER, and VAR ([dbb1fdf](https://github.com/oxabl-project/oxabl/commit/dbb1fdf325c9dc77ecd89437d74ac2cf03986021)) + + +### Bug Fixes + +* **ast, lexer:** resolved some code breakage from the last merge ([f7b44d3](https://github.com/oxabl-project/oxabl/commit/f7b44d37474515ff00c0865d3a6a462af7966ff8)) +* **parser:** add new keywords to can_be_identifier ([71a8406](https://github.com/oxabl-project/oxabl/commit/71a84063ac5bc2ce7db38c502e7b7b759ca87ba6)) +* **parser:** allow ROWID/RECID as callable identifiers in expression position ([4bcf324](https://github.com/oxabl-project/oxabl/commit/4bcf324f466d2a70466a4d8b26401e2d5b20af47)) +* **parser:** Handle DECIMALS clause in DEFINE VARIABLE, DEFINE PARAMETER, and TEMP-TABLE FIELD ([1fa56cd](https://github.com/oxabl-project/oxabl/commit/1fa56cda2ac0d3d9a957c8b80eeb2474fadb49e7)) +* **parser:** Handle DECIMALS clause in DEFINE VARIABLE, DEFINE PARAMETER, and TEMP-TABLE FIELD ([28e207c](https://github.com/oxabl-project/oxabl/commit/28e207c2e7b98e9bb2e0f5820c9518320c2f5598)) +* **parser:** Handle FORMAT/LABEL clause in DEFINE VARIABLE and DEFINE PARAMETER ([5c38a87](https://github.com/oxabl-project/oxabl/commit/5c38a871927734d32a3c62116e2f5ddef35e12d9)) +* **parser:** Handle FORMAT/LABEL clause in DEFINE VARIABLE and DEFINE PARAMETER ([7aa437a](https://github.com/oxabl-project/oxabl/commit/7aa437a4af6bfd25c452704077b24f6f387266dd)) +* **parser:** Skip comment tokens during parsing ([34de788](https://github.com/oxabl-project/oxabl/commit/34de7882128dc846b433012d1a30fb4dec8c794a)) + + +### Performance Improvements + +* **lexer:** eliminate heap allocations in keyword matching ([2fa1b87](https://github.com/oxabl-project/oxabl/commit/2fa1b87f9c7bb37ea3fa699a9e4073a34d8c5226)) +* **lexer:** eliminate heap allocations in keyword matching ([c7553f7](https://github.com/oxabl-project/oxabl/commit/c7553f7d46f0867c43794e7afdd65eb31795953b)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * oxabl_ast bumped from 0.4.0 to 0.5.0 + * oxabl_lexer bumped from 0.3.1 to 0.4.0 + ## [0.4.0](https://github.com/oxabl-project/oxabl/compare/oxabl_parser-v0.3.1...oxabl_parser-v0.4.0) (2026-04-04) diff --git a/crates/oxabl_parser/Cargo.toml b/crates/oxabl_parser/Cargo.toml index 173d94e..b23abba 100644 --- a/crates/oxabl_parser/Cargo.toml +++ b/crates/oxabl_parser/Cargo.toml @@ -1,14 +1,14 @@ [package] name = "oxabl_parser" -version = "0.4.0" +version = "0.5.0" edition = "2024" license = "MIT" description = "Parser for Progress ABL source code" repository = "https://github.com/oxabl-project/oxabl/crates/oxabl_parser" [dependencies] -oxabl_ast = { path = "../oxabl_ast", version = "0.4.0" } -oxabl_lexer = { path = "../oxabl_lexer", version = "0.3.1" } +oxabl_ast = { path = "../oxabl_ast", version = "0.5.0" } +oxabl_lexer = { path = "../oxabl_lexer", version = "0.4.0" } rust_decimal = "1.40.0" [dev-dependencies]