On 2016-02-03 02:22, Ian Maxon wrote:
Thank you for the very detailed analysis Ate.
I'm working on addressing your comments, I'll issue a new RC in a few days
that should have everything in order.
As a side note, similar to the LICENSE comments, is it also
un-necessary/un-wanted to aggregate NOTICE(s) from artifacts which are
simply "copyright ASF" with no other notice content?
No. Those attributions are required, even if no (other) notice content is
provided (meaning: concerning additional notice attributions for 3rd party
resources *within* such other bundled ASF artifact).
The ASL 2.0 requires [1] to aggregate *any* bundled 3rd party NOTICE content,
for as much its content is relevant/valid with respect to what is bundled.
Only the standard ASF NOTICE 'boilerplate' (which is/should be the same for all
and thus already required for and provided by the aggregating artifact itself)
can be skipped.
But the "Apache <project name> Copyright [year(s)] ASF" is significant and
needs to be aggregated such that downstream consumers are made aware of their
usage of such (other) artifacts, conforming the ASL 2.0 license, and (thus)
also know what they have to acknowledge too on subsequent further distribution
(if/when done under ASL 2.0 license) themselves.
Ate
[1] http://www.apache.org/licenses/LICENSE-2.0 section 4.d
-Ian
On Sun, Jan 31, 2016 at 2:54 PM, Ate Douma <[email protected]> wrote:
On 2016-01-31 23:41, Ate Douma wrote:
Hi,
I've to vote -1 on this release candidate on incorrect NOTICE and LICENSE
files
in most -binary-assembly.zip distributions (asterix-external-data- is OK).
But what I forgot to say is that Ian has made *tremendous* progress in
getting
this right. I know how much effort this has been.
Well done Ian, and you've almost nailed it!
Ate
What is OK:
- all artifact names includes incubating
- all artifacts have DISCLAIMER file
- no unexpected binary files in source releases
- All source files contain Apache header, or are reasonable to be excluded
- Can compile from source
- most .jar artifacts LICENSE and NOTICE files are fine
However the following binary-assembly.zip files contain incorrect NOTICE
and
LICENSE files which "must be fixed" first (details below):
- hyracks-server-0.2.17-incubating-binary-assembly.zip
- textclient-0.2.17-incubating-binary-assembly.zip
- asterix-installer-0.8.8-incubating-binary-assembly.zip
- asterix-server-0.8.8-incubating-binary-assembly.zip
- asterix-yarn-0.8.8-incubating-binary-assembly.zip
In addition there are a few "should be fixed" (although not blockers), and
a bunch of recommendations I suggest to consider as well (may be done
in a later release as well).
Detailed comments per artifact:
* apache-asterixdb-hyracks-0.2.17-incubating-source-release.zip
asterix-0.8.8-incubating-source-release.zip
- Why not also use "apache-" prefix for the asterix source release as
well?
And shouldn't the latter be called asterixdb- instead of asterix- ?
* hyracks-server-0.2.17-incubating-binary-assembly.zip
- DISCLAIMER file claims this to be about "hyracks-server" (correct)
The NOTICE file says "Apache AsterixDB" (not incorrect, but not the
same).
Why not use "Apache AsterixDB hyracks-server" for both?
- Appended content to LICENSE file lists Apache Licensed 3rd party
artifacts.
While not wrong, ASL 2.0 licensed embedded 3rd party artifacts do not
require
to be mentioned in the LICENSE file, so better be left out in the
future.
(@Ian, I might have set you on the wrong foot for this specific case
through
our separate discussions, sorry)
- LICENSE file points to lib/junit-4.11.jar but lib/junit-4.8.1.jar is
bundled.
-> this should be fixed.
* textclient-0.2.17-incubating-binary-assembly.zip
- Wrong NOTICE and LICENSE files embedded!
Looks like these files are from/for asterix-installer?
This assembly needs its own NOTICE and LICENSE file!
-> this must be fixed
* asterix-app-0.8.8-incubating.jar
- Appended content in the LICENSE file incorrectly points to source
locations
like src/main/resources/webui/static/js/jquery.min.js instead of
distribution
locations like webui/static/js/jquery.min.js.
-> this should be fixed
* asterix-installer-0.8.8-incubating.jar
- Appended content in the LICENSE file for Apache Hadoop, which is ASL 2.0
licensed and thus unnecessary to reference (see above).
* asterix-installer-0.8.8-incubating-binary-assembly.zip
- LICENSE and NOTICE file mostly look good, but are missing coverage for
additional 3rd party artifacts under the embedded lib/ folder.
- Also note again the unnecessary references to ASL 2.0 licensed embedded
artifacts in the LICENSE file.
* asterix-server-0.8.8-incubating-binary-assembly.zip
- Wrong LICENSE and NOTICE files embedded.
These seems to be copied from asterix-installer. asterix-server needs
its
own NOTICE and LICENSE files.
-> this must be fixed
* asterix-yarn-0.8.8-incubating.jar
- Appended content in the LICENSE file referencing 3rd party resources
which
are not in asterix-yarn at all (copy/paste error?)
-> this should be fixed/cleaned up
* asterix-yarn-0.8.8-incubating-binary-assembly.zip
- Wrong LICENSE and NOTICE files embedded.
These seems to be copied from asterix-installer.
While asterix-yarn and asterix-installer share many/most embedded
artifacts,
the lib/ folder in asterix-yarn contains different (and more) other
artifacts
which also need to been covered by the LICENSE and NOTICE file.
-> this must be fixed
* Not needed (empty) artifacts (also their -sources variants).
Consider skipping these through maven-deploy-plugin configuration:
- hyracks-documentation-0.2.17-incubating.jar
- hyracks-integration-tests-0.2.17-incubating.jar
- hyracks-storage-am-bloomfilter-test-0.2.17-incubating.jar
- hyracks-storage-am-btree-test-0.2.17-incubating.jar
- hyracks-storage-am-lsm-btree-test-0.2.17-incubating.jar
- hyracks-storage-am-lsm-common-test-0.2.17-incubating.jar
- hyracks-storage-am-lsm-invertedindex-test-0.2.17-incubating.jar
- hyracks-storage-am-lsm-rtree-test-0.2.17-incubating.jar
- hyracks-storage-am-rtree-test-0.2.17-incubating.jar
- hyracks-storage-common-test-0.2.17-incubating.jar
- asterix-doc-0.8.8-incubating.jar
- asterix-server-0.8.8-incubating.jar
* hyracks piglet, textclient, texthelper and tpchclient artifacts.
- None of these have a hyracks- nor asterixdb- prefix in their name.
While not strictly required, this is not a good practice.
Preferably these artifacts should have a (apache-)(asterixdb-)hyracks-
prefix
in their artifactId.
See: http://incubator.apache.org/guides/releasemanagement.html#naming
and:
http://incubator.apache.org/guides/release-java.html#best-practice-naming
- Furthermore their Maven project name also better be given a
(asterixdb-)hyracks- prefix.
The latter will help to get more explicit wording in the generated
NOTICE and
DISCLAIMER files.
For example the DISCLAIMER for textclient current contains:
textclient is an effort undergoing incubation at the Apache Software
Foundation (ASF), sponsored by the Apache Incubator PMC.
which is not at all indicative which project this artifact belongs to
or
comes from.
* asterix lexer-generator and record-manager-generator maven plugins
- As with the hyracks examples above these do not have asterixdb- in
their name,
same comments apply as above.
Kind regards, Ate
On 2016-01-26 21:42, Ate Douma wrote:
Thanks Ian,
I don't have the time today or tomorrow for a review but likely on
Thursday,
Friday the latest.
Regards, Ate
On 2016-01-26 18:42, Ian Maxon wrote:
P.S, one thing I am forgetting :) Here are the source artifacts and most
prominent binary and source artifacts that are to be released, on the
Apache distribution svn rather than from the maven repository:
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/apache-asterixdb-hyracks-0.2.17-incubating-source-release.zip
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/apache-asterixdb-hyracks-0.2.17-incubating-source-release.zip.asc
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/apache-asterixdb-hyracks-0.2.17-incubating-source-release.zip.md5
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/asterix-0.8.8-incubating-source-release.zip
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/asterix-0.8.8-incubating-source-release.zip.asc
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/asterix-0.8.8-incubating-source-release.zip.md5
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/asterix-installer-0.8.8-incubating-binary-assembly.zip
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/asterix-installer-0.8.8-incubating-binary-assembly.zip.asc
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/asterix-installer-0.8.8-incubating-binary-assembly.zip.md5
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/asterix-yarn-0.8.8-incubating-binary-assembly.zip
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/asterix-yarn-0.8.8-incubating-binary-assembly.zip.asc
https://dist.apache.org/repos/dist/dev/incubator/asterixdb/asterix-yarn-0.8.8-incubating-binary-assembly.zip.md5
Thanks,
-Ian
On Mon, Jan 25, 2016 at 9:30 AM, Ian Maxon <[email protected]> wrote:
Hi all,
Please verify and vote on the second source and first binary release
for
AsterixDB! This is essentially the content of 0.8.7-incubating, with a
few
important bugfixes backported from master, and a much improved set of
LICENSE and NOTICE files in binary assemblies that will (hopefully) be
compliant with release guidelines.
The tags to be voted on are:
apache-asterixdb-hyracks-0.2.17-incubating-rc0:
commit: 4112bf370fac4479b404ca59ef83b3bb9485a4c7
link:
https://git-wip-us.apache.org/repos/asf?p=incubator-asterixdb-hyracks.git;a=commit;h=4112bf370fac4479b404ca59ef83b3bb9485a4c7
and
asterix-0.8.8-incubating :
commit: 753b4231a370cf36ec20a1124c71eeebbcbf9e92
link:
https://git-wip-us.apache.org/repos/asf?p=incubator-asterixdb.git;a=commit;h=753b4231a370cf36ec20a1124c71eeebbcbf9e92
The source artifacts, md5s and signatures for Hyracks and AsterixDB are
(respectively) at :
https://repository.apache.org/service/local/repositories/orgapacheasterix-1017/content/org/apache/hyracks/apache-asterixdb-hyracks/0.2.17-incubating/apache-asterixdb-hyracks-0.2.17-incubating-source-release.zip
https://repository.apache.org/service/local/repositories/orgapacheasterix-1017/content/org/apache/hyracks/apache-asterixdb-hyracks/0.2.17-incubating/apache-asterixdb-hyracks-0.2.17-incubating-source-release.zip.md5
https://repository.apache.org/service/local/repositories/orgapacheasterix-1017/content/org/apache/hyracks/apache-asterixdb-hyracks/0.2.17-incubating/apache-asterixdb-hyracks-0.2.17-incubating-source-release.zip.asc
and
https://repository.apache.org/service/local/repositories/orgapacheasterix-1018/content/org/apache/asterix/asterix/0.8.8-incubating/asterix-0.8.8-incubating-source-release.zip
https://repository.apache.org/service/local/repositories/orgapacheasterix-1018/content/org/apache/asterix/asterix/0.8.8-incubating/asterix-0.8.8-incubating-source-release.zip.md5
https://repository.apache.org/service/local/repositories/orgapacheasterix-1018/content/org/apache/asterix/asterix/0.8.8-incubating/asterix-0.8.8-incubating-source-release.zip.asc
The staged maven repositories with all of the proposed binary
artifacts to
be released can be found at:
https://repository.apache.org/content/repositories/orgapacheasterix-1017
for Hyracks
and
https://repository.apache.org/content/repositories/orgapacheasterix-1018
for AsterixDB
The KEYS file containing the PGP keys used to sign the release can be
found at
https://dist.apache.org/repos/dist/release/incubator/asterixdb/KEYS
RAT was executed automatically as part of the Maven builds for each of
these prepared release candidates. The only files excluded from the
check
are tests, procedurally generated, or sources that come without a
header
but have explicit mention in the LICENSE file.
The vote is open for 72hr, or until the necessary number of votes( 3
+1's)
has been reached.
Please vote:
[ ] +1 release these packages as Hyracks 0.2.17-incubating and
AsterixDB
0.8.8-incubating
[ ] 0 No strong feeling either way
[ ] -1 do not release these package(s) because ...