Skip to content
This repository was archived by the owner on Aug 11, 2025. It is now read-only.

Conversation

@Michael5601
Copy link
Contributor

@Michael5601 Michael5601 commented May 13, 2025

Most SVGs were added directly to the eclipse bundles which removes the need for maintaining icons in the images repository. This PR deletes all folders of Platform bundles in the images repository where all SVGs are existing and already copied directly to the specific bundle.

The following folders will be deleted:
org.eclipse.compare.win32
org.eclipse.compare
org.eclipse.help.ui
org.eclipse.team.ui
org.eclipse.ui.cheatsheets
org.eclipse.ui.console
org.eclipse.ui.intro.universal
org.eclipse.ui.intro
org.eclipse.ant.ui
org.eclipse.debug.ui
org.eclipse.ui.externaltools

Please note that folders of bundles where SVGs are still missing won't be deleted by this commit. All missing SVGs are tracked in this issue.

@Michael5601 Michael5601 changed the title Delete icon folders for Platform bundles Delete Icon Folders for Platform bundles May 13, 2025
@Michael5601 Michael5601 changed the title Delete Icon Folders for Platform bundles Delete Icon Directories for Platform bundles May 13, 2025
@vogella
Copy link
Contributor

vogella commented May 13, 2025

@BeckerWdf please decide

@Michael5601 Michael5601 force-pushed the Delete-Platform-Bundles branch from a93181e to 528efe1 Compare May 13, 2025 09:57
@BeckerWdf
Copy link
Member

Shouldn't we also delete the other corresponding folders e.g. the PNG folder?

@Michael5601
Copy link
Contributor Author

Michael5601 commented May 13, 2025

Shouldn't we also delete the other corresponding folders e.g. the PNG folder?

Yes makes sense. I deleted them too.

Most SVGs were added directly to the eclipse bundles which removes the need for maintaining icons in the images repository.
This commit deletes all folders of Platform bundles in the images repository where all SVGs are existing and already copied directly to the specific bundle.
The following folders will be deleted:
`org.eclipse.compare.win32`
`org.eclipse.compare`
`org.eclipse.help.ui`
`org.eclipse.team.ui`
`org.eclipse.ui.cheatsheets`
`org.eclipse.ui.console`
`org.eclipse.ui.intro.universal`
`org.eclipse.ui.intro`
`org.eclipse.ant.ui`
`org.eclipse.debug.ui`
`org.eclipse.ui.externaltools`

Please note that folders of bundles where SVGs are still missing won't be deleted by this commit.
@Michael5601 Michael5601 force-pushed the Delete-Platform-Bundles branch from 528efe1 to e4427b7 Compare May 13, 2025 11:26
@HeikoKlare
Copy link
Contributor

ftr: note that the removal was also discussed and agreed on in a recent developers community call: https://github.com/eclipse-platform/eclipse.platform.releng.aggregator/wiki/Eclipse-IDE-%E2%80%90-Developers-Community-Call#24th-april-2025

@laeubi
Copy link
Contributor

laeubi commented May 25, 2025

@HeikoKlare

Most SVGs were added directly to the eclipse bundles which removes the need for maintaining icons in the images repository.

I'm not sure they are here because they are "used" anywhere in platform but for others to allow copy them for their own plugins? So with the same argument we could basically delete all SVGs (because they are already at the platform repos).

So should we probably still keep them? e.g. at the moment one can build a bundle from the images and currently only the pngs are included:

<directory>eclipse-png</directory>

laeubi
laeubi previously requested changes May 25, 2025
Copy link
Contributor

@laeubi laeubi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We must include the SVGs then (and adjust the generated manifest to require the swt-svg feature)

@Michael5601
Copy link
Contributor Author

I'm not sure they are here because they are "used" anywhere in platform but for others to allow copy them for their own plugins? So with the same argument we could basically delete all SVGs (because they are already at the platform repos).

I would propose similar PRs for deleting all bundles step by step as soon as all missing SVGs for a bundle are created. These are just the first two (Platform and Platform UI).

@laeubi
Copy link
Contributor

laeubi commented May 26, 2025

Still the question why delete them? This will render the images bundle completely useless over time as it will be empty.

@HeikoKlare
Copy link
Contributor

As already mentioned, there were not arguments raised against removing the images here when discussing the topic in the community call.

In particular:

I'm not sure they are here because they are "used" anywhere in platform but for others to allow copy them for their own plugins? So with the same argument we could basically delete all SVGs (because they are already at the platform repos).

That would require us to keep this repository in sync with the actual bundles, but when Michael embedded the SVGs into the actual bundles, we found that this is currently not really the case. And I also don't see a benefit in investing the manual effort to do so.
I have to admit that I do not know what this repository is still useful for now that SVGs are embedded into the bundles. There is also the plug-in image browser that you can use to find and copy (up-to-date) images from platform bundles. Is there any drawback in using that one?

Otherwise I would like to know how we can ensure that this repository is in sync with the actual bundles. Some other thoughts on this:

  • Instead of removing the images, we could simply archive this repo to read-only state, so that everyone is aware that is documents some outdated state.
  • Generate the org.platform.images bundle in the aggregator build out of the actual bundles to always have an up-to-date state.

In any case, I don't see a benefit in preserving a repository with outdated data.

@laeubi
Copy link
Contributor

laeubi commented May 30, 2025

As already mentioned, there were not arguments raised against removing the images here when discussing the topic in the community call.

I'm not sure if in general agreement in the community call can be considered enough to remove project content. It should at least be discussed in some of the usual channels where feedback can be given at a later time (e.g. github discussions, mailinglist, issue, ...). In any way I was not aware of any such decision until it was mentioned here.

And at least for m2e some images are also stored here:

I also see some mylyn stuff:

so other projects have to be possibly made aware of this as well so the can take proper actions.

Instead of removing the images, we could simply archive this repo to read-only state, so that everyone is aware that is documents some outdated state.

Archiving the repository (probably with a reference to where stuff was moved), then a PR like this would simply be a matter of enhancing the readme with a note that these icons where moved and will no longer be maintained here (even though that I find it hard to image how to "maintain" multiple copies of the same SVG in different repositories why I would have preferred to have one source ... but it seems such things lacks much of interest).

@HeikoKlare
Copy link
Contributor

I'm not sure if in general agreement in the community call can be considered enough to remove project content. It should at least be discussed in some of the usual channels where feedback can be given at a later time (e.g. github discussions, mailinglist, issue, ...). In any way I was not aware of any such decision until it was mentioned here.

Okay, let me phrase it more precisely: in the community call several experienced people were present and no one brought up a reason why we should keep the images at multiple places. On the contrary, we agreed that maintaining multiple sources that are inconsistent already now makes so sense. That's why we agreed to start creating PRs for removing the images from this repo, also as a proposal that others can comment on, like you are doing now on this PR.

I have to admit that I did still do not find/understand any counterarguments. The images are now all present in the productive bundles. You can easily browse them with the image browser.

even though that I find it hard to image how to "maintain" multiple copies of the same SVG in different repositories why I would have preferred to have one source

Images are duplicated even in this repository and several are even outdated. So as said, one would first have to sync this repository with the actually used images and maybe also apply some deduplication to really have that benefit.

And at least for m2e some images are also stored here:
https://github.com/eclipse-platform/eclipse.platform.images/tree/master/org.eclipse.images/eclipse-svg/org.eclipse.m2e.core.ui/icons
I also see some mylyn stuff:
https://github.com/eclipse-platform/eclipse.platform.images/tree/master/org.eclipse.images/eclipse-svg/org.eclipse.mylyn.tasks.ui/icons
https://github.com/eclipse-platform/eclipse.platform.images/tree/master/org.eclipse.images/eclipse-svg/org.eclipse.mylyn.wikitext.ui/icons
so other projects have to be possibly made aware of this as well so the can take proper actions.

How are they different than other images? Mylyn has already merged Michael's PRs for directly integrating the SVGs:

And for m2e this is still pending:

Archiving the repository (probably with a reference to where stuff was moved), then a PR like this would simply be a matter of enhancing the readme with a note that these icons where moved and will no longer be maintained here

I would be fine with that approach. The initial intent was to use incremental removals also as a means of tracking which SVGs still need to be contributed to the productive bundles, but I think by now most or maybe even all of them have been contributed, so that we could just close/archive this repository as a whole.
@BeckerWdf what do you think about that proposal?

@merks
Copy link
Contributor

merks commented May 30, 2025

Archiving it seems better than gradually deleting things until it’s empty.

@laeubi
Copy link
Contributor

laeubi commented May 30, 2025

I have to admit that I did still do not find/understand any counterarguments. The images are now all present in the productive bundles. You can easily browse them with the image browser.

You mean one can browse them if the bundle is installed in Eclipse... And that's (at least my) main use-case, I want to reuse images of eclipse without using all the functionality the bundle contains. Soon one would need to install all possible bundles to find an image... And the problem of duplication is not solved and likely will not be addressed once the transition is done, so for me it has felt like the right time to address the issue instead of simply do the copy&paste like we did since 20year. And for me eclipse.images was always more than platform or some kind of technical thing we used to store some files.

Anyways its seems there is not much support for this idea so I forked the repo to be safe for what I need from it and my attempts to make it more general useful like in #149 and #148 are mostly not useful if the idea is to close the repo anyway (in whatever way).

@laeubi laeubi dismissed their stale review May 30, 2025 15:30

Irrelevant.

@merks
Copy link
Contributor

merks commented May 30, 2025

For what it’s worth I also often go icon shopping. It just seems that asking someone to maintain a repo for my shopping 🛒 is quite a bit to ask. And even in this repo they are spread across many folder.

@laeubi
Copy link
Contributor

laeubi commented May 30, 2025

For what it’s worth I also often go icon shopping. It just seems that asking someone to maintain a repo for my shopping 🛒 is quite a bit to ask. And even in this repo they are spread across many folder.

The repo description says "This repository contains icons to be used in eclipse platform." (possibly related as mylin+m2e) so I always assumed it as being "the source" for icons when writing eclipse plugins and we create/modify them here and the probably copy/update them to the target (what of course better would have been automated by some mean) but it seems I was wrong so sorry for confusion.

I just felt I should have mention that other people (independent from its primary usage) are probably using this repo as a source for their plugins as well to have some kind of similar L&F. That we have some duplication here was always assumed to be some kind of technical dept rather than a design decision to me... (therefore I opened a while back #81).

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants