Skip to content

Releases: itsharppro/Paralax

Paralax v1.0.448

09 Feb 08:14
ebe667c
Compare
Choose a tag to compare

Paralax v1.0.448

We are pleased to announce the release of Paralax v1.0.448. This release brings significant improvements and enhancements across the framework, including major updates to the gRPC support, new PostgreSQL persistence integration, and several infrastructure and bug fixes.


New Features

Enhanced gRPC Library

  • Flexible Configuration:
    • Introduced a new GrpcOptionsBuilder that allows developers to configure gRPC settings (ports, message size limits, TLS certificate loading, etc.) easily via options.
    • Added default options (e.g., REST port 5045, gRPC port 7146) with the ability to override them from configuration.
  • Secure gRPC Endpoints:
    • Improved certificate loading via PEM and key files.
    • Enhanced Kestrel configuration to support both HTTP/1.1 (REST) and HTTP/2 (gRPC) endpoints.
  • gRPC Reflection Support:
    • Integrated gRPC reflection service to simplify client debugging and exploration of available gRPC endpoints.
  • Client Integration Enhancements:
    • Added extension methods for registering gRPC clients with customizable HTTP handlers, including support for ignoring certificate errors in development.

PostgreSQL Persistence Integration

  • Built-in Postgres Support:
    • New extensions allow seamless integration of PostgreSQL persistence using EF Core with Npgsql.
    • The library now registers a PostgresDbContext using a provided connection string (or via configuration) and supports additional options like sensitive data logging.
  • Database Initializers and Migrations:
    • Added a new PostgresDbInitializer that conditionally applies migrations or creates the schema directly if no migrations are defined.
    • Integrated PgAdmin support via Aspire Hosting, allowing for a user-friendly database administration experience.

Enhancements

  • Infrastructure Improvements:
    • Updated dependency injection registrations to support multi-database and multi-service scenarios.
    • Improved configuration handling in core components to resolve non-nullable property warnings (e.g., for Name, Service, Instance, and Version in AppOptions).
  • Script Cleanup:
    • Minor cleanups in the library change detection script (identify-changed-libraries.sh).
  • Documentation & Samples:
    • Enhanced inline documentation and comments across the builder APIs to assist developers with integration.

Bug Fixes

  • Non-Nullable Property Warnings:
    • Resolved issues where non-nullable properties were not properly initialized, ensuring that required properties in the core and gRPC modules always have valid values.
  • Database Schema Issues:
    • Fixed a bug in the PostgreSQL initializer that could cause issues when no migrations were present by adding logic to create the schema directly.
  • Certificate Loading in gRPC:
    • Addressed edge cases in certificate loading to ensure that secure gRPC endpoints work reliably in various environments.

Breaking Changes

  • None:
    This release is fully backward compatible. However, users are encouraged to review the updated configuration examples in the documentation to take full advantage of the new features and improvements.

We thank our contributors:
@SaintAngeLs
@MarkCiliaVincenti

and community for their feedback and support. Enjoy the new features and improvements in Paralax Library v1.0.448!


Feel free to customize these release notes to match your repository’s style and add any additional information specific to your changes.

Paralax v1.0.356

06 Oct 22:29
22a37b8
Compare
Choose a tag to compare

Paralax Framework v1.0.356 Release

Key Updates in v1.0.356:

  1. Web API Improvements:

    • Updated namespace handling within the Web API CQRS, providing more efficient organization and better modularity for microservice components.
  2. Command-Query Responsibility Segregation (CQRS) Enhancements:

    • Improved support for CQRS patterns with more optimized handling of queries and commands, allowing for more scalable and responsive microservices.
  3. Logging and Tracing:

    • Enhanced OpenTelemetry integration for improved distributed tracing and diagnostics, making it easier to monitor complex service interactions.
    • Updates to the logging module with more robust support for various sinks (e.g., Console, Elasticsearch) to provide better observability across microservices.
  4. Message Broker Support:

    • Refined support for RabbitMQ and Kafka in the message brokering module, enabling smoother asynchronous communication between services and improving reliability.
  5. Serialization and API Gateway:

    • Improved serialization options to support more efficient binary data transfers, reducing overhead when communicating between microservices.
  6. Documentation and Licensing:

    • Updated README and documentation for easier onboarding and clearer guidelines on framework usage.
    • Licensing has been updated to ensure full compliance with the latest Apache-2.0 standards.
  7. Cloud-Native Enhancements:

    • Optimizations for Kubernetes and Docker environments, ensuring the framework remains highly efficient for cloud-native deployments.

This release further strengthens the Paralax Framework’s position as a versatile and high-performance solution for building scalable, resilient microservices. We encourage all users to upgrade and take full advantage of the new features and improvements.

Paralax v1.0.305

29 Sep 21:13
980a883
Compare
Choose a tag to compare

Paralax v1.0.305 Release Notes

Release Description:
This is the first official release of the Paralax Framework. It introduces a modular and scalable framework designed for building cloud-native, microservices-based architectures with .NET 9.0. The Paralax Framework provides all the essential building blocks required to build secure, high-performance, and extensible applications.


Paralax Logo

Paralax Framework

.NET 9.0
Build Status
NuGet Version
Coverage Status


Release Highlights:

Key Features:

  • Modular Architecture: Paralax Framework allows developers to include only the modules required, making the microservices architecture highly efficient and customizable.
  • Security-First Design: Provides out-of-the-box support for encryption, JWT-based authentication, hashing, and signing.
  • CQRS & Event Sourcing: Comprehensive support for Command-Query Responsibility Segregation (CQRS) and Event-Driven Architecture.
  • Binary Serialization: Integrated binary serialization to optimize message size and speed, particularly in the Paralax.HTTP and Paralax.WebAPI components.
  • Distributed Messaging: Out-of-the-box support for message brokers such as RabbitMQ and Kafka, enabling asynchronous, reliable communication between microservices.
  • Cloud-Native Optimized: Designed with Kubernetes and Docker in mind, allowing seamless deployment to containerized environments.
  • Integrated Observability: Built-in support for distributed tracing using OpenTelemetry, along with comprehensive logging and metrics collection.
  • Persistence Integrations: Includes MongoDB, Redis, and Consul for robust and scalable data storage solutions.
  • API Documentation: Integrated Swagger and ReDoc support for generating comprehensive API documentation for your services.

Major Components:

  1. Paralax.Auth: Comprehensive support for authentication and authorization mechanisms, including JWT and OAuth2 integrations.
  2. Paralax.CQRS: Implements CQRS architecture with support for commands, queries, and events.
  3. Paralax.MessageBrokers: Support for RabbitMQ and Kafka for asynchronous messaging.
  4. Paralax.HTTP: High-performance HTTP client and server with support for binary serialization.
  5. Paralax.WebAPI: A lightweight API framework built on ASP.NET Core, optimized for binary serialization and API documentation.
  6. Paralax.Logging: Out-of-the-box support for multiple logging sinks (e.g., Elasticsearch, Console, etc.).
  7. Paralax.Tracing: Distributed tracing support using OpenTelemetry and Jaeger to monitor service-to-service communication and identify bottlenecks.

Binary Serialization:

This release introduces binary serialization to the Paralax.HTTP and Paralax.WebAPI components, which helps reduce the size of messages sent between microservices. It is crucial for performance optimization, especially in scenarios with high-volume or real-time data transfer.

Example:

public class MessagePayload
{
    public int Id { get; set; }
    public string Content { get; set; }
}

// Serialize message to binary format
var binaryData = ParalaxHttpSerializer.SerializeToBinary(payload);

// Deserialize message from binary format
var deserializedPayload = ParalaxHttpSerializer.DeserializeFromBinary<MessagePayload>(binaryData);

Observability and Logging:

Comprehensive observability is included with full support for OpenTelemetry for distributed tracing, along with seamless integration into cloud-native platforms. Logging is also highly customizable with support for multiple sinks, ensuring full visibility into service behavior.


Getting Started:

You can install the Paralax Framework and its components via NuGet:

dotnet add package Paralax
dotnet add package Paralax.Auth
dotnet add package Paralax.CQRS
dotnet add package Paralax.Logging
dotnet add package Paralax.MessageBrokers

For specialized functionality (e.g., HTTP, WebAPI, and messaging):

dotnet add package Paralax.HTTP
dotnet add package Paralax.WebAPI
dotnet add package Paralax.MessageBrokers.RabbitMQ
dotnet add package Paralax.Tracing.Jaeger

Contributing:

We welcome contributions to improve the Paralax Framework! Please refer to the Contributing Guide for more details on how to get started.


License:

The Paralax Framework is licensed under the Apache-2.0 License. See the LICENSE file for more details.


Credits:

The Paralax Framework is maintained by ITSharpPro and supported by a community of developers from around the globe.


Enjoy developing with Paralax Framework – Powering the Future of Microservices! 🚀


Download and Install:


This v1.0.305 release lays the foundation for future enhancements and new modules in the Paralax ecosystem. Stay tuned for future updates!