Ruya.System.Xml.Serialization
8.2.4
dotnet add package Ruya.System.Xml.Serialization --version 8.2.4
NuGet\Install-Package Ruya.System.Xml.Serialization -Version 8.2.4
<PackageReference Include="Ruya.System.Xml.Serialization" Version="8.2.4" />
<PackageVersion Include="Ruya.System.Xml.Serialization" Version="8.2.4" />
<PackageReference Include="Ruya.System.Xml.Serialization" />
paket add Ruya.System.Xml.Serialization --version 8.2.4
#r "nuget: Ruya.System.Xml.Serialization, 8.2.4"
#:package Ruya.System.Xml.Serialization@8.2.4
#addin nuget:?package=Ruya.System.Xml.Serialization&version=8.2.4
#tool nuget:?package=Ruya.System.Xml.Serialization&version=8.2.4
Ruya Common .NET Libraries
A collection of opinionated, observability-first .NET libraries for building production-grade services. Each package below links to its own README with installation, configuration, and usage details.
Package Naming
Ruya.* packages fall into two categories:
- Extensions to Microsoft libraries build on the corresponding .NET platform area. For example,
Ruya.Diagnosticsextends the diagnostics stack built onSystem.Diagnostics, andRuya.Extensions.HostingextendsMicrosoft.Extensions.Hosting. - Ruya-defined capabilities introduce abstractions where the Microsoft platform does not provide an equivalent. For example,
Ruya.Services.CloudStorage.Abstractionsdefines Ruya's provider-neutral cloud-storage contracts.
Contents
- Package Naming
- Primitives & Testing
- Extensions
- Diagnostics & Observability
- ASP.NET Core
- Data Access
- System Utilities
- Distributed Lock
- Message Queue
- Reliable Messaging
- Cloud Storage
- Token Broker
Primitives & Testing
| Package | Description | NuGet |
|---|---|---|
| Ruya.Primitives | Common primitives, constants, and extensions used across the framework. | |
| Ruya.Testing.Primitives | Base classes and utilities (TestBase, TestHost) for unit and integration tests. |
Extensions
| Package | Description | NuGet |
|---|---|---|
| Ruya.Extensions.Configuration | Configuration helpers including feature flags and startup loading. | |
| Ruya.Extensions.DependencyInjection | Service collection validation to ensure required services are registered. | |
| Ruya.Extensions.Hosting | WorkerBackgroundService with Cron scheduling, idle backoff, retries, and observability. |
Diagnostics & Observability
| Package | Description | NuGet |
|---|---|---|
| Ruya.Diagnostics.Abstractions | Abstractions for the Ruya Diagnostics framework. | |
| Ruya.Diagnostics | Distributed tracing helpers and ActivitySource debugging tools. |
|
| Ruya.OpenTelemetry | OpenTelemetry registration with sensible defaults for traces, metrics, and logs. |
ASP.NET Core
| Package | Description | NuGet |
|---|---|---|
| Ruya.AspNetCore.DataProtection.StackExchangeRedis | Data Protection with Redis key persistence, plus tracing, metrics, and health checks. | |
| Ruya.AspNetCore.Diagnostics | Global exception handler for ASP.NET Core applications. | |
| Ruya.AspNetCore.Middleware | Middleware for adding application metadata (version, environment) to response headers. |
Data Access
| Package | Description | NuGet |
|---|---|---|
| Ruya.EntityFrameworkCore.SqlServer | SQL Server extensions for EF Core: BatchLock, BulkInsert, and ModelMetadataService. |
System Utilities
| Package | Description | NuGet |
|---|---|---|
| Ruya.System.Xml.Serialization | Thread-safe, cached XmlSerializer wrapper with a simple static API. |
Distributed Lock
A provider-agnostic distributed locking abstraction with multiple backends.
| Package | Description | NuGet |
|---|---|---|
| Ruya.Services.DistributedLock.Abstractions | Core IDistributedLock interface, options, and helpers. |
|
| Ruya.Services.DistributedLock | Base implementation with telemetry, health checks, and the "acquire, execute, release" pattern. | |
| Ruya.Services.DistributedLock.InMemory | SemaphoreSlim-based provider for testing and single-instance apps. |
|
| Ruya.Services.DistributedLock.MsSql | SQL Server sp_getapplock-based provider. |
|
| Ruya.Services.DistributedLock.Redis | Redis-based provider (SET NX PX or RedLock). |
Message Queue
A provider-agnostic async messaging abstraction with unified API and middleware support.
| Package | Description | NuGet |
|---|---|---|
| Ruya.Services.MessageQueue | Core abstractions, middleware pipeline, telemetry, and health checks. | |
| Ruya.Services.MessageQueue.InMemory | System.Threading.Channels-based provider for testing and single-process apps. |
|
| Ruya.Services.MessageQueue.MsSql | SQL Server Service Broker provider with transactional publish, receive, retry, and dead-letter storage. | |
| Ruya.Services.MessageQueue.RabbitMq | RabbitMQ provider with durable exchanges, delayed delivery, and priority queues. | |
| Ruya.Services.MessageQueue.Redis | Redis Pub/Sub subscriptions and Streams publishing for low-latency messaging. |
Reliable Messaging
Transactional Outbox + Inbox primitives for reliable, persistence- and transport-agnostic messaging.
| Package | Description |
|---|---|
| Ruya.Services.ReliableMessaging | Core Outbox/Inbox abstractions with per-TContext registration. |
| Ruya.Services.ReliableMessaging.EntityFrameworkCore | EF Core storage adapter with a SaveChangesAsync interceptor for atomic commits. |
| Ruya.Services.ReliableMessaging.MessageQueue | Ruya.Services.MessageQueue transport adapter with scope-aware atomic Inbox processing. |
Cloud Storage
A unified, stateless interface for file storage across multiple cloud providers.
| Package | Description | NuGet |
|---|---|---|
| Ruya.Services.CloudStorage.Abstractions | ICloudFileService and ICloudStorageFactory abstractions with built-in telemetry. |
|
| Ruya.Services.CloudStorage.Amazon | Amazon S3 provider. | |
| Ruya.Services.CloudStorage.Azure | Azure Blob Storage provider. | |
| Ruya.Services.CloudStorage.Google | Google Cloud Storage provider. | |
| Ruya.Services.CloudStorage.Local | Local file system provider for development and on-premise deployments. |
Token Broker
A JWT-based service-to-service authentication system with API key auth and nested actor chain token exchange (on-behalf-of flow).
| Package | Description | NuGet |
|---|---|---|
| Ruya.Services.TokenBroker.Abstractions | Contracts, models, validation, and constants shared across the broker, client, and validation packages. | |
| Ruya.Services.TokenBroker | The token broker service: issues and exchanges JWTs, backed by Redis for API keys. | |
| Ruya.Services.TokenBroker.Client | Client for requesting and exchanging tokens against the broker. | |
| Ruya.Services.TokenBroker.Validation | JWT validation extensions and ClaimsPrincipal helpers for resource servers. |
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
```text
Added > Changed > Deprecated > Removed
> Fixed
> Security
---
> Improved
> Cleaned
> Performance
> Functionality
> Robustness
> Documentation
```
## [Unreleased]
### Deprecated
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
### Fixed
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
### Security
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
## [1.0.0] - 2018-11-22
### Added
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
### Changed
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
### Removed
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
## [0.0.3] - 2018-11-21
### Added
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
## 0.0.2 - 2018-11-20 [YANKED]
### Added
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
## 0.0.1 - 2018-11-19
### Added
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
[Unreleased]: https://github.com/cilerler/ruya/compare/v1.0.0...HEAD
[1.0.0]: https://github.com/cilerler/ruya/compare/v0.0.1...v1.0.0
[1.0.0]: https://github.com/cilerler/ruya/compare/v0.0.1...v1.0.0