v5.0.0 Release: .NET 9 and RSS Feeds

2024-12-12

We're excited to announce SuCoS v5.0.0, a major release that brings significant improvements in flexibility, performance, and architecture.

.NET 9 Upgrade

The most significant change in this release is our upgrade to .NET 9. The upgrade necessitated a bit of internal changes and is the primary reason for the major version increment.

Unlike many other project's strategy of waiting for Long-Term Support (LTS) releases, we're committed to using the latest .NET release. Why? Because Microsoft provides the same level of robustness and stability across all .NET versions. This approach ensures we're always leveraging the most recent performance improvements, language features, and runtime optimizations.

Output Formats

Remember when SuCoS could only generate HTML? Those days are gone!

We're introducing a game-changing feature: multiple output formats! Now, each content type can generate various file types beyond HTML. This means you can easily create:

  • RSS Feeds
  • Robot.txt files
  • Sitemap XML

The templating system is now incredibly smart. You can create format-specific templates:

  • single.html.liquid: HTML-only template
  • single.xml.liquid: XML-only template
  • single.liquid: A universal fallback

Imagine generating a blog RSS feed with just a few configuration lines. Pure magic!

Front Matter Separation

The old Front Matter was getting complex, so we split it up following the Single Responsibility Principle. Meet ContentClass – our new comprehensive content representation that combines:

  • Front Matter (metadata)
  • Actual Content
  • File Metadata

Parsing Phase Optimization

Content Front Matter is now generated in a separate loop before page generation. This lays the groundwork for future enhancements, potentially allowing parsing without full page generation.

Dependency Updates

We've updated all dependencies to their latest versions as of December 2024. Notable updates include:

  • Fluid.Core: 2.11.1 → 2.14.0
  • YamlDotNet: 16.1.0 → 16.2.1
  • Markdig: 0.37.0 → 0.38.0
  • Microsoft Extensions packages: Updated to .NET 9 versions

A Note on CI/CD

Remember the trimming improvements we mentioned in v4.3.0? We've finally implemented the full build process optimization. GitLab CI/CD now creates even smaller, more efficient executables.

Breaking Changes

  • Requires .NET 9 SDK (for devs only)
  • Changes in Front Matter handling
  • Most content will generate RSS by default

Let's keep evolving!

Download It Now

View Changelog