[2.29.0] - 2024-10-01
Thanks to: @bugsounet, @dkallen78, @jargordon, @khassel, @KristjanESPERANTO, @MarcLandis, @rejas, @ryan-d-williams, @sdetweil, @skpanagiotis.
⚠️ This release needs nodejs version
v20
orv22
, minimum version isv20.9.0
Added
- [compliments] Added support for cron type date/time format entries mm hh DD MM dow (minutes/hours/days/months and day of week) see https://crontab.cronhub.io for construction (#3481)
- [core] Check config at every start of MagicMirror² (#3450)
- [core] Add spelling check (cspell):
npm run test:spelling
and handle spelling issues (#3544) - [core] removed
config.paths.vendor
(could not work becausevendor
is hardcoded inindex.html
), renamedconfig.paths.modules
toconfig.foreignModulesDir
, added variableMM_CUSTOMCSS_FILE
which - if set - overridesconfig.customCss
, added variableMM_MODULES_DIR
which - if set - overridesconfig.foreignModulesDir
, added test forMM_MODULES_DIR
(#3530) - [core] elements are now removed from
index.html
when loading script or stylesheet files fails - [core] Added
MODULE_DOM_UPDATED
notification each time the DOM is re-rendered viaupdateDom
(#3534) - [tests] added minimal needed node version to tests (currently v20.9.0) to avoid releases with wrong node version info
- [tests] Added
node-libgpiod
library to electron-rebuild tests (#3563)
Removed
- [core] removed installer only files (#3492)
- [core] removed raspberry object from systeminformation (#3505)
- [linter] removed
eslint-plugin-import
, because it doesn't support ESLint v9. We will reenter it later when it does. - [tests] removed
onoff
library from electron-rebuild tests (#3563)
Updated
- [weather] Updated
apiVersion
default from 2.5 to 3.0 (#3424) - [core] Updated dependencies including stylistic-eslint
- [core] nail down
node-ical
version to0.18.0
with exceptionallow-ghsas: GHSA-8hc4-vh64-cxmj
indep-review.yaml
(which should removed after nextnode-ical
update) - [core] Updated SocketIO catch all to new API
- [core] Allow custom modules positions by scanning index.html for the defined regions, instead of hard coded (PR #3518 fixes issue #3504)
- [core] Detail optimizations in
config_check.js
- [core] Updated minimal needed node version in
package.json
(currently v20.9.0) (#3559) and except for v21 (no security updates) (#3561) - [linter] Switch to ESLint v9 and flat config and replace
eslint-plugin-unicorn
by@eslint/js
- [core] fix discovering module positions twice after #3450
Fixed
- Fixed
checks
badge in README.md - [weather] Fixed issue with the UK Met Office provider following a change in their API paths and header info.
- [core] add check for node_helper loading for multiple instances of same module (#3502)
- [weather] Fixed issue for respecting unit config on broadcasted notifications
- [tests] Fixes calendar test by moving it from e2e to electron with fixed date (#3532)
- [calendar] fixed sliceMultiDayEvents getting wrong count and displaying incorrect entries, Europe/Berlin (#3542)
- [tests] ignore
js/positions.js
when linting (this file is created at runtime) - [calendar] fixed sliceMultiDayEvents showing previous day without config enabled