Skip to content

Release v3.2.0#80

Merged
MattEdwardsWaggleBee merged 10 commits into
mainfrom
develop
May 9, 2025
Merged

Release v3.2.0#80
MattEdwardsWaggleBee merged 10 commits into
mainfrom
develop

Conversation

@MattEdwardsWaggleBee
Copy link
Copy Markdown
Member

Description

varndellwagglebee and others added 10 commits April 14, 2025 09:29
* Create draft PR for #75
[skip ci]

* Initial refactor

* Update nugets

* Update documentation

* Remove orphaned usings and adjust default buffer size

---------

Co-authored-by: Brenton Farmer <brent.farmer@wagglebee.net>
* Adds XS expression provider
 - Adds a new expression provider leveraging Hyperbee.XS for template processing.
 - This allows for more complex and flexible template expressions.
 - Also includes tests and benchmarks to validate and measure performance.

* Refactors XS expression compilation for flexibility
  Improves the XS expression compilation process by introducing a TypeResolver and allowing for more flexible expression definitions.
  The changes include:
  - Injecting a TypeResolver into the XsTokenExpressionProvider for better type management.
  - Modifying the MemberDictionaryParseExtension to accept a name, allowing the `vars` keyword to be configurable.
  - Updating the compilation logic to use the TypeResolver and configurable `vars` name when parsing expressions.

Updates the XS token expression compilation process for improved flexibility and extensibility.

- Introduces a `CompileLambda` delegate for customizing lambda compilation.
- Implements a `MemberTypeResolver` to handle member access within expressions, supporting properties, generic methods and indexers on member dictionaries.
- Uses `XsParser` directly for parsing XS expressions.
- Removes dependency on FastExpressionCompiler.
- Updates Hyperbee.XS package version.

This change also adapts a template parser test to use the new 'inject' and 'config' extensions. The test now retrieves a registered service and a configuration value within the template, demonstrating the functionality of these extensions.

Updates the Hyperbee.XS dependency to version 1.3.3 across the templating provider, benchmark project, and tests.

---------

Co-authored-by: Matt Edwards <matthew.edwards@wagglebee.net>
@MattEdwardsWaggleBee MattEdwardsWaggleBee merged commit fe8c6d5 into main May 9, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants