MagicMirrorOrg/MagicMirror · info
https://docs.magicmirror.builders/modules/calendar.html#conf
Error message
https://docs.magicmirror.builders/modules/calendar.html#configuration-options
What it means
This is the companion documentation link logged immediately after the calendar auth deprecation warning (error 47). The module emits Log.warn with the URL to the official calendar configuration docs so users can find the current auth option syntax. It is informational, not a failure.
Source
Thrown at defaultmodules/calendar/calendar.js:145
selfSignedCert: calendar.selfSignedCert,
excludedEvents: calendar.excludedEvents,
fetchInterval: calendar.fetchInterval
};
if (typeof calendar.symbolClass === "undefined" || calendar.symbolClass === null) {
calendarConfig.symbolClass = "";
}
if (typeof calendar.titleClass === "undefined" || calendar.titleClass === null) {
calendarConfig.titleClass = "";
}
if (typeof calendar.timeClass === "undefined" || calendar.timeClass === null) {
calendarConfig.timeClass = "";
}
// we check user and password here for backwards compatibility with old configs
if (calendar.user && calendar.pass) {
Log.warn("[calendar] Deprecation warning: Please update your calendar authentication configuration.");
Log.warn("https://docs.magicmirror.builders/modules/calendar.html#configuration-options");
calendar.auth = {
user: calendar.user,
pass: calendar.pass
};
}
/*
* tell helper to start a fetcher for this calendar
* fetcher till cycle
*/
this.addCalendar(calendar.url, calendar.auth, calendarConfig);
});
// for backward compatibility titleReplace
if (typeof this.config.titleReplace !== "undefined") {
Log.warn("[calendar] Deprecation warning: Please consider upgrading your calendar titleReplace configuration to customEvents.");
for (const [titlesearchstr, titlereplacestr] of Object.entries(this.config.titleReplace)) {
this.config.customEvents.push({ keyword: ".*", transform: { search: titlesearchstr, replace: titlereplacestr } });View on GitHub (pinned to 4b4a59534f)
Solutions
- Open https://docs.magicmirror.builders/modules/calendar.html#configuration-options and migrate to the auth option
- Fix the config per error 47 and both warnings disappear
- Treat any bare-URL log lines as pointers to documentation, not errors to suppress
Example fix
// no code change needed for this line itself; resolve by fixing the auth config:
// before
{ url: "...", user: "bob", pass: "secret" }
// after
{ url: "...", auth: { user: "bob", pass: "secret" } } Defensive patterns
Strategy: validation
Validate before calling
// no pre-check needed; this Log.warn accompanies the auth deprecation (error 47). // Fixing the auth config silences it.
Prevention
- Read accompanying docs URLs in warnings before searching forums
- Fix the root cause (inline credentials) rather than muting the log
- Keep docs.magicmirror.builders bookmarked for option changes
When it happens
Trigger: Same condition as error 47: a calendar entry with top-level user and pass causes two consecutive Log.warn calls, the second being the docs URL at defaultmodules/calendar/calendar.js:145.
Common situations: Appears in logs when auditing startup output after an upgrade; often surfaces when users report 'strange URL warnings' in the MagicMirror log.
Related errors
- [calendar] Your are using the deprecated config values 'colo
- [calendar] Your are using the deprecated config values 'colo
- [calendar] Deprecation warning: Please update your calendar
- [calendar] Deprecation warning: Please consider upgrading yo
- [weather] Deprecation warning: Your are using the deprecated
AI-assisted analysis of MagicMirrorOrg/MagicMirror@4b4a59534f (2026-08-31).
Data as JSON: /api/errors/85151e1b5e0ba568.
Report an issue: GitHub.