v2.34.0

daytonaio/daytonav2.34.0Jan 1, 2026by github-actions[bot]

AI Summary

This release updates Node.js version requirements, migrates the testing infrastructure from Jest to Vitest, and adds new server features like automatic restart on file changes, along with improvements to core modules.

Key Highlights

  • Node.js version requirement updated (>=22.21.1 <23 || >=24)
  • Migration from Jest to Vitest for testing infrastructure
  • New 'server:watch' script with automatic restart on file changes
  • Refactoring of CalendarFetcher to ES6 class
  • Improved Wayland and logging support

Breaking Changes

  • Node.js version requirement updated
  • Testing framework migrated from Jest to Vitest
  • Refactoring of internal calendar and weather utilities

New Features

  • Configurable forecast date format option for weather module
  • ESLint rule for 'no-sparse-arrays' in config files
  • Automatic restart on file changes via server:watch script

Full Release Notes

## Release Notes
Thanks to: @Blackspirits, @Crazylegstoo, @jarnoml, @jboucly, @JHWelch, @khassel, @KristjanESPERANTO, @rejas, @sdetweil, @xsorifc28
> ⚠️ This release needs nodejs version >=22.21.1 <23 || >=24

[Compare to previous Release v2.33.0](https://github.com/MagicMirrorOrg/MagicMirror/compare/v2.33.0...v2.34.0)


### [core]
- Merge branch 'master' into develop
- Prepare Release 2.34.0 (#3998)
- dependency update + adjust Playwright setup + fix linter issue (#3994)
- demo with gif (#3995)
- [core] fix: allow browser globals in config files (#3992)
- [core] fix: restore `--ozone-platform=wayland` flag for reliable Wayland support (#3989)
- [core] auto create release notes with every push on develop (#3985)
- [core] chore: simplify Wayland start script (#3974)
- [gitignore] restore the old Git behavior for the default modules (#3968)
- [core] configure cspell to check default modules only and fix typos (#3955)
- [gitignore] restoring the old Git behavior for the CSS directory (#3954)
- feat(core): add `server:watch` script with automatic restart on file changes (#3920)
- [check_config] refactor: improve error handling (#3927)
- refactor: replace `express-ipfilter` with lightweight custom middleware (#3917)
- refactor: replace `module-alias` dependency with internal alias resolver (#3893)
- Release 2.33.0 (#3903)

### [dependencies]
- [chore] update dependencies and min. node version (#3986)
- [core] bump dependencies into december (#3982)
- Bump actions/checkout from 5 to 6 (#3972)
- Update deps, unpin parse5 (#3934)
- [core] Update deps and pin jsdom to v27.0.0 (#3925)
- chore: update dependencies (#3921)
- update deps, exclude node v23 (#3916)
- remove eslint warnings, add npm publish process to Collaboration.md (#3913)
- feat: add ESlint rule `no-sparse-arrays` for config check (#3911)
- chore: bump dependencies into october (#3909)

### [logging]
- logger: add calling filename as prefix on server side (#3926)
- [logger] Add prefixes to most Log messages (#3923)

### [modules/alert]
- Add new pt and pt-BR translations for Alert module and update global PT strings (#3965)

### [modules/calendar]
- add checksum to test whether calendar event list changed (#3988)
- [calendar] fix: prevent excessive fetching on client reload and refactor `calendarfetcherutils.js` (#3976)
- [calendar] refactor: migrate CalendarFetcher to ES6 class and improve error handling (#3959)
- [calendar] Show `repeatingCountTitle` only if `yearDiff` > 0 (#3949)
- [tests] suppress debug logs in CI environment + improve calendar symbol test stability (#3941)
- [calendar] chore: remove `requiresVersion: "2.1.0"` (#3932)
- [calendar] test: remove "Recurring event per timezone" test (#3929)

### [modules/compliments]
- [compliments] refactor: optimize `loadComplimentFile` method and add unit tests (#3969)
- fix: set compliments remote file minimum delay to 15 minutes (#3970)
- [compliments] fix: duplicate query param "?" in compliments module refresh url (#3967)

### [modules/newsfeed]
- [newsfeed] fix header layout issue  (#3946)

### [modules/weather]
- [weatherprovider] update subclass language use override (#3914)
- [weather] fix wind-icon not showing in pirateweather (#3957)
- [weather] add error handling to weather fetch functions, including cors (#3791)
- remove deprecated ukmetoffice datapoint provider, cleanup .gitignore (#3952)
- fixes problems with daylight-saving-time in weather provider `openmeteo` (#3931)
- Fix for envcanada Provider to use updated Env Canada URL (#3919)
- [weather] feat: add configurable forecast date format option (#3918)

### [testing]
- testing: update "Enforce Pull-Request Rules" workflow (#3987)
- [core] refactor: replace `XMLHttpRequest` with `fetch` and migrate e2e tests to Playwright (#3950)
- [test] replace `node-libgpiod` with `serialport` in electron-rebuild workflow (#3945)
- [ci] Add concurrency to automated tests workflow to cancel outdated runs (#3943)
- [tests] migrate from `jest` to `vitest` (#3940)