Ram, It does have a licensed header which violates the generally followed licensing rules. The first line is blank (there is a issue open to be lenient in that case as I remember I saw sometime ago). There are a few more files with the same viloation. Regardless, I am not saying that it's perfect. But why reinvent the wheel? You can work with the plugin writer like 100 others have done and make it better if you feel that it's not good enough.
A better way to find all the files which violate the formatting is to format the files which do not follow the rule, I get the following. It has a few more files than you mentioned: chetan@chubi:~/work/apex$ mvn license:format -Dlicense.skip=false [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [INFO] Reactor Build Order: [INFO] [INFO] Realtime Stream Processing Framework [INFO] DataTorrent API [INFO] Base Library [INFO] Buffer Server [INFO] Streaming Application Manager [INFO] Apex Application Maven archetype [INFO] Apex App Configuration Maven archetype [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Realtime Stream Processing Framework 3.2.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- license-maven-plugin:2.11:format (default-cli) @ dt-framework --- [INFO] Updating license headers... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building DataTorrent API 3.2.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- license-maven-plugin:2.11:format (default-cli) @ dt-api --- [INFO] Updating license headers... [INFO] Updating license header in: /home/chetan/work/apex/api/src/main/java/com/datatorrent/api/annotation/Name.java [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Base Library 3.2.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- license-maven-plugin:2.11:format (default-cli) @ dt-common --- [INFO] Updating license headers... [INFO] Updating license header in: /home/chetan/work/apex/common/src/main/java/com/datatorrent/common/metric/SingleMetricAggregator.java [INFO] Updating license header in: /home/chetan/work/apex/common/src/main/java/com/datatorrent/common/metric/sum/LongSumAggregator.java [INFO] Updating license header in: /home/chetan/work/apex/common/src/main/java/com/datatorrent/common/metric/sum/DoubleSumAggregator.java [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Buffer Server 3.2.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- license-maven-plugin:2.11:format (default-cli) @ dt-bufferserver --- [INFO] Updating license headers... [INFO] Updating license header in: /home/chetan/work/apex/bufferserver/src/main/java/com/datatorrent/bufferserver/util/VarInt.java [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Streaming Application Manager 3.2.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- license-maven-plugin:2.11:format (default-cli) @ dt-engine --- [INFO] Updating license headers... [WARNING] Unknown file extension: /home/chetan/work/apex/engine/src/main/scripts/dtcli [INFO] Updating license header in: /home/chetan/work/apex/engine/src/main/java/com/datatorrent/stram/plan/logical/StreamCodecWrapperForPersistance.java [INFO] Updating license header in: /home/chetan/work/apex/engine/src/main/java/com/datatorrent/stram/engine/Slider.java [INFO] Updating license header in: /home/chetan/work/apex/engine/src/main/java/com/datatorrent/stram/stream/PartitionAwareSinkForPersistence.java [INFO] Updating license header in: /home/chetan/work/apex/engine/src/main/java/com/datatorrent/stram/webapp/asm/FieldSignatureVisitor.java [INFO] Updating license header in: /home/chetan/work/apex/engine/src/main/java/com/datatorrent/stram/webapp/asm/CompactAnnotationNode.java [INFO] Updating license header in: /home/chetan/work/apex/engine/src/main/java/com/datatorrent/stram/webapp/asm/CompactFieldNode.java [INFO] Updating license header in: /home/chetan/work/apex/engine/src/main/java/com/datatorrent/stram/api/AppDataSource.java [INFO] Updating license header in: /home/chetan/work/apex/engine/src/main/java/com/datatorrent/stram/util/PubSubWebSocketServlet.java [INFO] Updating license header in: /home/chetan/work/apex/engine/src/test/java/com/datatorrent/stram/plan/StreamPersistanceTests.java [WARNING] Unable to find a comment style definition for some files. You may want to add a custom mapping for the relevant file extensions. [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Apex Application Maven archetype 3.2.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- license-maven-plugin:2.11:format (default-cli) @ apex-app-archetype --- [INFO] Updating license headers... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Apex App Configuration Maven archetype 3.2.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- license-maven-plugin:2.11:format (default-cli) @ apex-conf-archetype --- [INFO] Updating license headers... [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary: [INFO] [INFO] Realtime Stream Processing Framework ............... SUCCESS [ 0.889 s] [INFO] DataTorrent API .................................... SUCCESS [ 0.162 s] [INFO] Base Library ....................................... SUCCESS [ 0.093 s] [INFO] Buffer Server ...................................... SUCCESS [ 0.072 s] [INFO] Streaming Application Manager ...................... SUCCESS [ 0.408 s] [INFO] Apex Application Maven archetype ................... SUCCESS [ 0.233 s] [INFO] Apex App Configuration Maven archetype ............. SUCCESS [ 0.013 s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 2.521 s [INFO] Finished at: 2015-09-23T16:00:02-07:00 [INFO] Final Memory: 13M/471M [INFO] ------------------------------------------------------------------------ On Wed, Sep 23, 2015 at 4:00 PM, Munagala Ramanath <[email protected]> wrote: > When I run that command, I get the same error about Name.java but that file > _does_ have a > license header. > > The files identified by my script as having issues are not shown: > > ============================================================ > 3 Java files with no comments > 0: > > /home/ram/src/apex/apex/engine/src/main/java/com/datatorrent/stram/plan/logical/StreamCodecWrapperForPersistance.java > 1: > > /home/ram/src/apex/apex/engine/src/main/java/com/datatorrent/stram/stream/PartitionAwareSinkForPersistence.java > 2: > > /home/ram/src/apex/apex/engine/src/test/java/com/datatorrent/stram/plan/StreamPersistanceTests.java > ============================================================ > 4 Java files with no matching copyright comment > 0: > > /home/ram/src/apex/apex/engine/src/test/resources/testAppPackage/mydtapp/src/main/java/com/example/mydtapp/RandomNumberGenerator.java > 1: > > /home/ram/src/apex/apex/engine/src/test/resources/testAppPackage/mydtapp/src/main/java/com/example/mydtapp/StdoutOperator.java > 2: > > /home/ram/src/apex/apex/engine/target/test-classes/testAppPackage/mydtapp/src/main/java/com/example/mydtapp/RandomNumberGenerator.java > 3: > > /home/ram/src/apex/apex/engine/target/test-classes/testAppPackage/mydtapp/src/main/java/com/example/mydtapp/StdoutOperator.java > > > Ram > > On Wed, Sep 23, 2015 at 3:46 PM, Thomas Weise <[email protected]> > wrote: > > > Ram, > > > > You need to run > > > > mvn license:check -Dlicense.skip=false > > > > I get the following: > > > > [INFO] --- license-maven-plugin:2.11:check (default-cli) @ dt-api --- > > [INFO] Checking licenses... > > [WARNING] Missing header in: > > > > > /home/hdev/devel/dt/Apex/api/src/main/java/com/datatorrent/api/annotation/Name.java > > > > Thomas > > > > > > > > > > On Wed, Sep 23, 2015 at 3:34 PM, Munagala Ramanath <[email protected]> > > wrote: > > > > > It's in the output.txt file uploaded with my earlier message but here > is > > an > > > extract from the end of it: > > > > > > ============================================================ > > > 3 Java files with no comments > > > 0: > > > > > > > > > /home/ram/src/apex/apex/engine/src/main/java/com/datatorrent/stram/plan/logical/StreamCodecWrapperForPersistance.java > > > 1: > > > > > > > > > /home/ram/src/apex/apex/engine/src/main/java/com/datatorrent/stram/stream/PartitionAwareSinkForPersistence.java > > > 2: > > > > > > > > > /home/ram/src/apex/apex/engine/src/test/java/com/datatorrent/stram/plan/StreamPersistanceTests.java > > > ============================================================ > > > 4 Java files with no matching copyright comment > > > 0: > > > > > > > > > /home/ram/src/apex/apex/engine/src/test/resources/testAppPackage/mydtapp/src/main/java/com/example/mydtapp/RandomNumberGenerator.java > > > 1: > > > > > > > > > /home/ram/src/apex/apex/engine/src/test/resources/testAppPackage/mydtapp/src/main/java/com/example/mydtapp/StdoutOperator.java > > > 2: > > > > > > > > > /home/ram/src/apex/apex/engine/target/test-classes/testAppPackage/mydtapp/src/main/java/com/example/mydtapp/RandomNumberGenerator.java > > > 3: > > > > > > > > > /home/ram/src/apex/apex/engine/target/test-classes/testAppPackage/mydtapp/src/main/java/com/example/mydtapp/StdoutOperator.java > > > > > > > > > On Wed, Sep 23, 2015 at 2:44 PM, Chetan Narsude < > [email protected]> > > > wrote: > > > > > > > which files are those? > > > > > > > > -- > > > > chetan > > > > > > > > > > > > On Wed, Sep 23, 2015 at 12:51 PM, Munagala Ramanath < > > [email protected] > > > > > > > > wrote: > > > > > > > > > Not sure what it's checking but "*mvn license:check*" shows me no > > list > > > of > > > > > files in core. > > > > > Yet, my script finds at least 3 java files with no comments at all. > > > > > > > > > > Ram > > > > > > > > > > On Wed, Sep 23, 2015 at 11:54 AM, Chetan Narsude < > > > [email protected] > > > > > > > > > > wrote: > > > > > > > > > > > mvn license:check > > > > > > mvn license:format > > > > > > > > > > > > At the top level pom does magic for you. > > > > > > > > > > > > On Wednesday, September 23, 2015, Munagala Ramanath < > > > > [email protected] > > > > > > > > > > > > wrote: > > > > > > > > > > > > > Thomas and Chris: > > > > > > > > > > > > > > I wrote a Ruby script to automate this process. Currently, it > > makes > > > > no > > > > > > > changes and just > > > > > > > reports what it finds. The script is attached. > > > > > > > > > > > > > > I ran it like this: ruby -w fix-license.rb -f ~/src/apex/apex > > > > > > > output.txt > > > > > > > The output is also attached. > > > > > > > > > > > > > > Let me know if you'd like me to enhance this to actually add > the > > > new > > > > > > > copyright notice to the top of > > > > > > > the files where it does detect some form of copyright notice > > (there > > > > > will > > > > > > > still be a few files where > > > > > > > no such notice was found and those will need manual > > augmentation). > > > > > > > > > > > > > > Ram > > > > > > > > > > > > > > On Tue, Sep 22, 2015 at 9:30 AM, Chris Nauroth < > > > > > [email protected] > > > > > > > <javascript:_e(%7B%7D,'cvml','[email protected]');>> > > wrote: > > > > > > > > > > > > > >> Hi Thomas, > > > > > > >> > > > > > > >> I think you are correct. Here is the official Apache > statement > > on > > > > > what > > > > > > to > > > > > > >> do with the source headers: > > > > > > >> > > > > > > >> http://www.apache.org/legal/src-headers.html > > > > > > >> > > > > > > >> > > > > > > >> I think your result (the second example below) matches up with > > > that. > > > > > > >> > > > > > > >> As a reminder, I have a work-in-progress patch for the > non-Java > > > > files > > > > > in > > > > > > >> Apex here: > > > > > > >> > > > > > > >> https://issues.apache.org/jira/browse/APEXCORE-1 > > > > > > >> > > > > > > >> > > > > > > >> It would be nice if we could come up with a script to chop out > > the > > > > > > >> DataTorrent header and replace it with the ASF header. Then, > we > > > > could > > > > > > >> simply run that across *.java in both Apex and Malhar. > > > > > > >> > > > > > > >> --Chris Nauroth > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> On 9/22/15, 9:24 AM, "Thomas Weise" <[email protected] > > > > > > >> <javascript:_e(%7B%7D,'cvml','[email protected]');>> > > wrote: > > > > > > >> > > > > > > >> >Hit the wrong button... > > > > > > >> > > > > > > > >> >This question is about the license header for the source > files. > > > > > > Currently > > > > > > >> >we have: > > > > > > >> > > > > > > > >> >/** > > > > > > >> > * Copyright (C) 2015 DataTorrent, Inc. > > > > > > >> > * > > > > > > >> > * 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. > > > > > > >> > */ > > > > > > >> > > > > > > > >> >The first line needs to go. And a reference to NOTICE needs > to > > be > > > > > added > > > > > > >> as > > > > > > >> >shown below? > > > > > > >> > > > > > > > >> >/* > > > > > > >> > * 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. > > > > > > >> > */ > > > > > > >> > > > > > > > >> >On Tue, Sep 22, 2015 at 9:19 AM, Thomas Weise < > > > > > [email protected] > > > > > > >> <javascript:_e(%7B%7D,'cvml','[email protected]');>> > > > > > > >> >wrote: > > > > > > >> > > > > > > > >> >> There > > > > > > >> >> > > > > > > >> >> > > > > > > >> >> > > > > > > >> >> > > > > > > >> >> > > > > > > >> >> > > > > > > >> >> > > > > > > >> >> > > > > > > >> >> > > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > > > > > > > > > > > > > >
