Merge branch 'main' into release/UIMA-6449-Ruta-3.2.0-release
* main:
[No Jira] Temporarily update spotbugs to be compatible with Java 17 until we go to Parent POM 16
[No Jira] Avoid triggering auto-staging as part of snapshot deployment
diff --git a/README b/README
deleted file mode 100644
index c673e7e..0000000
--- a/README
+++ /dev/null
@@ -1,54 +0,0 @@
-
-Apache UIMA Ruta (TM) v3.1.0
--------------------------------------------------------------------------
-
-This release is compatible with UIMA v3, but not compatible with UIMA v2.
-For compatibility to UIMA v2, please refer to the latest UIMA Ruta v2 release, e.g., 2.8.0.
-
-Building from the Source Distribution
--------------------------------------
-
-We use Maven 3.0 and Java 8 or later for building; download this if needed,
-and set the environment variable MAVEN_OPTS to -Xmx800m.
-
-Then do the build by going into the UIMA Ruta directory, and issuing the command
-
- mvn clean install
-
-This builds everything except the ...source-release.zip file. If you want that,
-change the command to
-
- mvn clean install -Papache-release
-
-For more details, please see https://uima.apache.org/building-uima.html
-
-
--------------------------------------
-
-This product was originally released as Apache UIMA TextMarker. The UIMA Ruta Workbench provides
-a command for updating old projects. Please right-click on a project and select "UIMA Ruta -> Update Project".
-
--------------------------------------
-
-The UIMA Ruta analysis engine requires type priorities for the correct execution of rules.
-If a CAS is created using the CasCreationUtils, please provide the type priorities, e.g., by:
-
- URL tpUrl = this.getClass().getResource("/org/apache/uima/ruta/engine/TypePriorities.xml");
- TypePriorities typePriorities = UIMAFramework.getXMLParser().parseTypePriorities(
- new XMLInputSource(tpUrl));
- CAS cas = CasCreationUtils.createCas(descriptor, typePriorities, new FsIndexDescription[0]);
-
--------------------------------------
-
-Using the jcasgen-maven-plugin may cause problems if it creates duplicate classes for the
-internal UIMA Ruta types (overwriting the implementation of RutaBasic). Depending on the location
-of the type system descriptors, the plugin should be configured to be limited on the project,
-or the UIMA Ruta type system descriptors should explicitly be excluded:
-
-<configuration>
- <typeSystemExcludes>
- <typeSystemExclude>/**/BasicTypeSystem.xml</typeSystemExclude>
- <typeSystemExclude>/**/InternalTypeSystem.xml</typeSystemExclude>
- </typeSystemExcludes>
-</configuration>
-
diff --git a/README.md b/README.md
index 47a33a9..be84caa 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,6 @@
-[![Build Status: master](https://builds.apache.org/buildStatus/icon?subject=master&job=Apache+UIMA+Ruta+%28GitHub+master%29)](https://builds.apache.org/view/S-Z/view/UIMA/job/Apache%20UIMA%20Ruta%20(GitHub%20master)/)[![Build Status: master-v2](https://builds.apache.org/buildStatus/icon?subject=master-v2&job=Apache+UIMA+Ruta+%28GitHub+master-v2%29)](https://builds.apache.org/view/S-Z/view/UIMA/job/Apache%20UIMA%20Ruta%20(GitHub%20master-v2)/)
+[![Maven Central](https://img.shields.io/maven-central/v/org.apache.uima/ruta-core?style=for-the-badge)](https://search.maven.org/search?q=g:org.apache.uima%20a:ruta*)
+
+[![Build Status](https://ci-builds.apache.org/buildStatus/icon?job=UIMA%2Fuima-ruta%2Fmain&subject=main%20build)](https://ci-builds.apache.org/job/UIMA/job/uima-ruta/job/main/) [![Build Status](https://ci-builds.apache.org/buildStatus/icon?job=UIMA%2Fuima-ruta%2Fmain-v2&subject=main-v2%20build)](https://ci-builds.apache.org/job/UIMA/job/uima-ruta/job/main-v2/)
What is Apache UIMA Ruta?
-------------------------
@@ -73,6 +75,74 @@
* for UIMA 3: <a href="https://downloads.apache.org/uima/eclipse-update-site-v3/">https://downloads.apache.org/uima/eclipse-update-site-v3/</a>
+Building from the Source Distribution
+-------------------------------------
+
+We use Maven 3.0 and Java 8 or later for building; download this if needed,
+and set the environment variable MAVEN_OPTS to -Xmx800m.
+
+Then do the build by going into the UIMA Ruta directory, and issuing the command
+
+ mvn clean install
+
+This builds everything except the ...source-release.zip file. If you want that,
+change the command to
+
+ mvn clean install -Papache-release
+
+For more details, please see https://uima.apache.org/building-uima.html
+
+
+How to Get Involved
+-------------------
+
+The Apache UIMA project really needs and appreciates any contributions, including documentation
+help, source code and feedback. If you are interested in contributing, please visit
+[http://uima.apache.org/get-involved.html](http://uima.apache.org/get-involved.html).
+
+
+How to Report Issues
+--------------------
+
+The Apache UIMA project uses JIRA for issue tracking. Please report any issues you find at
+[our issue tracker](http://issues.apache.org/jira/browse/uima).
+
+
+Useful tips
+-----------
+
+This product was originally released as Apache UIMA TextMarker. The UIMA Ruta Workbench provides
+a command for updating old projects. Please right-click on a project and select "UIMA Ruta -> Update Project".
+
+The UIMA Ruta analysis engine requires type priorities for the correct execution of rules.
+If a CAS is created using the CasCreationUtils, please provide the type priorities, e.g., by:
+
+ URL tpUrl = this.getClass().getResource("/org/apache/uima/ruta/engine/TypePriorities.xml");
+ TypePriorities typePriorities = UIMAFramework.getXMLParser().parseTypePriorities(
+ new XMLInputSource(tpUrl));
+ CAS cas = CasCreationUtils.createCas(descriptor, typePriorities, new FsIndexDescription[0]);
+
+Using the `jcasgen-maven-plugin` may cause problems if it creates duplicate classes for the
+internal UIMA Ruta types (overwriting the implementation of RutaBasic). Depending on the location
+of the type system descriptors, the plugin should be configured to be limited on the project,
+or the UIMA Ruta type system descriptors should explicitly be excluded:
+
+ <configuration>
+ <typeSystemExcludes>
+ <typeSystemExclude>/**/BasicTypeSystem.xml</typeSystemExclude>
+ <typeSystemExclude>/**/InternalTypeSystem.xml</typeSystemExclude>
+ </typeSystemExcludes>
+ </configuration>
+
+
+Useful links
+------------
+
+* [Apache UIMA](https://uima.apache.org)
+* [Apache UIMA Ruta Documentation](https://uima.apache.org/d/ruta-current/tools.ruta.book.html)
+* [Averbis Ruta Training material](https://github.com/averbis/ruta-training) (external)
+
+
Reference
---------
@@ -93,11 +163,4 @@
doi = {10.1017/S1351324914000114},
URL = {https://journals.cambridge.org/article_S1351324914000114},
}
-~~~~
-
-Useful links
-------------
-
-* [Apache UIMA](https://uima.apache.org)
-* [Apache UIMA Ruta Documentation](https://uima.apache.org/d/ruta-current/tools.ruta.book.html)
-* [Averbis Ruta Training material](https://github.com/averbis/ruta-training) (external)
+~~~~
\ No newline at end of file
diff --git a/RELEASE_NOTES.html b/RELEASE_NOTES.html
deleted file mode 100644
index 7ce943c..0000000
--- a/RELEASE_NOTES.html
+++ /dev/null
@@ -1,104 +0,0 @@
-<html>
- <!--
- ***************************************************************
- * 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.
- ***************************************************************
- -->
-
-<head>
- <title>Apache UIMA Ruta v3.1.0 Release Notes</title>
-</head>
-<body>
-<h1>Apache UIMA Ruta™ v3.1.0 Release Notes</h1>
-
-<h2>Contents</h2>
-<p>
-<a href="#what.is.uima-ruta">1. What is UIMA Ruta</a><br/>
-<a href="#major.changes">2. Major Changes in this Release</a><br/>
-<a href="#get.involved">3. How to Get Involved</a><br/>
-<a href="#report.issues">4. How to Report Issues</a><br/>
-<a href="#list.issues">5. List of JIRA Issues Fixed in this Release</a>
-</p>
-
-<h2><a name="what.is.uima-ruta">1. What is UIMA Ruta?</a></h2>
-
-<p>
- Apache UIMA Ruta™ is a rule-based script language supported by Eclipse-based tooling.
- The language is designed to enable rapid development of text processing applications within Apache UIMA™.
- A special focus lies on the intuitive and flexible domain specific language for defining
- patterns of annotations. The Eclipse-based tooling for Ruta, called the Ruta Workbench,
- was created to support the user and to facilitate every step when writing Ruta rules. Both the
- Ruta rule language and the Ruta Workbench integrate smoothly with Apache UIMA.
-</p>
-
-<h2><a name="major.changes">2. Major Changes in this Release</a></h2>
-
-<p>
- This release provides compatibility to UIMA v3. An upgrade from UIMA Ruta v2 to this version requires
- also an update to UIMA v3 of the overall application or Eclipse installation. Please refer to the
- UIMA v3 user's guide for detailed information: https://uima.apache.org/d/uimaj-3.0.0/version_3_users_guide.html
-</p>
-<p>
- <p>UIMA Ruta Language and Analysis Engine:</p>
- <ul>
- <li>New config parameter for internal indexing strategy.</li>
- <li>New config parameter for indexing all debug information.</li>
- <li>New config parameter for type disambiguation.</li>
- <li>TextSeeder is the new default seeder (faster, no MARKUP annotations).</li>
- <li>Improved null check using label expression.</li>
- <li>Improved conjunctive and disjunctive rule elements.</li>
- <li>Improved conjunct rules.</li>
- <li>Improved implementation of SPLIT, FILL, ADD, REMOVE, AFTER.</li>
- <li>Improved documentation.</li>
- </ul>
- <p>UIMA Ruta Workbench:</p>
- <ul>
- <li>Fixed problems launching script using newer Java versions (LayerInstantiationException).</li>
- <li>Fixed console logging when launching scripts.</li>
- <li>Improved compatibility with dark mode.</li>
- </ul>
- <p>UIMA Ruta Maven Plugin:</p>
- <ul>
- <li>Fail on error by default.</li>
- </ul>
-</p>
-
-
-<h2><a name="get.involved">3. How to Get Involved</a></h2>
-<p>
-The Apache UIMA Ruta project really needs and appreciates any contributions,
-including documentation help, source code and feedback. If you are interested
-in contributing, please visit
-<a href="https://uima.apache.org/get-involved.html">
- https://uima.apache.org/get-involved.html</a>.
-</p>
-
-<h2><a name="report.issues">4. How to Report Issues</a></h2>
-<p>
-The Apache UIMA project uses JIRA for issue tracking. Please report any
-issues you find at
-<a href="https://issues.apache.org/jira/browse/uima">https://issues.apache.org/jira/browse/uima</a>
-</p>
-
-<h2><a name="list.issues">5. List of JIRA Issues Fixed in this Release</a></h2>
-
-Click <a href="issuesFixed/jira-report.html">issuesFixed/jira-report.html</a> for the list of
-issues fixed in this release.
-
-</body>
-</html>
\ No newline at end of file
diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
new file mode 100644
index 0000000..7f08da3
--- /dev/null
+++ b/RELEASE_NOTES.md
@@ -0,0 +1,59 @@
+<!--
+***************************************************************
+* 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.
+***************************************************************
+-->
+
+# Apache UIMA Ruta (TM) v3.2.0
+
+Apache UIMA Ruta™ is a rule-based script language supported by Eclipse-based tooling.
+The language is designed to enable rapid development of text processing applications within Apache UIMA™.
+A special focus lies on the intuitive and flexible domain specific language for defining
+patterns of annotations. The Eclipse-based tooling for Ruta, called the Ruta Workbench,
+was created to support the user and to facilitate every step when writing Ruta rules. Both the
+Ruta rule language and the Ruta Workbench integrate smoothly with Apache UIMA.
+
+This is a feature and bugfix release.
+
+## Notable changes in this release
+
+* [UIMA-6411] - Avoid creation of `RutaBasics` for bad annotations
+* [UIMA-6406] - Removing an annotation inside a `BLOCK` only takes effect outside the block
+* [UIMA-6408] - No type check of features in `TRANSFER`
+* [UIMA-6409] - Possible endless wildcard lookahead in combination with subtokens
+* [UIMA-6414] - Missing match for optional after sidestep out of composed
+* [UIMA-6404] - `@` with quantifier ignores matches
+* [UIMA-6405] - Local variable not captured properly in a wildcard matching condition.
+* [UIMA-6461] - Wrong argument to `contains()`
+* [UIMA-6399] - `RutaPatternCache` prevents `CPEEngine` from terminating
+* [UIMA-6383] - TRIE - Wordlist entry not annotated
+* [UIMA-6394] - Label assignment in alternative match causes problems
+
+A [full list of issues](https://issues.apache.org/jira/issues/?jql=project%20%3D%20UIMA%20AND%20fixVersion%20%3D%203.2.0ruta) addressed in this release can be found on issue tracker.
+
+Please use the [mailing lists](https://uima.apache.org/mail-lists.html) for feedback and the [issue tracker](https://issues.apache.org/jira/browse/uima) to report bugs.
+
+
+## Supported Platforms
+
+UIMA Ruta 3.2.0 should be used in combination with
+
+- Java 1.8 or higher
+- UIMA Java SDK 3.3.0 or higher
+- uimaFIT 3.3.0 or higher
+- Spring Framework 5.3.20 or higher
diff --git a/marker-file-enabling-tycho-release b/marker-file-enabling-tycho-release
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/marker-file-enabling-tycho-release
diff --git a/pom.xml b/pom.xml
index b9ef886..2a00978 100644
--- a/pom.xml
+++ b/pom.xml
@@ -33,7 +33,7 @@
<description>The top project for Apache UIMA Ruta</description>
<url>${uimaWebsiteUrl}</url>
<properties>
- <jiraVersion>3.2.0ruta</jiraVersion>
+ <jiraVersion>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}ruta</jiraVersion>
</properties>
<!-- override pom setting in the build project. JIRA 5.1 needs different URL -->
diff --git a/ruta-parent/pom.xml b/ruta-parent/pom.xml
index 14550ea..50f4a1d 100644
--- a/ruta-parent/pom.xml
+++ b/ruta-parent/pom.xml
@@ -105,11 +105,7 @@
<commons-logging-version>1.1.1</commons-logging-version>
<commons-logging-api-version>1.1</commons-logging-api-version>
<caffeine-version>2.9.3</caffeine-version>
- <!-- BACKWARD_COMPATIBLE_IMPLEMENTER - patch version (=.=.+) BACKWARD_COMPATIBLE_USER
- - minor version (=.+.0) NON_BACKWARD_COMPATIBLE - major version (+.0.0) -->
- <compat.level>BACKWARD_COMPATIBLE_USER</compat.level>
- <compat.previous.version>3.2.0</compat.previous.version>
<api_check_oldVersion>3.2.0</api_check_oldVersion>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>