Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [egit-dev] [jgit-dev] why does egit depend on a different "version" of the commons http then default eclipse?


On Thu, 1 Oct 2020 at 22:49, Matthias Sohn <matthias.sohn@xxxxxxxxx> wrote:
On Thu, Oct 1, 2020 at 6:20 PM Johan Compagner <jcompagner@xxxxxxxxx> wrote:
Hi,

if you download the default sdk that doesn't have egit you get 

org.apache.httpcomponents.httpclient_4.5.10.v20200114-1512.jar

this is the version of httpclient coming with the Orbit release R20200529191137 for Eclipse 2020-06 [1] 
This means it's outdated for Eclipse 2020-09 (JGit/EGit 5.9.0). JGit/EGit 5.8.0 was shipped with
Eclipse 2020-06 and comes with the versions which were current in the Orbit release for that
release of the simultaneous release.

but this is not true
at least now how eclipse works...
just download the basic sdk:


you will see 
 org.apache.httpcomponents.httpclient_4.5.10.v20200114-1512.jar
and
org.apache.commons.codec_1.13.0.v20200108-0001.jar


then download the one that has egit installed by default:


(java release that includes egit)
then you suddenly have in the plugins the above and:

org.apache.httpcomponents.httpclient_4.5.10.v20200830-2311.jar
org.apache.commons.codec_1.14.0.v20200818-1422.jar

So default eclipse didn't really move forward and egit did, so now we get everything doubled
(with the launch problem below)




besides that this is all duplicate, i also have suddenly when i build our product on top of 4.17 and the latest egit a problem when launching
I think that is a bug in the launch config checker because it complains that 1 code is not there (but it is checked, everything is checked)
i can work around it a bit by unchecking certain http stuff i think (didn't test this fully)

I don't understand this paragraph

image.png

see, the launch config has all (duplicate plugins) selected
but the validation still says that it is not ok.
I guess this is a bug in this validation stuff in eclipse for this launch.. (also when i try to run it warns me)

 
 
But can egit/jgit be fixed that they http feature is not depending on that specific http client but be more inline with the standard eclipse one?

JGit/EGit 5.9.0 do not depend on these exact versions but provide these versions in the JGit/EGit p2 repositories if you install the JGit/EGit 5.9.0
features form the EGit p2 repository and not from the release train p2 repository.

features always hard reference a exact version..
thats the problem (not related to this discussion but i really don't like this behavior in eclipse)

<feature
      id="org.eclipse.jgit.http.apache"
      label="%featureName"
      version="5.9.0.202009080501-r"
      provider-name="%providerName">

has

 <plugin
         id="org.apache.httpcomponents.httpclient"
         download-size="1015"
         install-size="2187"
         version="4.5.10.v20200830-2311"
         unpack="false"/>

so a hard version. and when using a target file you mostly really select features.

 
We do this to ensure a given JGit/EGit version always finds all dependencies it has if you install the features in the latest Eclipse release or in
an older one. JGit/EGit 5.9 still works on Eclipse Neon up to the current dev versions of Eclipse platform. We don't have the time to build and
test multiple versions of the JGit/EGit p2 repositories for different Eclipse releases hence we stick to the dependency versions which were current
in the Orbit release for the Eclipse platform release the respective JGit/EGit release was shipped with.

right but see above
this is not true, eclipse did not move.. eclipse has an older version
Or i must be missing something in my 2 downloads...
 

If you don't like that you can install the JGit/EGit bundles without using features and use whatever dependency versions are allowed
by the version ranges in the manifests of the jgit/egit bundles. Another option is to get them from the respective p2 repository of the
simultaneous release your are using. E.g. [4] for Eclipse 2020-06 and [5] for Eclipse 2020-09.

i will have a look if i can use this without features and purely by plugins. 

johan


Back to the top