Robbie Gemmell created ARTEMIS-4048:
---------------------------------------

             Summary: stop the '-all' client modules grabbing their own 
-SNAPSHOT sources unnecessarily during build
                 Key: ARTEMIS-4048
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-4048
             Project: ActiveMQ Artemis
          Issue Type: Task
    Affects Versions: 2.26.0
            Reporter: Robbie Gemmell
            Assignee: Robbie Gemmell
             Fix For: 2.27.0


The three '-all' partial-shaded uber client modules can each unnecessarily 
download their own 6MB previously-shaded -SNAPSHOT sources from 
repository.apache.org while they are being built, if a sufficiently new copy 
isnt already in the maven local repo. Typically this will be if a developer 
hasnt 'mvn installed' yet in a day, or as much as every build in a CI env that 
doesnt cache prior installed snapshot output. Taking GHA CI jobs as example, 
where 4 builds occur for the various jobs for each run, it can thus grab about 
6x3x4=72MB of -SNAPSHOT sources unnecessarily on every push to a PR and/or main.

The cause is that the shading is producing a sources jar, which naturally 
incorporates the original module sources itself (though it has no real content, 
in this instance), but finds this has not been prepared yet before the shading 
occurs (the parent pom arranges it at a later phase) so it has to go looking 
and downloads it if it doesnt find something 'up to date enough' in the local 
repo. The remote version is the already-shaded 6MB output of a prior shading 
run, rather than the modules original basically-empty one.

The fix is to ensure the modules original [basically-empty] sources jar is 
always produced during the build, before the shading process, meaning it never 
needs to go looking for it and potentially then download it. Similarly, the 
modules original [basically empty] main jar should similarly always be created, 
so that the shading always operates on that, as opposed to potentially 
operating on the already-shaded renamed artifact output from a prior run, as it 
currently does if you dont do a mvn clean.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to