k I'l be out later.  Have a quick minute.. Going to give you the weird hack 
that I used to get the releases out. (I think that if we have  Validate goal in 
the `release-profile` somewhere, there would be no need for the hack.

Wow i really wish I'd just rewritten all of this in gradle rather than hacking 
at the poms.

Could have learned something rather than being so two thousand and late.

```1. ack '14.1<' shoulld not have any pom entries for 
<version>1.4</version>.(ensure im still on a snapshot)  
2  mvn clean install -DskipTests -Papache-release release:prepare  (when 
prompted set the next development iteration to 14.1-SNAPSHOT,  
                                                                    and release 
candidate tag to mahout_2.11-14.1-RC5)  
3. mvn clean package -DskipTests -Papache-release release:perform (fails with a 
....."Basic element 'goals' must not contain child elements" error)  
4. mvn validate (read that the error above could have been due to a malformed 
pom -even extra whitespaces.  anyway Should be validated somewhere.)  
5. mvn validate pom.xml  (this actually deploys for some reason.. I'd imagine 
because the release plugin was already run, Just a guess in maven land),  
                         should be: mvn validate release:perform or `mvn 
validate Papache-release release:perform`  
                         also was a hail mary so maybe is totally incorrect,  
but this  
                         should will run the RAT plugin. )  

------------------------  artifacts have been deployed to Nexus.  Log into 
Nexus and check.-------------------------------------------  
        Change {scala.compat.version} to 2.12, change change ${scala.version} 
to 2.12.8.  
        Replace all instances of `_2.11` with `_2.12`. (I find IntelliJ global 
find/replace the easiest),  
        but e.g `sed -e (-i?) _2.11/2.12/g` (the correct, recursive command 
should do it, cant remember off the top of my head.).  Currently,  
        `change_scala_version.sh` is not working, same issue.. should be a 
quick fix. Something like:  
                               grep -rl _2.11 . | xargs sed -i 
's/_2.11/_2.12/g'.  
        Anyways you get the idea. Bump the scala version in all poms and for 
all modules.  
        `ack "_2.11"` - ensure version bump.  
----------------------------------------------------------------------------------------------------------------------------------------
  

6. git commit -am "(nojira)[release] modify scala versions across the project 
to _2.12 for 2.12 release"  
7. mvn clean install -DskipTests -Papache-release release:prepare (when 
prompted set the next development iteration to 14.2-SNAPSHOT,  
                                                                    and release 
candidate tag to mahout_2.12-14.1-RC5)  
13. mvn clean package install -DskipTests -Papache-release release:perform 
(fails with a ....."Basic element 'goals' must not contain child elements" 
error)  
14. mvn validate release:perform (deploys signed artifacts to nexus nexus dsets 
the SHA-1 and SHA-256)  
15. ack "14.1<"  
16. (if 16 shows 14.1-SNAPSHOT set by release) use: mvn -Papache-release 
versions:set -DnewVersion=14.2-SNAPSHOT  
17. find . | grep versionsBackup | xargs rm (cleanup all versions)  
18. mvn -Papache-release versions:commit  
19. git commit -a  
20  git push origin master```  
Andy's awesome hack release.

Reply via email to