Skip to content

Releases: echovoice/Echovoice.JSON

Echovoice.JSON v3.0.0 - .NET 9 Modernization

07 Oct 17:13

Choose a tag to compare

Echovoice.JSON v3.0.0 - .NET 9 Modernization Release 🚀

A complete modernization of Echovoice.JSON from legacy .NET Framework 4.5 to support the latest .NET platforms while maintaining backward compatibility.

🎯 Highlights

  • Multi-Platform Support: Targets .NET Framework 4.5, .NET Standard 2.0, .NET 6.0, .NET 8.0, and .NET 9.0
  • Zero Runtime Dependencies: Pure .NET implementation with no third-party packages
  • High Quality: 98.31% line coverage and 97.71% branch coverage
  • Modern Tooling: SDK-style projects with comprehensive CI/CD
  • Tiny Package: Only 37KB package size

✨ What's New

Added

  • Multi-targeting support for .NET Framework 4.5, .NET Standard 2.0, .NET 6.0, .NET 8.0, and .NET 9.0
  • Comprehensive XML documentation for all public APIs
  • Modern SDK-style project format
  • Code coverage with 98.31% line coverage and 97.71% branch coverage
  • GitHub Actions CI/CD workflow with automated testing
  • Modern README with badges and comprehensive documentation
  • EditorConfig for consistent code style
  • Global.json for SDK version management
  • Contributing guidelines (CONTRIBUTING.md)
  • 16 new edge case tests for robust validation

Changed

  • BREAKING: Upgraded from .NET Framework 4.5 to multi-platform support
  • BREAKING: Migrated test framework from NUnit 2.6.4 to MSTest v3.6.1
  • BREAKING: Removed all third-party test dependencies (FluentAssertions)
  • All tests now use standard MSTest assertions for maximum simplicity
  • Modernized project structure and build system
  • Enhanced nullable reference type annotations (disabled for net45 compatibility)
  • Updated copyright to 2025
  • Package size optimized to 37KB with zero runtime dependencies

Fixed

  • Cross-platform file path handling in tests
  • Nullable reference warnings on modern .NET versions
  • Removed legacy NUnit and FluentAssertions packages
  • Corrected license documentation (Apache 2.0)

Improved

  • Better XML documentation coverage across all public APIs
  • More consistent coding style with EditorConfig
  • Improved package metadata for NuGet publishing
  • Comprehensive test suite with 28 tests covering all functionality
  • Build system modernization with global.json and Directory.Build.props

📦 Installation

dotnet add package Echovoice.JSON --version 3.0.0

Or via Package Manager Console:

Install-Package Echovoice.JSON -Version 3.0.0

🔧 Supported Frameworks

  • .NET Framework 4.5+
  • .NET Standard 2.0+
  • .NET 6.0+
  • .NET 8.0+
  • .NET 9.0+

📊 Quality Metrics

  • Line Coverage: 98.31% (175/178 lines)
  • Branch Coverage: 97.71% (169/173 branches)
  • Test Count: 28 comprehensive tests
  • Build Status: ✅ Passing on all platforms
  • Dependencies: 0 runtime dependencies

🔄 Migration Guide

This release maintains API compatibility with v2.0.0. No code changes are required for existing users. Simply update the package version:

dotnet add package Echovoice.JSON --version 3.0.0

The library will automatically use the appropriate binary for your target framework.

📝 License

This project is licensed under the Apache License 2.0.

🙏 Credits

Special thanks to all contributors who helped modernize this library for the .NET ecosystem!


Full Changelog: https://github.com/echovoice/Echovoice.JSON/blob/v3.0.0/CHANGELOG.md