MagicMirrorOrg/MagicMirror · warning

[calendar] Your are using the deprecated config values 'colo

Error message

[calendar] Your are using the deprecated config values 'coloredSymbolOnly'. Please switch to 'coloredSymbol' & 'coloredText'!

What it means

The calendar module warns when the legacy `coloredSymbolOnly` option is set. That single boolean has been superseded by the pair `coloredSymbol` and `coloredText`; the module maps coloredSymbolOnly to coloredText=false, coloredSymbol=true for compatibility, but the option is deprecated and will be removed.

Source

Thrown at defaultmodules/calendar/calendar.js:102

		/*
		 * The translations for the default modules are defined in the core translation files.
		 * Therefore we can just return false. Otherwise we should have returned a dictionary.
		 * If you're trying to build your own module including translations, check out the documentation.
		 */
		return false;
	},

	// Override start method.
	start () {
		Log.info(`Starting module: ${this.name}`);

		if (this.config.colored) {
			Log.warn("[calendar] Your are using the deprecated config values 'colored'. Please switch to 'coloredSymbol' & 'coloredText'!");
			this.config.coloredText = true;
			this.config.coloredSymbol = true;
		}
		if (this.config.coloredSymbolOnly) {
			Log.warn("[calendar] Your are using the deprecated config values 'coloredSymbolOnly'. Please switch to 'coloredSymbol' & 'coloredText'!");
			this.config.coloredText = false;
			this.config.coloredSymbol = true;
		}

		// Set locale.
		moment.updateLocale(config.language, CalendarUtils.getLocaleSpecification(config.timeFormat));

		// clear data holder before start
		this.calendarData = {};

		// indicate no data available yet
		this.loaded = false;

		// data holder of calendar url. Avoid fade out/in on updateDom (one for each calendar update)
		this.calendarDisplayer = {};

		this.config.calendars.forEach((calendar) => {
			calendar.url = calendar.url.replace("webcal://", "http://");

View on GitHub (pinned to 4b4a59534f)

Solutions

  1. Replace `coloredSymbolOnly: true` with `coloredSymbol: true` (and omit coloredText, or set coloredText: false)
  2. Ensure colored is not also set, which would override these values
  3. Re-check the calendar module documentation for the current option names after upgrading

Example fix

// before
config: { coloredSymbolOnly: true }
// after
config: { coloredSymbol: true }
Defensive patterns

Strategy: validation

Validate before calling

if ("coloredSymbolOnly" in calendarConfig) {
  console.warn("coloredSymbolOnly is deprecated: use coloredSymbol: true (and coloredText: false if needed)");
}

Type guard

function usesDeprecatedColoredSymbolOnly(cfg) {
  return typeof cfg === "object" && cfg !== null && "coloredSymbolOnly" in cfg;
}

Prevention

When it happens

Trigger: config.js calendar module config contains `coloredSymbolOnly: true`, hitting the Log.warn at defaultmodules/calendar/calendar.js:102 in start().

Common situations: Configs written when coloredSymbolOnly was introduced to show only colored symbols; copy-pasted example configs from older docs or forum posts after upgrading MagicMirror.

Related errors


AI-assisted analysis of MagicMirrorOrg/MagicMirror@4b4a59534f (2026-08-31). Data as JSON: /api/errors/9cdb0cc2fbce039b. Report an issue: GitHub.