Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "grimoire_css"
version = "1.6.0"
edition = "2024"
rust-version = "1.88"
authors = ["Dmitrii Shatokhin <[email protected]>"]
Expand Down
87 changes: 81 additions & 6 deletions RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,87 @@ This document combines all release notes in chronological order, providing a com

---

# v1.6.0 Chromaspire: The Color Convergence

Grimoire CSS refines its arcane precision with **Chromaspire**, a release dedicated to mastery over color and stability. With a fully decoupled color toolkit, improved resilience, and groundwork for precise float-based styling, spellcasters now wield both grace and robustness.

## Key Highlights

- **Decoupled Color System**: Color module extracted to `grimoire_css_color_toolkit` crate for independent usage and improved maintainability.
- **Enhanced Parser Support**: Comprehensive support for curly bracket class syntax (`class={}`, `className={}`) with robust nested bracket handling.
- **Float-Based Precision**: Migration from `u32` to `f64` for unit handling, enabling precise floating-point calculations for responsive units.
- **Modern Rust Standards**: Upgraded to Rust Edition 2024 with minimum version 1.88 for enhanced language features and performance.
- **Improved String Formatting**: Modernized string interpolation using the latest Rust formatting conventions.
- **Enhanced Documentation**: Refined project description and branding consistency across the ecosystem.
- **Robust Refactoring Support**: Added comprehensive support for refactor branches in contribution workflow.

## Full Details

### Color System Decoupling

- **Independent Color Toolkit**: Extracted the complete color module to `grimoire_css_color_toolkit` v1.0.0 as a standalone crate.
- **CSS Color Module Level 4 Compliance**: Maintained full compliance with CSS Color specifications for `rgb()`, `hsl()`, `hwb()`, hex codes, and named colors.
- **External Availability**: Color toolkit now available for independent use in other projects requiring CSS-compliant color parsing and manipulation.
- **Seamless Integration**: Existing color functionality remains fully accessible through the main Grimoire CSS module.

### Parser Enhancements

- **Curly Bracket Class Support**: Added comprehensive parsing for `class={}` and `className={}` syntax patterns.
- **Nested Bracket Handling**: Robust regex patterns that correctly handle nested curly brackets within class declarations.
- **Framework Compatibility**: Enhanced support for modern JavaScript frameworks and CSS-in-JS solutions.
- **Collection Type Management**: Implemented `CollectionType` enum for precise handling of different class collection scenarios.

### Precision and Performance

- **Float-Based Units**: Migrated unit handling from `u32` to `f64` for precise floating-point calculations.
- **Responsive Design Support**: Enhanced accuracy for `mfs`/`mrs` (minimum/maximum font-size) and other fluid sizing calculations.
- **Mathematical Precision**: Improved handling of complex responsive calculations with decimal precision.
- **Memory Efficiency**: Optimized data structures while maintaining calculation accuracy.

### Language and Tooling Modernization

- **Rust Edition 2024**: Upgraded to the latest Rust edition for access to newest language features and optimizations.
- **Minimum Rust Version**: Set minimum supported Rust version to 1.88 for stability and security.
- **Modern String Formatting**: Migrated to contemporary Rust string interpolation patterns for improved readability and performance.
- **Dependency Updates**: Updated Clap to v4.5.41 with enhanced CLI argument parsing capabilities.

### Documentation

- **Consistent Terminology**: Standardized project description as "A magical CSS engine" across all documentation.
- **Enhanced Contributing Guidelines**: Added comprehensive support for refactor branches in the development workflow.

## Migration Notes

### For Library Users

- **Color Module**: If using color functions directly, update imports to reference the new `grimoire_css_color_toolkit` crate or continue using through the main module.
- **Unit Calculations**: Float-based calculations may produce slightly different results due to improved precision.
- **No Breaking Changes**: All existing APIs remain compatible with previous versions.

### For Contributors

- **Refactor Branches**: New `refactor/{description}` branch naming convention available for code improvement contributions.
- **Modern Rust**: Development now requires Rust 1.88+ for optimal experience.
- **Testing**: Enhanced test coverage for curly bracket parsing and float-based calculations.

## Technical Improvements

### Core Architecture

- **Modular Design**: Color system decoupling improves overall architecture and reduces main crate complexity.
- **Type Safety**: Enhanced type safety with `CollectionType` enum for parser state management.
- **Error Handling**: Improved error handling for complex parsing scenarios.
- **Code Organization**: Better separation of concerns between core functionality and specialized modules.

### Parser Robustness

- **Regex Optimization**: Efficient regex patterns for curly bracket class detection with proper nesting support.
- **Quote Handling**: Enhanced quote detection and matching for complex class declarations.
- **State Management**: Improved parser state tracking for reliable multi-pattern matching.
- **Performance**: Optimized parsing pipeline for faster processing of complex markup.

---

# v1.5.0 Arcane Nexus: Unified Spellcraft

Grimoire CSS continues its magical ascendance with the **v1.5.0 Arcane Nexus** release, forging powerful new commands, extensible configurations, advanced template syntax, and a unified ecosystem that binds the circle of spellcasters together. This update focuses on seamless migration, modular scroll and variable support, a public color toolkit, and a next-generation Transmutator CLI & web UI - all while refining performance, parsing reliability, and community engagement.
Expand Down Expand Up @@ -276,9 +357,3 @@ Grimoire CSS takes a major leap forward with the **v1.1.0 Arcana** release, brin
- Usage examples.
- Basic configuration guidelines.
- Improved logo.

---

# v1.0.0: Initial Release

The debut release of Grimoire CSS, introducing a powerful CSS engine designed for flexibility and performance.
78 changes: 78 additions & 0 deletions releases/v1.6.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# v1.6.0 Chromaspire: The Color Convergence

Grimoire CSS refines its arcane precision with **Chromaspire**, a release dedicated to mastery over color and stability. With a fully decoupled color toolkit, improved resilience, and groundwork for precise float-based styling, spellcasters now wield both grace and robustness.

## Key Highlights

- **Decoupled Color System**: Color module extracted to `grimoire_css_color_toolkit` crate for independent usage and improved maintainability.
- **Enhanced Parser Support**: Comprehensive support for curly bracket class syntax (`class={}`, `className={}`) with robust nested bracket handling.
- **Float-Based Precision**: Migration from `u32` to `f64` for unit handling, enabling precise floating-point calculations for responsive units.
- **Modern Rust Standards**: Upgraded to Rust Edition 2024 with minimum version 1.88 for enhanced language features and performance.
- **Improved String Formatting**: Modernized string interpolation using the latest Rust formatting conventions.
- **Enhanced Documentation**: Refined project description and branding consistency across the ecosystem.
- **Robust Refactoring Support**: Added comprehensive support for refactor branches in contribution workflow.

## Full Details

### Color System Decoupling

- **Independent Color Toolkit**: Extracted the complete color module to `grimoire_css_color_toolkit` v1.0.0 as a standalone crate.
- **CSS Color Module Level 4 Compliance**: Maintained full compliance with CSS Color specifications for `rgb()`, `hsl()`, `hwb()`, hex codes, and named colors.
- **External Availability**: Color toolkit now available for independent use in other projects requiring CSS-compliant color parsing and manipulation.
- **Seamless Integration**: Existing color functionality remains fully accessible through the main Grimoire CSS module.

### Parser Enhancements

- **Curly Bracket Class Support**: Added comprehensive parsing for `class={}` and `className={}` syntax patterns.
- **Nested Bracket Handling**: Robust regex patterns that correctly handle nested curly brackets within class declarations.
- **Framework Compatibility**: Enhanced support for modern JavaScript frameworks and CSS-in-JS solutions.
- **Collection Type Management**: Implemented `CollectionType` enum for precise handling of different class collection scenarios.

### Precision and Performance

- **Float-Based Units**: Migrated unit handling from `u32` to `f64` for precise floating-point calculations.
- **Responsive Design Support**: Enhanced accuracy for `mfs`/`mrs` (minimum/maximum font-size) and other fluid sizing calculations.
- **Mathematical Precision**: Improved handling of complex responsive calculations with decimal precision.
- **Memory Efficiency**: Optimized data structures while maintaining calculation accuracy.

### Language and Tooling Modernization

- **Rust Edition 2024**: Upgraded to the latest Rust edition for access to newest language features and optimizations.
- **Minimum Rust Version**: Set minimum supported Rust version to 1.88 for stability and security.
- **Modern String Formatting**: Migrated to contemporary Rust string interpolation patterns for improved readability and performance.
- **Dependency Updates**: Updated Clap to v4.5.41 with enhanced CLI argument parsing capabilities.

### Documentation

- **Consistent Terminology**: Standardized project description as "A magical CSS engine" across all documentation.
- **Enhanced Contributing Guidelines**: Added comprehensive support for refactor branches in the development workflow.

## Migration Notes

### For Library Users

- **Color Module**: If using color functions directly, update imports to reference the new `grimoire_css_color_toolkit` crate or continue using through the main module.
- **Unit Calculations**: Float-based calculations may produce slightly different results due to improved precision.
- **No Breaking Changes**: All existing APIs remain compatible with previous versions.

### For Contributors

- **Refactor Branches**: New `refactor/{description}` branch naming convention available for code improvement contributions.
- **Modern Rust**: Development now requires Rust 1.88+ for optimal experience.
- **Testing**: Enhanced test coverage for curly bracket parsing and float-based calculations.

## Technical Improvements

### Core Architecture

- **Modular Design**: Color system decoupling improves overall architecture and reduces main crate complexity.
- **Type Safety**: Enhanced type safety with `CollectionType` enum for parser state management.
- **Error Handling**: Improved error handling for complex parsing scenarios.
- **Code Organization**: Better separation of concerns between core functionality and specialized modules.

### Parser Robustness

- **Regex Optimization**: Efficient regex patterns for curly bracket class detection with proper nesting support.
- **Quote Handling**: Enhanced quote detection and matching for complex class declarations.
- **State Management**: Improved parser state tracking for reliable multi-pattern matching.
- **Performance**: Optimized parsing pipeline for faster processing of complex markup.
Loading