Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding licenses and enable apache-rat-plugin. #6215

Merged
merged 7 commits into from
Sep 18, 2018
Merged

Conversation

b-slim
Copy link
Contributor

@b-slim b-slim commented Aug 22, 2018

This PR Adds Apache rat plugin as part of mvn build to check all the licenses as part of verify goal.
Also adds licenses to Misc files.
Fixes Issue #5665.

b-slim and others added 2 commits August 22, 2018 14:14
Change-Id: I4685a2d9f1e147855dba69329b286f2d5bee3c18
… ones

Change-Id: I2a9efde6f4b984bc1ac90483e90d98e71f818a14
@b-slim
Copy link
Contributor Author

b-slim commented Aug 22, 2018

Although am not sure about 94dd5e5
Anyone has an idea about what this licenses is ? and if it is Kosher from an Apache perspective?

Copy link
Contributor

@gianm gianm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @b-slim!!

I commented on a few files that I think need some work. The ones I didn't comment on looked ok to me.

@@ -1,3 +1,21 @@
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This header isn't accurate, see discussion on #5835 (comment). I think the policy on https://www.apache.org/legal/src-headers.html#3party guides us regarding what to do here.

The CONCISE libraries definitely sound like third-party since they are "work submitted directly to the ASF for which the submitter is not the copyright owner or owner's agent". So, we're not supposed to modify the original license headers. Checking out metamx/extendedset@02366f1#diff-33bd87cac0991642db64c5259e881ae0R41, this file was originally copied from another file ConciseSet.java, which had the following license header. I think we should start from this one.

 /* 
  * (c) 2010 Alessandro Colantonio
  * <mailto:colanton@mat.uniroma3.it>
  * <http://ricerca.mat.uniroma3.it/users/colanton>
  *  
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */

But also, the Apache license says "You must cause any modified files to carry prominent notices stating that You changed the files". So I think we should modify the header to add that parts of it are also licensed to ASF (i.e. the parts that were changed after Alessandro wrote the original version). Maybe something like this will get the point across.

 /* 
  * (c) 2010 Alessandro Colantonio
  * <mailto:colanton@mat.uniroma3.it>
  * <http://ricerca.mat.uniroma3.it/users/colanton>
  *
  * Modified at the Apache Software Foundation (ASF).
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
  *     http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */

@@ -1,3 +1,21 @@
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comment as for ConciseSetUtils.

@@ -1,3 +1,21 @@
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I went and double-checked this file. It was contributed in #5440 by @njhartwell, and it looks like he authored this file and intended to contribute it. So I think we are good to add this header.

@@ -1,3 +1,21 @@
<!--
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This (and the other Hadoop XMLs) are probably derivative works of the examples provided by Apache Hadoop. However, since it's another ASF project I think we are okay here, given the policy on https://www.apache.org/legal/src-headers.html#headers.

@@ -1,3 +1,18 @@
# Licensed to the Apache Software Foundation (ASF) under one or more
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This comes from https://github.com/sequenceiq/hadoop-docker so the header here is probably not right. That is a third party work (https://www.apache.org/legal/src-headers.html#3party). The original file didn't have a license header, but it was distributed along with an Apache 2.0 LICENSE file, so I think it's clear that the original file is Apache licensed.

I don't see a clear policy about what to do here, but maybe a header like this will get the point across. It's the non-ASF version of the Apache 2.0 header with an extra sentence at the top.

# Based on the SequenceIQ hadoop-docker project hosted at
# https://github.com/sequenceiq/hadoop-docker, and modified at
# the Apache Software Foundation (ASF).
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# 
#     http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

@@ -1,24 +1,19 @@
/*
* File: jquery.dataTables.js
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can't change a license header like this. The policy on https://www.apache.org/legal/resolved.html says that 3-clause BSD is OK to include, though. So I guess we should keep this header the way it is and add an exception to rat. If possible, the exception should be scoped to just this file.

@gianm gianm added the Apache Items related to being a part of the ASF label Aug 23, 2018
@gianm gianm added this to the 0.13.0 milestone Aug 23, 2018
Change-Id: I49805c47dd527affe3ad0ae02747c1828a9e6847
@jon-wei
Copy link
Contributor

jon-wei commented Sep 14, 2018

@b-slim can you update and resolve conflicts?

@gianm
Copy link
Contributor

gianm commented Sep 17, 2018

@b-slim are you able to continue working on this?

Change-Id: Ia15f4b536c66390eaa6cbb98ec62885798dda73f
Change-Id: I0256c930b7f9a5bb09b44b5e7a149e6ec48cb0ca
Change-Id: I1355e8a2549e76cd44487abec142be79bec59de2
Change-Id: I70bc47ecb577bdf6b91639dd91b6f5642aa6b02f
@b-slim
Copy link
Contributor Author

b-slim commented Sep 17, 2018

@gianm thanks for review can you please recheck this.

@b-slim b-slim self-assigned this Sep 17, 2018
Copy link
Contributor

@gianm gianm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @b-slim! This LGTM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Apache Items related to being a part of the ASF
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants