You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Michael Osipov (JIRA)" <ji...@apache.org> on 2015/09/06 22:51:58 UTC

[jira] [Closed] (WAGON-44) Add support for downloading and uploading JARDiff-ed Maven artifacts

     [ https://issues.apache.org/jira/browse/WAGON-44?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael Osipov closed WAGON-44.
-------------------------------
    Resolution: Auto Closed

This issue has been auto closed because it has been inactive for a long period of time. If you think this issue still applies, retest your problem with the most recent version of Maven and the affected component, reopen and post your results.

> Add support for downloading and uploading JARDiff-ed Maven artifacts
> --------------------------------------------------------------------
>
>                 Key: WAGON-44
>                 URL: https://issues.apache.org/jira/browse/WAGON-44
>             Project: Maven Wagon
>          Issue Type: Improvement
>          Components: New Wagons
>            Reporter: Cédric Vidal
>
> I originally posted this idea in the MRM project but realized that it could nicely be applied to all wagons.
> It would save bandwith, accelerate artifact downloading and enhance the maven 2 experience to use the same JARDiff algorithm as the one used in the JnlpDownloadServlet which is fully documented here:
> http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/downloadservletguide.html
> The idea is to download (or upload) the incremental updates to a JAR instead of the full JAR.
> There is already support for this algorithm in the maven community in the JNLP related Maven Webstart Plugin:
> http://mojo.codehaus.org/webstart-maven-plugin-parent/webstart-maven-plugin/
> Here a possible scenario for upload and download:
> - UPLOAD: Given that version 1.1 of my-artifact-1.1.jar is already deployed and that I deploy version 1.2 of that same artifact:
>     - upload my-artifact-1.2.jar
>     - download my-artifact-1.1.jar
>     - compute JARDiff between my-artifact-1.1.jar and my-artifact-1.2.jar
>     - upload the jardiff
> - DOWNLOAD: Given that I already have version 1.1 of my artifact locally and that I want version 1.2 and that the JARDiff between versions 1.1 and 1.2 exists on the remote repository:
>     - download JARDiff between my-artifact-1.1.jar and my-artifact-1.2.jar
>     - generate my-artifact-1.2.jar locally  by applying the JARDiff to my-artifact-1.1.jar
> If the JARDiff doesn't exist, no problem, just download the whole my-artifact-1.2.jar
> Today's repositories stay valid, the JARDiffs informations are used only when available. The drawback for static maven 2 repositories is the increase in disk storage required to store the JARDiffs. In MRM repositories, the JARDiff could be dynamically generated on demand.
> Cheers



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)