Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Renaming icons visually break applications which depend on them #6733

Closed
henon opened this issue Aug 1, 2022 · 3 comments
Closed

Renaming icons visually break applications which depend on them #6733

henon opened this issue Aug 1, 2022 · 3 comments
Labels
Question Question from a user.

Comments

@henon
Copy link

henon commented Aug 1, 2022

Where are you experiencing this bug?

materialdesignicons.com

What is the issue you are experiencing?

Somebody renamed the icon desktop-mac-dashboard to monitor-dashboard which visually broke a web application of mine which depended on the desktop-mac-dashboard icon via a JS library. These breaks are silent and will only be discovered when users complain that they don't see buttons any more which used that icon.

It is not a big deal in this case but it would be great if there were a policy that icons are either never renamed or when they are, the icon will still be served under the old name (and maybe hidden on materialdesignicons.com ).

Please consider ensuring backwards compatibility when renaming icons or disallow renaming icons.

@henon henon added the Bug A bug in an icon glyph or a first-party library. label Aug 1, 2022
@JamesCoyle
Copy link
Collaborator

JamesCoyle commented Aug 1, 2022

All of our releases come with changelogs. Make sure to read them before you update.

https://dev.materialdesignicons.com/changelog

@Templarian Templarian added Question Question from a user. and removed Bug A bug in an icon glyph or a first-party library. labels Aug 1, 2022
@henon
Copy link
Author

henon commented Aug 1, 2022

No package update was involved. Some libraries get the icons directly from materialdesignicons.com at runtime so stopping to host a specific icon (by changing its name) simply breaks existing applications. Please keep that in mind, that is all I am asking.

@mririgoyen
Copy link
Sponsor Collaborator

visually broke a web application of mine which depended on the desktop-mac-dashboard icon via a JS library.

You stated that the library is included via our JS library. The only way that updates is if someone manually updates it. We just released a major version update, v7, which included breaking changes. As @JamesCoyle stated, it is important your read our changelog before every upgrade of MDI. We do not follow semver, so breaking changes can technically happen at any point. However, we try our best to clump all breaking changes together on the major version increase. Additionally, as we approach a major release, we always pin an issue several months before the release to prepare people who intend on upgrading.

If for some reason you were mistaken and the application you depend on is using the CDN for webfont delivery, it is important you are not using latest, but pinning to a specific version. If you are using the latest tag, such as:

https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css

...anytime we release a new version, you'll immediately get it, which can include breaking changes before you have had a chance to update your code.

Also as a side note, if you are using the webfont, please consider getting off of it as soon as possible.


All that being said, we will continue to improve and grow the library. This will include removal of icons for various reasons and renaming of icons. If you need backwards compatibility, it is the responsibility of the application to handle this translation layer when updating. For example, Home Assistant does this very well, preserving old icons for two releases.

@mririgoyen mririgoyen closed this as not planned Won't fix, can't repro, duplicate, stale Aug 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Question Question from a user.
Projects
None yet
Development

No branches or pull requests

4 participants