Skip to content

Releases: jbsnewmedia/bootstrap-bundle

1.0.5

Choose a tag to compare

@jschwind jschwind released this 09 Feb 17:59
ffe3416

Release 1.0.5 – Changelog Summary

This release is a major quality and maintenance upgrade, focusing on test coverage, developer experience, and cleaner internal architecture. It makes the bundle more robust, easier to maintain, and safer to evolve—without changing how you use it day to day.

  • Extensive Test Coverage
    A comprehensive PHPUnit test suite was added for all commands and services, covering edge cases, error handling, and expected output—giving users much higher confidence in stability.

  • Improved Internal Architecture
    SCSS compilation and CSS purging were refactored to use dedicated factory classes, resulting in cleaner dependency handling and better error reporting when dependencies are missing.

  • Developer Tooling & CI Setup
    Docker-based development, GitHub Actions CI, PHPStan, ECS, Rector, and Codecov integration were added to ensure consistent code quality and automated checks on every change.

  • Stronger Error Handling
    Console commands now fail earlier and more clearly when inputs are invalid, files cannot be read or written, or required dependencies are unavailable—making issues easier to diagnose.

  • Refined Console Commands
    bootstrap:init, bootstrap:compile, and bootstrap:purge were cleaned up internally, with more predictable behavior, better defaults, and clearer console output.

  • Updated Documentation
    A full German README was added, existing documentation was expanded with badges, usage details, and troubleshooting tips, and developer-specific guides were introduced.

  • Modernized Dependency Management
    Development dependencies are now managed via composer-bin-plugin, keeping the main dependency tree lean while enabling powerful QA tooling.

  • Symfony & PHP Alignment
    The bundle now targets modern Symfony (7.4) and PHP (8.2+) explicitly, ensuring forward-looking compatibility and reduced legacy complexity.

Compatibility: Backward compatible


Full Changelog:
1.0.4...1.0.5

1.0.4

Choose a tag to compare

@jschwind jschwind released this 06 Jan 16:30
82cf2cb

Release 1.0.4 – Changelog Summary

This release is a small maintenance update focused on consistency and polish in generated CSS output. It ensures metadata references use a secure and uniform URL scheme.

  • Consistent HTTPS URLs in CSS Headers
    The generated purge header now uses HTTPS for the Bootstrap Bundle URL.
    This avoids mixed-content references and improves overall professionalism and security consistency.

Compatibility: Backward compatible.


Full Changelog: 1.0.3...1.0.4

1.0.3

Choose a tag to compare

@jschwind jschwind released this 06 Jan 16:22
d69f681

Release 1.0.3 – Changelog Summary

This release focuses on documentation clarity and internal service improvements, with an emphasis on better Bootstrap CSS purging support and more transparent output behavior. It enhances developer experience without changing public-facing behavior.

  • Documentation Enhancements
    The README was expanded and cleaned up to better explain available commands, defaults, and workflows.
    Users benefit from clearer guidance and more complete usage examples.

  • Project Naming Consistency
    The project title was standardized across documentation.
    This avoids confusion and improves consistency when referencing the bundle.

  • Bootstrap CSS Purge Command Documentation
    Detailed documentation for the bootstrap:purge command was added, including examples and option descriptions.
    Users can more easily adopt CSS purging to reduce output size.

  • Improved PurgeService Internals
    The purge service was refactored to track scanned files and return richer statistics.
    This provides better insight into what was analyzed during a purge operation.

  • Clearer Purge Output Metadata
    The generated CSS header was adjusted to clearly indicate both the Bootstrap Bundle and underlying purger.
    This improves transparency and traceability of generated assets.

  • Type and Return Value Clarifications
    Internal return types were refined for better clarity and future maintainability.
    This helps ensure more predictable integration and easier debugging.

Compatibility: Backward compatible.


Full Changelog: 1.0.2...1.0.3

1.0.2

Choose a tag to compare

@jschwind jschwind released this 08 Dec 16:49
b66d748

Release 1.0.2 – Changelog Summary

This release focuses on relaxing and aligning dependency constraints to improve installation flexibility and long-term stability. It broadens compatibility with common Symfony, Bootstrap, and SCSSPHP versions without changing bundle behavior.

  • Relaxed CssPurger Requirement
    Dependency updated from jbsnewmedia/css-purger:^1.0.2 to ^1.0.
    This allows you to use any compatible 1.x release of css-purger while keeping purge functionality intact.

  • Improved SCSSPHP Compatibility
    Requirement adjusted from scssphp/scssphp:^2.1 to ^2.0.
    This widens the supported compiler versions, making it easier to integrate into existing projects already on SCSSPHP 2.x.

  • Broader Symfony Version Support
    Console and FrameworkBundle constraints loosened from ^7.4.1 to ^7.0 (while keeping ^6.4).
    This supports a wider range of Symfony 7 installations and avoids forcing the very latest patch level.

  • More Flexible Bootstrap Baseline
    Bootstrap dependency changed from ^5.3.8 to ^5.3.
    Projects can now stay within the 5.3 line without being pinned to a specific patch version, easing upgrades and lockfile management.

Compatibility: Backward compatible.


Full Changelog: 1.0.1...1.0.2

1.0.1

Choose a tag to compare

@jschwind jschwind released this 08 Dec 16:46
e14aa92

Release 1.0.1 – Changelog Summary

This release introduces first-class CSS purging support for Bootstrap, improves the SCSS compilation workflow, and refines the bundle naming and configuration for clearer integration. It focuses on better DX (developer experience) and more powerful, template-aware optimization of your Bootstrap CSS.

  • New Bootstrap Purge Command
    Added bootstrap:purge to strip unused Bootstrap selectors based on your templates and code.
    This helps you ship much smaller CSS bundles tailored to your actual usage.

  • Template-Aware Purge Service
    Introduced PurgeService that scans directories/files (Twig, HTML, PHP, JS, etc.) and normalizes selectors before purging.
    You get more accurate purging with robust selector extraction and clear statistics about what’s kept.

  • Readable + Minified SCSS Outputs
    bootstrap:compile now writes both readable (bootstrap.css) and minified (bootstrap.min.css) CSS, with per-output source maps when enabled.
    This gives you a great balance between debugging-friendly stylesheets and optimized production assets.

  • Resilient SCSS Compiler Autoloading
    The compile command now tries to load scssphp/scssphp from the bundle’s own vendor directory and fails with clear guidance if the compiler is missing.
    This makes local/bundle-from-source development easier to debug and set up.

  • Bundle & Extension Renaming
    The bundle class was renamed from JBSNewMediaBootstrapBundle to BootstrapBundle, and the extension to BootstrapExtension, with matching composer.json configuration.
    This results in a cleaner, more conventional Symfony bundle naming scheme.

  • Updated Dependencies & Bootstrap Baseline
    Dependencies were tightened and updated, including scssphp/scssphp, symfony/* and twbs/bootstrap (now ^5.3.8), plus a new dependency on jbsnewmedia/css-purger ^1.0.2.
    Users benefit from newer features, fixes, and guaranteed compatibility with the latest maintained Symfony and Bootstrap versions.

  • Docs & Repository Hygiene
    Removed a duplicate typo alias mention from the README and started ignoring /vendor/ in version control.
    This keeps docs aligned with real behavior and avoids committing third-party dependencies.

Compatibility: Breaking Change – bundle FQCN renamed to JBSNewMedia\BootstrapBundle\BootstrapBundle; update config/bundles.php and any direct references.


Full Changelog: 1.0.0...1.0.1

1.0.0

Choose a tag to compare

@jschwind jschwind released this 24 Nov 15:21
0dd06ae

Release 1.0.0 – Initial Release

This release introduces the first stable version of the JBSNewMedia Bootstrap Bundle, a lightweight Symfony bundle that makes it easy to scaffold and compile Bootstrap SCSS using pure PHP via scssphp – no Node toolchain required.

The bundle ships with two console commands, bootstrap:init for generating ready-to-use SCSS entry files (light and dark) and bootstrap:compile for compiling SCSS to CSS with sensible defaults, vendor-aware include paths, and optional source maps. It’s designed to drop into a standard Symfony app and give you a clean, predictable Bootstrap build pipeline out of the box.

Highlights

  • Symfony console commands: bootstrap:init and bootstrap:compile
  • Ready-made SCSS entries for light and dark themes
  • Preconfigured include paths for vendor/twbs/bootstrap/scss and common asset dirs
  • Compressed CSS output and optional --source-map support
  • Safe scaffolding via --dry-run and --force
  • Updated English README with installation, usage, command reference, examples, and troubleshooting

A simple, Composer-native way to manage your Bootstrap SCSS in Symfony.


Full Changelog: https://github.com/jbsnewmedia/bootstrap-bundle/commits/1.0.0