cstamas opened a new pull request, #32:
URL: https://github.com/apache/maven-install-plugin/pull/32

   Original plugin made hoops and loops, instead to perform what it needed to 
perform. Partly to blame this was unfinished state of MAT API (it was able to 
install project only).
   
   Installing project is needed in InstallMojo, but InstallFileMojo was forced 
to make hoops and loops due this, as it was passed one file (and maybe 
pomFile), and it was forced to create "fake" project, decorate and fake setup 
it with all whistle and bells, only to get it via MAT to resolver that would 
"decompose" it back into set of artifacts needing a deploy. So it went this 
file-artifact-project-artifact route, that made all the logic fragile and 
overly complicated.
   
   This PR completely reworks m-install-p making it (almost trivially) simple: 
it does what it needs to do, without any fuss, and does it in streamlined way: 
InstallMojo will create a list of artifacts out of project and pass it to 
repository system for deploy, while InstallFileMojo literally prepares just a 
deployment request,  nothing more. No fuss, no magic, no fake project building 
etc.
   
   Note: the code in AbstractInstallMojo may or may not need to be reusable, 
but definitely smells like some "Maven API-ish thing". 
   
   Problems: InstallFileMojo implicitly implemented ID validation (thru fake 
project building), and it revealed the problem that Maven ID (groupId, 
artifactId) and version validation is deeply buried into maven-model-builder 
and is NOT reusable at all, hence a light copy of logic (rules for ID allowed 
characters and version forbidden characters) are copied over here.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to