Release Notes
Version 8.0.1 - December 2025
🚨 Breaking Changes
- Deprecated Roslyn Syntax Helpers: All classes in the
Albatross.CodeAnalysis.Syntaxnamespace have been marked as obsolete. Use Albatross.CodeGen.CSharp instead for C# code generation functionality. - Removed MSBuild Integration: The
Albatross.CodeAnalysis.MSBuildproject has been completely removed from the solution.
🆕 New Features
New Testing Library
Albatross.CodeAnalysis.Testing: Brand new testing utility library for Roslyn-based analyzers and source generators- Easy creation of
CSharpCompilationinstances with proper .NET 8.0 framework references - Modern C# 12 language support by default
- Async API with cancellation token support
- Simplified testing workflows for code analysis scenarios
- Easy creation of
Enhanced Polyfill Library
HashCodestruct: Added for .NET Standard 2.0 projects to provide modern hash code combining functionalityCallerArgumentExpressionAttribute: Enhanced support for C# 10 caller argument expressionsRequiredMemberAttribute: Full implementation for C# 11 required members syntaxNotNullAttribute: Comprehensive nullable reference type annotations- Conditional Compilation: All polyfills are now properly conditionally compiled for .NET Standard 2.0 only
🔧 Core Library Improvements
Enhanced Symbol Analysis
- Improved Nullability Detection: Enhanced
IsNullable()methods with better support for both reference and value types - Expanded Symbol Extensions: New extension methods for comprehensive type analysis
- Better Collection Type Handling: Improved detection and analysis of collection types and their element types
- Enhanced Attribute Analysis: Better
AttributeDataExtensionsfor working with symbol attributes
Code Organization
- Consolidated Extensions: Moved symbol extensions from
Symbolssubfolder to root namespace for better API discoverability - Improved Symbol Provider: Enhanced
SymbolProviderclass with more comprehensive framework type access - Better Multi-targeting: Improved support for both .NET Standard 2.0 and .NET 8.0 scenarios
🐛 Bug Fixes
- Fixed
IsExternalInit: Corrected implementation for better init-only property support - Improved Framework References: Better handling of framework references in multi-targeted scenarios
- Enhanced Compilation Factory: More robust compilation creation for testing scenarios
📦 Package & Build Improvements
- Cleaned Up Solution: Removed deprecated projects and improved solution structure
- Better NuGet Packaging: Improved package metadata and dependencies
- Simplified Build Process: Streamlined build and packaging scripts
For detailed API documentation, see the API Reference.