You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mahout.apache.org by Andrew Palumbo <an...@msn.com> on 2020/01/23 14:07:39 UTC
Small refactor for RC4
Hey all,
While fixing a few missing artifacts from the source distribution, I finally found the apache-release profile instructions [1]. It clarifies the Apache naming and prefrred project structure.. I have https://github.com/apache/mahout/pull/389 open to work on it a relatively minor refactor to get us in line with the suggested structure.
Essentially the #389 refactors the
distribution_${scala.compat.version}/
module into a single dist/
module with no scala version appended (both 2.11 and 2.12 distribution artifacts). this due to some automatic mirroring script which picks up distribution releases from the dist/release folder [1] on the apache server and copies it to mirrors.. Still need to ensure that the artifacts are signed properly when uploaded. [1] is possibly out of date however i did see this mentioned on other projects.. by using a dist/release directory for the full tarballs, Mahout 14.1 bin and src distributions will be downloadable from https://dist.apache.org/repos/dist/.
This will give us a final structure of:
├── bin
| |___mahout
|
├── community
| \__mahout-spark-cli-drivers_2.11
| \__mahout-spark-cli-drivers_2.12
|
├── core_2.11
|____core_2.12
|
├── dist
| \___release
| |___apache-mahout-14.1_2.11-bin.tar.gz
| |___apache-mahout-14.1_2.11-bin.tar.gz.asc
| |___apache-mahout-14.1_2.11-bin.bz2
| |___apache-mahout-14.1_2.11-bin.bz2.asc
| |___apache-mahout-14.1_2.11-src.tar.gz
| |___apache-mahout-14.1_2.11-src.tar.gz.asc
| |___apache-mahout-14.1_2.11-src.bz2
| |___apache-mahout-14.1_2.11-src.bz2.asc
|
├── engine
| \___mahout-hdfs_2.11
| \___mahout-hdfs_2.12
|
| \___mahout-spark_2.11
| \___mahout-spark_2.12
|
├── examples
| \___bin
| |___current_examples.sh
| \___resources
|
├── lib
| \___all_mahout-14.1_2.11.jars
| \___all_mahout-14.1_2.12.jars
|
|── website
|
├── pom.xml
That will be essentially the tree that will be available on nexus. There is no clear guide on how best to release a cross compiled build, but i think that this should be fine. previously artifacts have shown in nexus correctly:
To test, I have used:
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-core_${scala.compat.version}</artifactId>
<version>14.1</version>
</dependency>
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-hdfs_${scala.compat.version}</artifactId>
<version>14.1</version>
</dependency>
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-spark_${scala.compat.version}</artifactId>
<version>14.1</version>
<classifier>tests</classifier>
</dependency>
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-spark_${scala.compat.version}</artifactId>
<version>14.1</version>
</dependency>
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-spark-cli-drivers_${scala.compat.version}</artifactId>
<version>14.1</version>
</dependency>
When the artifacts were staged for RC3. Per [3], It seems that we must have an SCM tag on each pom:
Staging a release (1) preparing poms (3):
(3) "Verify that all pom.xml files have an SCM definition." [3]
I'd added these in previously but thought I'd had an issue. Adding them in now before RC4.
I wanted to outline some of the changes that might seem odd. Any suggestions/comments/criticisms are welcome.
Thanks all,
I hope to have RC4 out shortly.
[1] https://www.apache.org/dev/release-publishing#distribution
[2] https://www.apache.org/dev/publishing-maven-artifacts.html#publish-snapshot
[3] https://www.apache.org/dev/publishing-maven-artifacts.html