-
Notifications
You must be signed in to change notification settings - Fork 127
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
[MRESOLVER-231] Extend smart checksum support #140
Conversation
...-transport-http/src/main/java/org/eclipse/aether/transport/http/DigestChecksumExtractor.java
Outdated
Show resolved
Hide resolved
This is a really nice and smart feature. Would be good to adjust the documentation at https://github.com/apache/maven-resolver/blob/master/src/site/markdown/configuration.md for |
Yup, I agree here. Doco is wrong, but this (Nexus2 exclusive) feature was present since eons in resolver (former Sonatype Aether), and this PR merely refactors it and makes it extensible. All former resolver releases supported this (but exclusively for Nexus2). and this PR makes it more universal, extensible. |
14ad4b2
to
9d8395d
Compare
969e5b1
to
8c81a5a
Compare
8c81a5a
to
53f783d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This entire smart checksum notion needs to be named to included, since this is how it is named in the code and nothing is smart here.
The config property will be deprecated and replaced with a new one.
...r-transport-http/src/main/java/org/eclipse/aether/transport/http/HttpTransporterFactory.java
Outdated
Show resolved
Hide resolved
...ansport-http/src/main/java/org/eclipse/aether/transport/http/XChecksumChecksumExtractor.java
Show resolved
Hide resolved
abb3899
to
116545d
Compare
...resolver-transport-http/src/main/java/org/eclipse/aether/transport/http/HttpTransporter.java
Outdated
Show resolved
Hide resolved
Generalize it and make it pluggable. Also, make it work with major targets like Maven Central.
22e421e
to
3a0fc02
Compare
Refactor and make it pluggable. Also, make it work with Maven Central.
This change broadens "smart checksum" support in Resolver, and
gets them from HTTP response header, if present. So far only
Nexus2 was supported, but this now adds more implementations,
so for example Central is supported now as well, hence, to
download a JAR from Central will now take only 1 HTTP request
and not 2, that effectively halves count of HTTP requests done
today against central as well.
This change improves transport-http only, Wagon transport is
a big burden of layers of layers of abstraction of abstraction above
and am unsure how to do this there.
High level changes:
ChecksumExtractor
component and provide OOTB 3 implementations for it (the nexus2 was inlined, this is like "factor out nexus2" + add 2 more)https://issues.apache.org/jira/browse/MRESOLVER-231