eclipse-equinox / p2

Eclipse Public License 2.0
15 stars 41 forks source link

Remove unused distinction between Plug-ins and Fragments in products #378

Closed HannesWell closed 11 months ago

HannesWell commented 11 months ago

Remove unused distinction between Plug-ins and Fragments in .product files. There is no usage of a product's fragments in P2 or PDE. I also checked Tycho (5 but I assume it's the same for Tycho 4) and it never calls IProductDescriptor.getFragments() and calls IProductDescriptor.getBundles(boolean includeFragments) with includeFragments=true.

So it looks like this distinction is unused and can be removed too.

Consequently PDE support for adding a fragment attribute for fragments listed in a product file can be removed too and I will create a PR dedicated to that.

This was originally part of https://github.com/eclipse-equinox/p2/pull/368, but since the second part there needs some more adoptions in PDE I will postpone that but would like to land this for the December release.

laeubi commented 11 months ago

Consequently PDE support for adding a fragment attribute for fragments listed in a product file can be removed too and I will create a PR dedicated to that.

Never been aware of that one can switch it, I think its there for the same historic reasons it was added to features...

github-actions[bot] commented 11 months ago

Test Results

       9 files         9 suites   38m 21s :stopwatch: 2 180 tests 2 176 :heavy_check_mark:   4 :zzz: 0 :x: 6 630 runs  6 619 :heavy_check_mark: 11 :zzz: 0 :x:

Results for commit ff6b8a8d.

HannesWell commented 11 months ago

Consequently PDE support for adding a fragment attribute for fragments listed in a product file can be removed too and I will create a PR dedicated to that.

Never been aware of that one can switch it, I think its there for the same historic reasons it was added to features...

I assume the same about the history. You cannot explicitly set it. The PDE Product editor (currently) just adds a fragment attribute if a plugin is a fragment:

   <plugins>
      <plugin id="org.eclipse.core.net.win32" fragment="true"/>
      <plugin id="org.eclipse.pde.core"/>
   </plugins>

Here is the PDE pendant: https://github.com/eclipse-pde/eclipse.pde/pull/882

Its all internal API and adjustments seems minimal, maybe @merks has some concerns but from Tycho side we will simply adopt.

For Tycho I already started a commit locally to adapt to all the internal changes done in P2 in this release. I'll create a PR with that once the release is further down the ramp.

HannesWell commented 11 months ago

Created N&N entry for this: https://github.com/eclipse-platform/www.eclipse.org-eclipse/pull/84