-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Build is forcing all contributions to be copyrighted to Codenvy #3281
Comments
@gorkem
|
@tolusha but it means that all companies will be facing this issue while contributing to the project and will need to configure excludes for every single change. Why there should be a check of copyright owner at all ? AFAIK, according to the Eclipse rules the one who creates a file put the copyright owner in the license header. Other contributors that make changes in the file should add info in the "Contributors" section. |
@ibuziuk There is an Eclipse foundation requirement to have license on all files. We did that with mycila license-maven-plugin. If you know how better it can be configured please introduce new PR. I have only one rule - it have to be done automatically with maven. Without automation this requirement is hard to achieve. |
@skabashnyuk fair enough ;-) I will work on this issue |
@ibuziuk take a look at http://www.mojohaus.org/license-maven-plugin/ it looks like it has better configuration options. |
@skabashnyuk yup, I have seen this upstream issue. IMO it is a bit different from what we are trying to achieve - {INITIAL COPYRIGHT OWNER} should be any company |
After some investigation I came to the conclusion that what we are trying to achieve is not possible to configure via mycila plugin. It is doable with mojohaus one though. BUT... there are a few things that should be taken in consideration:
The good thing here is that plugin validates only "License" part - "Copyright" part can be changed safely. However, because of the plugin's Header Model ( #%L - start of the header / #L% - end of the header) copyrights on all files in the Che project would be treated as absent and must be regenerated.
The fact that changing copyrights on all existing files is required makes using this plugin of little avail for our case. |
@ibuziuk can you show me java file before and after? |
@skabashnyuk I have created a test project while playing with this mojohaus plugin - https://github.com/ibuziuk/license-demo Here is how the java file looks like after executing license:update-file-header goal - https://github.com/ibuziuk/license-demo/blob/master/src/main/java/com/ibuziuk/App.java ("before" state is the same file without license header) Other files look the following way after executing this goal - https://github.com/ibuziuk/license-demo/tree/master/src/resources As you can see, license header was not added to some files (Dockerfile, ts, svg) because plugin simply does not support those extensions. The list of supported extensions can be retrieved by executing license:comment-style-list
Assuming that the plugin does not support custom mapping (extension -> comment type) mechanism, Unsupported files would have to be updated manually. |
That's is not quite what I expect. Second: in addition to *.java, *.xml license plugin now checks *.svg, *.ts, *.go - it have to be automated too. Project is too large to make some checks manually. |
@skabashnyuk sorry, do not really understand what exactly should be confirmed :(
svg, ts, go are not supported extensions. It is easy to contribute to the upstream project though (I have contributed ts support already). My main concern about using this plugin, apart from ugly special characters, is the fact that headers on all files in the Che project would be treated as absent and must be regenerated after license plugin switch. |
I may looks like "bookworm" but license should be 100% identical to current as described here https://eclipse.org/legal/copyrightandlicensenotice.php |
@skabashnyuk in this case mojohause plugin does not suits. Here is the diff:
The other solution would be contributing to mycila plugin (support of wildcards / range). Need to investigate how difficult would it be |
You may ask license@eclipse.org directly. Not sure that it will be faster when contribute to mycila plugin. |
@skabashnyuk apart from the fact that headers are not identical, are you ok with switching from mycila plugin to mojohaus one (taking in consideration all drawbacks) ? Basically, some eclipse projects use this plugin for handling headers[1], so I do not think this style is prohibited by foundation (IMO only license itself matters, not the style). I would not mind asking Eclipse IP directly about the plugin, but if we are not going to use it I see no sense in doing this. So, it would be great to hear your opinion on this matter first |
BTW, I have provided patches for svg & go support which have been already merged |
@skabashnyuk apart from the fact that the mojohaus license formatting might not be accepted by Eclipse Legal department, are you ok with using it ? Just trying to figure out what our strategy is:
|
Name of the plugin is not important. It can be a fork of mycila plugin or any other plugin what can check license. It's easy to approve build tools in Eclipse organization.
Ideally but not mandatory it should be possible to configure Codenvy proprietary license like this |
@skabashnyuk I wrote to license@eclipse.org and got clarification from Mike Milinkovich that new license format is valid for Eclipse Foundation:
For now not all formats are supported by the plugin, so we can not use it in the current shape. Could you please specify what files apart from java, xml, svg, sql, ts, go should be supported? I am going to contribute support of all required extensions upstream. |
Can you give me a link to this conversation?
that's is ok to start. To move forward - can you make a pr that replace existed plugin with one you want to activate. So I can try and take a look a situation on my computer? |
@skabashnyuk I have forwarded email to you. For now there is no support of svg, ts, go - need to wait for the next version of the plugin. If more extensions are required it would be great to know in advance. There is no custom mapping (extension -> comment type) mechanism and every new extension need to be contributed upstream. I can work on the initial PR after NY |
…heck The current license checking maven plugin does not allow for multiple copyright owners on source files. This commit adds files modified for ServerEvaluationStrategy to an excludes list so that builds can continue normally. This commit should be undone once issue eclipse-che#3281 is resolved. Signed-off-by: Angel Misevski <amisevsk@redhat.com>
…heck The current license checking maven plugin does not allow for multiple copyright owners on source files. This commit adds files modified for ServerEvaluationStrategy to an excludes list so that builds can continue normally. This commit should be undone once issue eclipse-che#3281 is resolved. Signed-off-by: Angel Misevski <amisevsk@redhat.com>
@ibuziuk do you have an example of license plugin configuration that we can test? |
@skabashnyuk no, have to work on other stuff. I will probably take this item to the next sprint |
…heck The current license checking maven plugin does not allow for multiple copyright owners on source files. This commit adds files modified for ServerEvaluationStrategy to an excludes list so that builds can continue normally. This commit should be undone once issue eclipse-che#3281 is resolved. Signed-off-by: Angel Misevski <amisevsk@redhat.com>
…heck The current license checking maven plugin does not allow for multiple copyright owners on source files. This commit adds files modified for ServerEvaluationStrategy to an excludes list so that builds can continue normally. This commit should be undone once issue eclipse-che#3281 is resolved. Signed-off-by: Angel Misevski <amisevsk@redhat.com>
…heck The current license checking maven plugin does not allow for multiple copyright owners on source files. This commit adds files modified for ServerEvaluationStrategy to an excludes list so that builds can continue normally. This commit should be undone once issue eclipse-che#3281 is resolved. Signed-off-by: Angel Misevski <amisevsk@redhat.com>
…heck The current license checking maven plugin does not allow for multiple copyright owners on source files. This commit adds files modified for ServerEvaluationStrategy to an excludes list so that builds can continue normally. This commit should be undone once issue eclipse-che#3281 is resolved. Signed-off-by: Angel Misevski <amisevsk@redhat.com>
@gorkem do you still interesting on this issue? |
@skabashnyuk I guess the issue is still there. It is just the copyrights are aligned now :) |
Issues go stale after Add |
maven license check plugin is failing the build if the copyright owner for a file is different from Codenvy. I do not think we should be adding such restrictions on an open source project.
The text was updated successfully, but these errors were encountered: