Skip to content

Commit

Permalink
[10.0.x] Backport NOTICE and LISENSE refactoring and rat-excludes to …
Browse files Browse the repository at this point in the history
…10.0.x (#6167)

* [incubator-kie-issues-1613] Add .rat-excludes file to each repository (#6149)

* [incubator-kie-issues-1613] Add .rat-excludes file to each repository

* removing apache-rat-plugin as we can check it with command line

* [incubator-kie-issues-1616] notice file for drools is not correct (#6153)

* [incubator-kie-issues-1616] notice file for drools is not correct

* fix .rat-excludes

* consolidate LICENSE files to single LICENSE file

* fixed missing license header

* fix CsvLineParser license

* exclude drools-docs related licenses, because they will not be included in source distoribution

* [NO-ISSUE] mvel.jj license (#6164)

* [NO-ISSUE] mvel.jj license

* - adjust words

* - fixed a period

* adding OMG XSD files License info (#6156)

* adding OMG XSD files License info

* fixing rat-excludes and adjusting file list of OMG files

* adjusted trisotech related license and copyright info

* - adjust .rat-excludes

* adjust .rat-excludes

* update .rat-excludes to list every single file

* fix license headers

* fix sysout

---------

Co-authored-by: Alex Porcelli <[email protected]>
  • Loading branch information
tkobayas and porcelli authored Nov 25, 2024
1 parent d8f43e3 commit ff1fd93
Show file tree
Hide file tree
Showing 52 changed files with 744 additions and 496 deletions.
40 changes: 40 additions & 0 deletions .github/workflows/pr-rat-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
#
# 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.
#

name: Run Apache RAT check

on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]

jobs:
apache-rat-check:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Download Apache RAT
run: |
curl -LO https://repo1.maven.org/maven2/org/apache/rat/apache-rat/0.16.1/apache-rat-0.16.1.jar
- name: Run Apache RAT
run: |
java -jar apache-rat-0.16.1.jar -d . -E .rat-excludes | grep "== File:" && echo "The files listed above are missing license headers." && exit 1 || echo "All files have license headers."
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ local/
!.github
!.git-blame-ignore-revs
!.openrewrite
!.rat-excludes
nbproject
*.ipr
*.iws
Expand Down
314 changes: 314 additions & 0 deletions .rat-excludes

Large diffs are not rendered by default.

151 changes: 151 additions & 0 deletions LICENSE-Apache-2.0.txt → LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -200,3 +200,154 @@
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.

------------------------------------------------------------------------------------
for drools-decisiontables/src/main/java/org/drools/decisiontable/parser/csv/CsvLineParser.java

Inner logic adapted from a C++ original that was Copyright (C) 1999
Lucent Technologies Excerpted from 'The Practice of Programming' by Brian
Kernighan and Rob Pike.

Included by permission of the http://tpop.awl.com/ web site, which says:
"You may use this code for any purpose, as long as you leave the
copyright notice and book citation attached."

------------------------------------------------------------------------------------
for kie-dmn/kie-dmn-backend/src/test/resources/DC.xsd
kie-dmn/kie-dmn-backend/src/test/resources/DI.xsd
kie-dmn/kie-dmn-backend/src/test/resources/DMN11.xsd
kie-dmn/kie-dmn-backend/src/test/resources/DMN12.xsd
kie-dmn/kie-dmn-backend/src/test/resources/DMN13.xsd
kie-dmn/kie-dmn-backend/src/test/resources/DMN14.xsd
kie-dmn/kie-dmn-backend/src/test/resources/DMN15.xsd
kie-dmn/kie-dmn-backend/src/test/resources/DMNDI12.xsd
kie-dmn/kie-dmn-backend/src/test/resources/DMNDI13.xsd
kie-dmn/kie-dmn-backend/src/test/resources/DMNDI15.xsd
kie-dmn/kie-dmn-feel/src/main/resources/dmn.xsd
kie-dmn/kie-dmn-trisotech/src/test/resources/DC.xsd
kie-dmn/kie-dmn-trisotech/src/test/resources/DI.xsd
kie-dmn/kie-dmn-trisotech/src/test/resources/DMN13.xsd
kie-dmn/kie-dmn-trisotech/src/test/resources/DMNDI13.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20151101/dmn.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20180521/DC.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20180521/DI.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20180521/DMN12.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20180521/DMNDI12.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20191111/DC.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20191111/DI.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20191111/DMN13.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20191111/DMNDI13.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20211108/DC.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20211108/DI.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20211108/DMN14.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20211108/DMNDI13.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20230324/DC.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20230324/DI.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20230324/DMN15.xsd
kie-dmn/kie-dmn-validation/src/main/resources/org/kie/dmn/validation/org/omg/spec/DMN/20230324/DMNDI15.xsd

Copyright © 2019-2021, 88solutions
Copyright © 2019-2023, BOC Products & Services AG
Copyright © 2015-2023, Camunda Services GmbH
Copyright © 2013-2023, Decision Management Solutions
Copyright © 2019-2021, Department of Veterans Affairs
Copyright © 2013-2019, Escape Velocity LLC
Copyright © 2013-2023, Fair Isaac Corporation
Copyright © 2019-2023, GfSE e.V.
Copyright © 2013-2023, International Business Machines Corporation
Copyright © 2013-2023, KU Leuven
Copyright © 2013-2019, Model Systems Limited
Copyright © 2015-2019, Oracle Incorporated
Copyright © 2019-2023, PNA Group
Copyright © 2020-2023, processCentric GmbH
Copyright © 2013-2023, Red Hat Inc
Copyright © 2013-2023, Sapiens Decision NA
Copyright © 2019-2021, Signavio GmbH
Copyright © 2019-2023, Sparx Systems Pty Ltd
Copyright © 2019-2023, Thematix Partners LLC
Copyright © 2014-2019, TIBCO Software Inc.
Copyright © 2015-2023, Trisotech
Copyright © 2015-2023, Object Management Group, Inc.

USE OF SPECIFICATION – TERMS, CONDITIONS & NOTICES
The material in this document details an Object Management Group specification in accordance with the terms,
conditions and notices set forth below. This document does not represent a commitment to implement any portion of this
specification in any company's products. The information contained in this document is subject to change without notice.

LICENSES
The companies listed above have granted to the Object Management Group, Inc. (OMG) a nonexclusive, royalty-free,
paid up, worldwide license to copy and distribute this document and to modify this document and distribute copies of the
modified version. Each of the copyright holders listed above has agreed that no person shall be deemed to have infringed
the copyright in the included material of any such copyright holder by reason of having used the specification set forth
herein or having conformed any computer software to the specification.
Subject to all of the terms and conditions below, the owners of the copyright in this specification hereby grant you a
fully-paid up, non-exclusive, nontransferable, perpetual, worldwide license (without the right to sublicense), to use this
specification to create and distribute software and special purpose specifications that are based upon this specification,
and to use, copy, and distribute this specification as provided under the Copyright Act; provided that: (1) both the
copyright notice identified above and this permission notice appear on any copies of this specification; (2) the use of the
specifications is for informational purposes and will not be copied or posted on any network computer or broadcast in
any media and will not be otherwise resold or transferred for commercial purposes; and (3) no modifications are made to
this specification. This limited permission automatically terminates without notice if you breach any of these terms or
conditions. Upon termination, you will destroy immediately any copies of the specifications in your possession or
control.

PATENTS
The attention of adopters is directed to the possibility that compliance with or adoption of OMG specifications may
require use of an invention covered by patent rights. OMG shall not be responsible for identifying patents for which a
license may be required by any OMG specification, or for conducting legal inquiries into the legal validity or scope of
those patents that are brought to its attention. OMG specifications are prospective and advisory only. Prospective users
are responsible for protecting themselves against liability for infringement of patents.

GENERAL USE RESTRICTIONS
Any unauthorized use of this specification may violate copyright laws, trademark laws, and communications regulations
and statutes. This document contains information which is protected by copyright. All Rights Reserved. No part of this
work covered by copyright herein may be reproduced or used in any form or by any means--graphic, electronic, or
mechanical, including photocopying, recording, taping, or information storage and retrieval systems--without permission
of the copyright owner.

DISCLAIMER OF WARRANTY
WHILE THIS PUBLICATION IS BELIEVED TO BE ACCURATE, IT IS PROVIDED "AS IS" AND MAY CONTAIN
ERRORS OR MISPRINTS. THE OBJECT MANAGEMENT GROUP AND THE COMPANIES LISTED ABOVE
MAKE NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS PUBLICATION,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY OF TITLE OR OWNERSHIP, IMPLIED WARRANTY
OF MERCHANTABILITY OR WARRANTY OF FITNESS FOR A PARTICULAR PURPOSE OR USE. IN NO
EVENT SHALL THE OBJECT MANAGEMENT GROUP OR ANY OF THE COMPANIES LISTED ABOVE BE
LIABLE FOR ERRORS CONTAINED HEREIN OR FOR DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
CONSEQUENTIAL, RELIANCE OR COVER DAMAGES, INCLUDING LOSS OF PROFITS, REVENUE, DATA
OR USE, INCURRED BY ANY USER OR ANY THIRD PARTY IN CONNECTION WITH THE FURNISHING,
PERFORMANCE, OR USE OF THIS MATERIAL, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
The entire risk as to the quality and performance of software developed using this specification is borne by you. This
disclaimer of warranty constitutes an essential part of the license granted to you to use this specification.

RESTRICTED RIGHTS LEGEND
Use, duplication or disclosure by the U.S. Government is subject to the restrictions set forth in subparagraph (c) (1) (ii) of
The Rights in Technical Data and Computer Software Clause at DFARS 252.227-7013 or in subparagraph (c)(1) and (2)
of the Commercial Computer Software - Restricted Rights clauses at 48 C.F.R. 52.227-19 or as specified in 48 C.F.R.
227-7202-2 of the DoD F.A.R. Supplement and its successors, or as specified in 48 C.F.R. 12.212 of the Federal
Acquisition Regulations and its successors, as applicable. The specification copyright owners are as indicated above and
may be contacted through the Object Management Group, 9C Medway Rd, PMB 274, Milford, MA 01757, U.S.A.

TRADEMARKS
CORBA®, CORBA logos®, FIBO®, Financial Industry Business Ontology®, FINANCIAL INSTRUMENT GLOBAL
IDENTIFIER®, IIOP®, IMM®, Model Driven Architecture®, MDA®, Object Management Group®, OMG®, OMG Logo,
SoaML®, SOAML®, SysML®, UAF®, Unified Modeling Language®, UML®, UML Cube Logo®, VSIPL®, and XMI® are
registered trademarks of the Object Management Group, Inc.
For a complete list of trademarks, see: https://www.omg.org/legal/tm_list.htm. All other products or company names
mentioned are used for identification purposes only and may be trademarks of their respective owners.

COMPLIANCE
The copyright holders listed above acknowledge that the Object Management Group (acting itself or through its
designees) is and shall at all times be the sole entity that may authorize developers, suppliers and sellers of computer
software to use certification marks, trademarks or other special designations to indicate compliance with these materials.
Software developed under the terms of this license may claim compliance or conformance with this specification if and
only if the software compliance is of a nature fully matching the applicable compliance points as stated in the
specification. Software developed only partially matching the applicable compliance points may claim only that the
software was based on this specification, but may not claim compliance or conformance with this specification. In the
event that testing suites are implemented or approved by Object Management Group, Inc., software developed using this
specification may claim compliance or conformance with the specification only if the software satisfactorily completes
the testing suites.

------------------------------------------------------------------------------------
for drools-model/drools-mvel-parser/src/main/javacc/mvel.jj
JavaParser is dual licensed under LGPL license and Apache License Version 2.0 license. We choose the Apache License Version 2.0.
18 changes: 4 additions & 14 deletions NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,9 @@ This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).

The Initial Developer of some parts of the framework, which are copied from, derived from, or
inspired by KIE (Knowledge Is Everthing) group, is Red Hat, Inc (https://www.redhat.com/).
inspired by KIE (Knowledge Is Everything) group, is Red Hat, Inc (https://www.redhat.com/).
Copyright Red Hat, Inc. and/or its affiliates.. All Rights Reserved.

This product also includes the following third-party components:

* lunr 2.3.9
Downloaded from: https://lunrjs.com/
License: MIT

* search-ui
Downloaded from: https://gitlab.com/antora/antora-lunr-extension
License: Mozilla Public License 2.0

* antora ui-bundle
Downloaded from: https://github.com/stephengold/antora-ui-bundle
License: Mozilla Public License 2.0
The Initial Developer of the kie-dmn/kie-dmn-trisotech/src/main/resources/org/kie/dmn/trisotech/validation/extension/TrisotechDMN13.xsd
is Trisotech Inc (https://www.trisotech.com/).
Copyright 2015 - 2024 Trisotech Inc. All Rights Reserved.
Original file line number Diff line number Diff line change
@@ -1,21 +1,3 @@
/**
* 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.
*/
package org.drools.decisiontable.parser.csv;

import java.util.ArrayList;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,22 @@
/**
* 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.
*/

package org.drools.examples.troubleticket
expander ticketing.dsl

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,14 +48,14 @@ public void testExpanderErrorsAfterExpansion() throws Exception {
String name = "expander_post_errors.dslr";
Expander expander = new DefaultExpander();
String expanded = expander.expand( this.getReader( name ) );

DRLParser parser = parse( name, expanded );
parser.compilationUnit();
assertThat(parser.hasErrors()).isTrue();

assertThat(parser.getErrors().size()).isEqualTo(1);
DroolsParserException err = parser.getErrors().get(0);
assertThat(err.getLineNumber()).isEqualTo(6);
assertThat(err.getLineNumber()).isEqualTo(7);
}

@Test
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,22 @@
# Example DRL with expansion
/**
* 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.
*/
# Example DRL with expansion
# (ie "domain specific language")

# declare expanders for domain specific and natural language extensions
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,22 @@
/**
* 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 will show error line numbers due to failure to expand
package expanderFoo

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,22 @@
/**
* 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.
*/

//created on: 13/04/2006
package mydsl

Expand Down
Loading

0 comments on commit ff1fd93

Please sign in to comment.