[2.33.0] - 2025-10-01
Thanks to: @Crazylegstoo, @dathbe, @m-idler, @plebcity, @khassel, @KristjanESPERANTO, @rejas and @sdetweil!
⚠️ This release needs nodejs version v22.18.0 or higher
Added
Add configuration option for User-Agent, used by calendar & news module (#3255)
[linter] Add prettier plugin for nunjuck templates (#3887)
[core] Add clear log for occupied port at startup (#3890)
Changed
[clock] Add CSS to prevent line breaking of sunset/sunrise time display (#3816)
[core] Enhance system information logging format and include additional env and RAM details (#3839, #3843)
[refactor] Add new file js/module_functions.js to move code used in several modules to one place (#3837)
[refactor] Use global.root_path where possible and add tests for config:check (#3883, #3885, #3886, #3889)
[tests] refactor: simplify jest config file (#3844)
[tests] refactor: extract constants for weather electron tests (#3845)
[tests] refactor: add setupDOMEnvironment helper function to eliminate repetitive JSDOM setup code (#3860)
[tests] replace console with Log in calendar debug.js to avoid exception in eslint config (#3846)
[tests] speed up e2e tests, cleanup and stabilize weather e2e tests, update snapshot url (#3847, #3848, #3861)
[tests] refactor translation tests (#3866)
Remove sinon dependency in favor of Jest native mocking
Unify test helper functions across translation test suites
Rename setupDOMEnvironment to createTranslationTestEnvironment for consistency
Simplify DOM setup by removing unnecessary Promise/async patterns
Avoid potential port conflicts by using port 3001 for translator unit tests
Improve test reliability and maintainability
[tests] add alert module tests for different welcome_message configurations (#3867)
[lint-staged] use prettier --write --ignore-unknown in lint-staged to avoid errors on unsupported files (#3888)
Updated
[calendar] Update defaultSymbol name and also the link to the icon search site (#3879)
[core] Update dependencies including electron to v38 as well as github actions (#3831, #3849, #3857, #3858, #3872, #3876, #3882, #3891, #3896)
[weather] Update feels_like temperature calculation formula (#3869)
[weather] Update null value handling for weather type (#3892)
[layout] Update styles for weather and calendar (#3894)
Fixed
[calendar] Fixed broken unittest that only broke on the 1st of July and 1st of january (#3830)
[clock] Fixed missing icons when no other modules with icons is loaded (#3834)
[weather] Fixed handling of empty values in weathergov providers handling of precipitationAmount (#3859)
[calendar] Fix regression handling of limit days (#3840)
[calendar] Fixed regression of calendarfetcherutils.shouldEventBeExcluded (#3841)
[core] Fixed socket.io timeout when server is slow to send notification, notification lost at client (#3380)
[tests] refactor AnimateCSS tests after jsdom 27 upgrade (#3891)
[weather] Use apparent_temperature data from openmeteo’s hourly weather for current feelsLikeTemp (#3868).
[weather] Updated envcanada Provider to use new database/URL schema for accessing weather data (#3878).