Install
Works with Drupal: ^10.5 || ^11.3Using Composer to manage Drupal site dependencies
Alternative installation files
Release notes
Release 2.17.2 fix: translation file name
Release 2.17.1 fix: #3572125 symfony dumper visible.
For convenience, I am re-proposing the list of changes made in version 2.17.0.
Summary 2.17.0
With this release, the theme evolves once again to stay aligned with the latest ecosystem updates. The Bootstrap Italia library has been upgraded to v2.17.3, bringing refinements, new icons, and style improvements. At the same time, the project now adopts Node.js 22, the current LTS version, ensuring long-term stability and compatibility with modern toolchains.
This version introduces an important breaking change in the way libraries are declared in your sub-theme: the previous theme_library_info_build() hook has been replaced by theme_library_info_alter(). Although the migration is straightforward, it is mandatory to keep your sub-theme fully functional with Drupal >= 11.1.x.
For those relying on vanilla libraries, the update simply requires replacing the distributed assets with the new version. For projects using custom builds with webpack, additional adjustments are required in SCSS files, configuration, and the webpack.common.js entry point. Deprecated files have been removed or merged, helping simplify and streamline the theme structure.
⚠️ Breaking changes!!!
Edit your <sub-theme>.theme file (e.g. italiagov.theme) and change this:
/**
* Implements theme_library_info_build().
*/
function italiagov_library_info_build(): array {
return Libraries::setLibraries();
}
with this:
/**
* @file
* Theme file for Bootstrap Italia.
*/
use Drupal\bootstrap_italia\Helper\Libraries;
/**
* Implements hook_library_info_alter().
*
* @phpstan-param array<string, mixed> $libraries
* Libraries array.
*/
function italiagov_library_info_alter(array &$libraries): void {
if (class_exists(Libraries::class)) {
Libraries::setLibraries($libraries);
}
}
Update libraries
Vanilla libraries
If you use vanilla libraries, download bootstrap-italia v2.17.3 and update <your-sub-theme>/dist folder.
Custom build
If you use custom libraries built with webpack, do:
$ npx npm-check-updates -u
$ npm install bootstrap-italia@2.17.3 --save-exact
$ npm update
Using as reference the files contained in /var/starter_kits/italiagov/... and update /themes/custom/<your-sub-theme>
- add:
src/scss/overrides/_carousel.scss
- update:
src/scss/_bootstrap-italia.scsssrc/scss/_bootstrap-italia_ckeditor5.scsssrc/scss/ckeditor5.scsssrc/scss/theme.scsswebpack.common.js(line 7th).nvmmrc
- remove:
src/scss/_bootstrap.scsssrc/scss/_bootstrap_ckeditor5.scss
All changes
- Issue #3501035: Drupal 11.1.x breaks' theme
- Issue #3530966 by scalas89: Error when adding a block with lazy_builder
- Issue #3507049 by dhruv.mittal, arturopanetta, gbonline, divyansh.gupta: The "file_validate_extensions" plugin does not exist
- fix: #3540683 TypeError breaks the theme with mini paginator
- feat: add new icons
- feat: refactoring styles
- feat: up to boostrap-italia 2.17.3
- fix: install script
- fix(a11y): main navigation
- fix(modules): deps in paragraph module
- fix: #3540683 TypeError breaks the theme with mini paginator
- fix: improve a11y in follow us component
- fix: typo in form element
- a11y: fix breadcrumb separator aria-hidden attribute
- feat: compliance phpstan level 8 and code standards
Summary 2.16.0
The version 2.16, even though it was not released, is fully incorporated
into version 2.17. This means that all the changes, fixes, and new features
planned for 2.16 are available in 2.17.
Summary 2.15.0
The version 2.15, even though it was not released, is fully incorporated
into version 2.17. This means that all the changes, fixes, and new features
planned for 2.15 are available in 2.17.
Summary 2.14.0
The version 2.14, even though it was not released, is fully incorporated
into version 2.17. This means that all the changes, fixes, and new features
planned for 2.14 are available in 2.17.
Summary 2.13.0
The version 2.13, even though it was not released, is fully incorporated
into version 2.17. This means that all the changes, fixes, and new features
planned for 2.13 are available in 2.17.