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.