Skip to content

Package Dependencies & Versions ​

This document outlines all NuGet package dependencies used in the Rapp project, their current versions, and verification that they are using the latest compatible versions.

Core Dependencies ​

Rapp Library (src/Rapp/Rapp.csproj) ​

PackageVersionStatusNotes
Microsoft.Extensions.Caching.Hybrid10.1.0LatestModern .NET caching abstractions
MemoryPack1.21.4LatestHigh-performance binary serialization

Source Generator (src/Rapp.Gen/Rapp.Gen.csproj) ​

PackageVersionStatusNotes
Microsoft.CodeAnalysis.CSharp5.0.0Latest CompatibleRoslyn compiler API for C#
Microsoft.CodeAnalysis.Analyzers3.11.0Latest CompatibleRoslyn code analysis rules

Compatibility Note: Roslyn analyzer packages have strict target framework requirements. We use standard 2.0 compatible versions where applicable to ensure broad compatibility.

Testing & Benchmarking ​

Benchmark Project (src/Rapp.Benchmark/Rapp.Benchmark.csproj) ​

PackageVersionStatusNotes
BenchmarkDotNet0.15.8LatestPerformance benchmarking framework
System.Text.Json10.0.1LatestJSON serialization for comparisons

Web & ASP.NET ​

Playground Project (src/Rapp.Playground/Rapp.Playground.csproj) ​

PackageVersionStatusNotes
Microsoft.AspNetCore.OpenApi10.0.1LatestOpenAPI/Swagger generation
MemoryPack1.21.4LatestBinary serialization

Version Update Process ​

Package versions are regularly verified against NuGet.org to ensure we're using the latest compatible versions:

  1. Automated Checks: CI/CD pipeline verifies no outdated packages
  2. Manual Verification: Quarterly review using NuGet API queries
  3. Compatibility Testing: All updates tested across all target frameworks
  4. Documentation Updates: This document updated when versions change

Build Requirements ​

  • .NET SDK: 10.0 or later
  • Target Frameworks:
    • net10.0 (main library)
    • netstandard2.1 (source generator)
  • OS Support: Windows, macOS, Linux
  • Architecture: x64, ARM64

Dependency Management ​

Package Reference Strategy ​

  • Core Dependencies: Explicit version pinning for stability
  • Development Tools: Latest versions for best tooling experience
  • Analyzer Packages: Compatible versions for target framework support
  • Private Assets: Analyzer dependencies marked as private to avoid transitive exposure

Update Policy ​

  • Security Updates: Immediate application
  • Bug Fixes: Applied in next minor release
  • Feature Updates: Evaluated for compatibility impact
  • Breaking Changes: Major version updates only

Verification Commands ​

To verify package versions manually:

bash
# Check specific package latest version
curl -s "https://api.nuget.org/v3-flatcontainer/{package-name}/index.json" | grep -o '"[0-9]\+\.[0-9]\+\.[0-9]\+"' | tail -5

# Build verification
dotnet build Rapp.sln --configuration Release

# Restore verification
dotnet restore Rapp.sln

Version History ​

DateActionDetails
2025-12-31Initial verificationAll packages confirmed at latest compatible versions
2025-12-31Roslyn analyzer compatibilityConfirmed 4.10.0/3.3.4 are latest compatible with .NET Standard 2.1
2026-01-07Update verificationAll packages updated to latest. CodeAnalysis updated to 4.14.0/3.11.0.

This document is automatically updated when package versions change. Last verified: January 7, 2026

Released under the MIT License.