Plugin
- Plugin id: christmas-countdown
- Plugin version: 1.0.2
Describe the bug
Four of the plugin's ten configuration settings do nothing:
| Setting |
Default |
Schema says |
transition.type |
redraw |
One of redraw, fade, slide, wipe, dissolve, pixelate |
transition.speed |
2 |
"Transition speed (1=slow, 10=fast)" |
transition.enabled |
true |
"Enable or disable transitions" |
high_performance_transitions |
false |
"Use high-performance transitions (120 FPS) instead of standard (30 FPS)" |
manager.py is 615 lines and the string transition does not appear in it once, nor does high_performance.
I checked the core before concluding, in case transitions were a display-controller feature the plugin merely declared. They are not: every occurrence of "transition" under LEDMatrix/src/ is a comment about plugin state-machine transitions or Vegas-mode cycle boundaries. Nothing reads a transition config key, and there is no implementation of fade, slide, wipe, dissolve or pixelate anywhere.
Why it matters
The web UI presents a six-value dropdown and two more switches, all with descriptions promising specific visual behaviour. Choosing any of them changes nothing, with no warning and no log line — the most confusing possible failure mode, and 40% of this plugin's settings.
How I verified
Rendering with each of the six transition.type values produces byte-identical output:
frames=1: 1 distinct of 6
9fbfca281f ['redraw', 'fade', 'slide', 'wipe', 'dissolve', 'pixelate']
A single frame cannot show an animation, so that alone would not be conclusive — which is why I went to the source rather than stopping there.
Suggested fix
Two reasonable paths, and the choice is yours:
- Remove the four settings from
config_schema.json. Nothing can break, since no configuration using them works today. This is a schema removal so it would want a major bump, but the practical risk is nil.
- Implement them, if transitions between plugin screens are wanted — in which case it probably belongs in the core display controller rather than per-plugin, so every plugin benefits.
I have documented them as non-functional in #377 rather than removing them unilaterally, since six named transition types reads like deliberate design that may be waiting on implementation rather than an accident. Happy to do the removal if you would prefer it.
Plugin
Describe the bug
Four of the plugin's ten configuration settings do nothing:
transition.typeredrawredraw,fade,slide,wipe,dissolve,pixelatetransition.speed2transition.enabledtruehigh_performance_transitionsfalsemanager.pyis 615 lines and the stringtransitiondoes not appear in it once, nor doeshigh_performance.I checked the core before concluding, in case transitions were a display-controller feature the plugin merely declared. They are not: every occurrence of "transition" under
LEDMatrix/src/is a comment about plugin state-machine transitions or Vegas-mode cycle boundaries. Nothing reads atransitionconfig key, and there is no implementation offade,slide,wipe,dissolveorpixelateanywhere.Why it matters
The web UI presents a six-value dropdown and two more switches, all with descriptions promising specific visual behaviour. Choosing any of them changes nothing, with no warning and no log line — the most confusing possible failure mode, and 40% of this plugin's settings.
How I verified
Rendering with each of the six
transition.typevalues produces byte-identical output:A single frame cannot show an animation, so that alone would not be conclusive — which is why I went to the source rather than stopping there.
Suggested fix
Two reasonable paths, and the choice is yours:
config_schema.json. Nothing can break, since no configuration using them works today. This is a schema removal so it would want a major bump, but the practical risk is nil.I have documented them as non-functional in #377 rather than removing them unilaterally, since six named transition types reads like deliberate design that may be waiting on implementation rather than an accident. Happy to do the removal if you would prefer it.