Unify icon contributions and clarify supported formats#450
Conversation
willingc
left a comment
There was a problem hiding this comment.
Looks good. Seems to have a circular import that in the tests.
|
Since it's not reused, I just moved the validator to the model where it's needed. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #450 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 37 37
Lines 2795 2802 +7
=========================================
+ Hits 2795 2802 +7 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
| PluginManifest(name="myplugin", icon="my_plugin:myicon.png") | ||
| pm = PluginManifest(name="myplugin", icon="my_plugin:myicon.png") | ||
| assert pm.icon == "my_plugin:myicon.png" | ||
| pm = PluginManifest(name="myplugin", icon="https://example.com/icon.png") |
There was a problem hiding this comment.
I don't think that we should allow remote icons in plugins. This is a big privacy issue.
There was a problem hiding this comment.
Actually, this is a really important point, it let's someone track things, like the 1px by 1px white image in your emails.
There was a problem hiding this comment.
Ok, I agree. I was just trying to keep previous "behaviour" :)
|
Ok, urls no longer accepted. |
This PR aims to unify a bit the manifest regarding icons, and to bring it more in line with what the underlying app-model accepts.
We actually "officially" support more things than appmodel (e.g: https urls), and I'm not sure whether we plan to keep these and handle the extra logic ourselves or what else to do. At least with this we start supporting dark/light for all icon fields.