Releases: itsharppro/Nuar
Nuar Framework 1.0.74
Nuar Framework Release 1.0.74
We are excited to announce the release of Nuar Framework version 1.0.74, featuring numerous improvements and updates aimed at enhancing performance, request handling, and payload processing. Below is an overview of the key changes and improvements:
Key Updates:
-
Request Processor Update:
- The request processor has been refined to better handle queries, with improvements in object population and serialization.
- Enhanced performance when processing GET queries, providing faster response times and more efficient data handling.
-
Payload Builder Enhancements:
- Significant updates to the
PayloadBuilder
for more robust and flexible payload construction. - The serialization options have been updated to improve compatibility with different data structures and formats.
- Significant updates to the
-
MessagePack Integration:
- Testing and usage of MessagePack as a serialization format to reduce payload sizes and improve transmission speed across the network.
- Optimized payload transformation methods for better performance and reliability.
-
Tracing Library Update:
- The tracing library has been updated, improving the framework's capability to monitor and track execution paths across distributed systems.
-
Route Provider Improvements:
- The route provider has been updated for better scalability and easier management of routes in large applications.
-
Licensing and Documentation:
- The license for the Nuar framework has been updated to ensure compliance with the latest open-source standards.
- The README and documentation have been refreshed with clearer instructions and up-to-date information regarding the framework's features and usage.
-
Swagger Support for .NET 8.0:
- Updated properties and versioning to support Swagger with .NET 8.0, ensuring smooth integration for API documentation and testing.
-
Miscellaneous Fixes and Enhancements:
- General improvements to properties and paths management.
- Several smaller updates to ensure the framework is fully optimized and bug-free.
We recommend updating to version 1.0.74 to take advantage of these improvements, especially for users relying on efficient payload processing and modern .NET environments.
Nuar v1.0.41
Nuar v1.0.41 Release Notes
We are excited to announce the release of Nuar v1.0.41, a highly scalable and extensible API Gateway framework designed for microservices. This release brings several key features and enhancements, making Nuar a robust solution for managing APIs, improving observability, and handling distributed microservice communication with ease.
Key Highlights in v1.0.41:
- Initial Release: Nuar is now ready for production with key foundational features that simplify API gateway management and service routing.
- Modular Extensions: Nuar v1.0.41 introduces a modular architecture allowing users to pick and choose features as needed via extensions like
Nuar.Cors
,Nuar.JWT
,Nuar.RabbitMQ
, and more. - Improved Security: JWT-based authentication and authorization are fully supported with easy integration into your microservices ecosystem.
- Enhanced Observability: Built-in distributed tracing with
Nuar.Tracing
powered by OpenTelemetry, allowing you to monitor and diagnose issues across your microservices architecture. - CORS Management: Seamless management of CORS policies via
Nuar.Cors
, ensuring secure cross-origin API requests. - API Documentation: Automatically generate and manage API documentation using
Nuar.Swagger
for OpenAPI/Swagger support.
Key Features
- Modular Design: Use only the components you need by adding or removing features via Nuar extensions.
- Authentication & Authorization: Supports JWT, OAuth, and custom authentication mechanisms.
- CORS Management: Effortlessly manage CORS policies using the Nuar.Cors extension.
- Custom Error Handling: Fine-tune error responses with Nuar.CustomErrors.
- Distributed Tracing: Achieve observability with Nuar.Tracing, leveraging OpenTelemetry.
- API Documentation: Automatically generate API docs with Nuar.Swagger using OpenAPI.
- Message Brokers: Integrate RabbitMQ with Nuar.RabbitMQ for microservices communication.
- Scalability & Resilience: Built with Polly for handling retries, circuit-breaking, and resilience in distributed environments.
Getting Started
Prerequisites
Ensure you have the following tools installed:
- .NET SDK 8.0 or later
- Docker (optional, for deployment)
Configuration
Nuar is fully configurable through YAML. Define routes, services, CORS, security policies, and more in nuar.yml
:
routes:
- path: /api/service1
service: service1
method: GET
auth:
required: true
Packaging & Deployment
-
Build & Package: Use the following script to package all components:
bash scripts/pack-all.sh
-
Run Tests: To execute all unit tests, run:
bash scripts/build-and-test.sh
Available Extensions
Nuar is designed to be modular. Below are some key extensions available in v1.0.41:
- Nuar.Cors: Manage Cross-Origin Resource Sharing (CORS) policies.
- Nuar.JWT: Add JWT-based authentication and authorization.
- Nuar.RabbitMQ: Integrate RabbitMQ for message-based communication.
- Nuar.Swagger: Generate API documentation with Swagger and OpenAPI.
- Nuar.Tracing: Utilize OpenTelemetry for distributed tracing and observability.
Bug Fixes and Improvements
- Enhanced Binary Serialization: Improved performance for payload serialization in
Nuar.HTTP
for high-throughput services. - Logging Enhancements: Streamlined logging for easier debugging and integration with popular log aggregation services.
- Refined CORS Management: More granular control over CORS policies for different routes and services.
Contributing
Contributions are welcome! If you have a bug report, feature request, or want to contribute code, please follow these steps:
- Fork the repository.
- Create a new feature branch.
- Submit a pull request with your changes.
We also encourage opening discussions on issues to get feedback from the community before starting large feature developments.
License
The Nuar Framework is licensed under the Apache-2.0 License.
For more information, visit ITSharpPro or check the official documentation.