Am Mittwoch, den 30.12.2020, 16:24 -0600 schrieb Eric Bresie: > > > > Oracle formally donated the code. Donation in this case means, that all > > copyrights are transfered to the ASF and thus the ASF is free to apply > > any license it sees fit. > > > > At this time the correct license is the Apache License 2.0. The right > > header would then be: > > > > * Licensed to the Apache Software Foundation (ASF) under one > > * or more contributor license agreements. See the NOTICE file > > * distributed with this work for additional information > > * regarding copyright ownership. The ASF licenses this file > > * to you 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. > > > > This can be found in neary every file on the repository. > > > > > => SO if there are existing licenses from Oracle and/or any others (i.e. > JYTHON, nbPython licenses, etc.), these can be stripped and replaced or > should the Apache replace the Oracle and any other such licenses left? >
Licenses from Oracle can be directly replaced, if there are files found, that are not owned by oracle, more analysis is required. See the "Convert" Tool, this might help with the correct mostly automatic translation: https://github.com/apache/netbeans-tools/blob/master/convert/src/convert/Convert.java This is part of the netbeans-tools repository: https://github.com/apache/netbeans-tools/ And the whole project is here: https://github.com/apache/netbeans-tools/tree/master/convert > > The general way (and maybe a reason to redo the PR) is: > > > > - Get the file(s) oracle donated > > > => I got most of the files from the hg.netbeans.org repository so assume > most of this is good. No - if you got them from hg.netbeans.org they are bad and must not be used. hg.netbeans.org holds the GPLv2/CDDL sources from oracle and was not donated as a whole. Only the donated sources are a valid basis for integration. We have the zips, the hashes and when integration happens it needs to be verified, that the new files are indeed taken from that zip. We can't take random source code and integrate that. > - Extract the files you want to integrate and document > > how it can be verified, that the files came that donated > > file > > > => However there were a few files missing from the hg repository which were > available in the "maven-ized" version of the python code base. I've > included those as well to get things to compile but not sure if these are > "donated" or not. Where does this code come from? The author of the new code is free to donate his changes, but no, it can't be integrated together with the oracle code in one single commit, but must be identifiable. > The files in question included > (1) a "coverage.py" script for "test coverage" purposes. See > https://github.com/nedbat/coveragepy . I think this may be available > as > some form of node.js type modules so not sure if maybe this could be > another type of "external" component to download during prep for the > build > (2) The package org.netbeans.modules.python.source.scopes related > files > (3) MiscState and related files > > How should these be handled? Broad question - no idea without looking deeper into it. The idea to extract foreign files sonds sane though. We have some code that is ALv2 licensed, but not donated. This can be done, but should be avoided. This should cover (1). For (2) + (3) no idea without some more description. > > - Create an orphan branch (a branch without a parent), > > add the extracted files to this branch and document > > in that file how the files and from where the files > > came from > > > > => Silly question, but how do you create a "branch without a parent"? > > I forked from apache\netbeans -> ebresie\netbeans then created a python > (branch) from that with periodic upstream (from apache\netbeans) fetches > and merges into my fork and into the branch to try to keep up. # change into the directory of the repository cd <repository> # create orphan branch git checkout --orphan nbpython_integration # remove all files git rm -rf . # if necessary remove all remaining files, ls + rm -rf should do it # Check that the directory is empty and nothing is still present ls git status # both should report nothing => Now you have an empty branch inside the netbeans repository, where the new files can be easily identified. > > - Do the license clean up > > > => This is the big part inwork now. > > I'm trying to use the License Changer Plugin (from 8.2 plugin site - see > http://plugins.netbeans.org/plugin/17960/license-changer ) but when > attempting after selecting the unpack200.exe (which is apparently no longer > available in java 15) and selecting the folder in question in file, during > "Preview" pane in the wizard, it keeps showing the Before and After with > the After showing "Canceled" without any apparent changes. Tim any ideas > on this or any updates on this plugin? See the netbeans-tools repository for an alternative (description above). > > > - Get approval from PMC for integration of this massive > > branch into master > > > => Assume PR then continue discussion here for that or is there some > other process needed? For an integration of this size I would suggest a vote about the integration, that makes it official and people will be woken up. HTH Matthias --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@netbeans.apache.org For additional commands, e-mail: dev-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists