From ae4b1ad47a83ceef2c0b33cbbfa51d6e0854ff115e26db9b5c2b682b32ee7b58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mark=C3=A9ta=20Machov=C3=A1?= Date: Mon, 25 Aug 2025 09:52:40 +0000 Subject: [PATCH] - Convert to libalternatives on SLE-16-based and newer systems OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-antlr4-python3-runtime?expand=0&rev=18 --- .gitattributes | 23 +++ .gitignore | 1 + LICENSE.txt | 52 +++++ python-antlr4-python3-runtime-4.13.1.tar.gz | 3 + python-antlr4-python3-runtime-4.13.2.tar.gz | 3 + python-antlr4-python3-runtime.changes | 206 ++++++++++++++++++++ python-antlr4-python3-runtime.spec | 91 +++++++++ 7 files changed, 379 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 LICENSE.txt create mode 100644 python-antlr4-python3-runtime-4.13.1.tar.gz create mode 100644 python-antlr4-python3-runtime-4.13.2.tar.gz create mode 100644 python-antlr4-python3-runtime.changes create mode 100644 python-antlr4-python3-runtime.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..cccde45 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,52 @@ +[The "BSD 3-clause license"] +Copyright (c) 2012-2017 The ANTLR Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +===== + +MIT License for codepointat.js from https://git.io/codepointat +MIT License for fromcodepoint.js from https://git.io/vDW1m + +Copyright Mathias Bynens + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/python-antlr4-python3-runtime-4.13.1.tar.gz b/python-antlr4-python3-runtime-4.13.1.tar.gz new file mode 100644 index 0000000..0fb1830 --- /dev/null +++ b/python-antlr4-python3-runtime-4.13.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da20d487524d7f0a8b13f73a8dc326de7fc2e5775f5a49693c0a4e59c6b1410c +size 4164054 diff --git a/python-antlr4-python3-runtime-4.13.2.tar.gz b/python-antlr4-python3-runtime-4.13.2.tar.gz new file mode 100644 index 0000000..b9f6f2f --- /dev/null +++ b/python-antlr4-python3-runtime-4.13.2.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f18272a9b32b622835a3365f850dd1063d60f5045fb1e12ce475ae6e18a35bb +size 4167326 diff --git a/python-antlr4-python3-runtime.changes b/python-antlr4-python3-runtime.changes new file mode 100644 index 0000000..543d518 --- /dev/null +++ b/python-antlr4-python3-runtime.changes @@ -0,0 +1,206 @@ +------------------------------------------------------------------- +Mon Aug 25 09:52:12 UTC 2025 - Markéta Machová + +- Convert to libalternatives on SLE-16-based and newer systems + +------------------------------------------------------------------- +Tue Oct 8 12:57:07 UTC 2024 - John Paul Adrian Glaubitz + +- Update to version 4.13.2 + cpp target + * [Cpp] Use target_include_dirs for cmake targets (target:cpp) + * Update C++ documentation to state that C++17 is required (comp:doc, target:cpp) + go target + * fix go-target.md, remove duplicate 'get' (comp:doc, target:go) + javascript target + * fix(javascript): fix types not being recognized for NodeNext module resolution (target:javascript) + * [Javascript] Fix broken package entrypoints (target:javascript, type:cleanup) + python3 target + * name 'state' conflict with Python3 runtime. (target:python3) + +------------------------------------------------------------------- +Thu Mar 7 11:43:18 UTC 2024 - John Paul Adrian Glaubitz + +- Switch package to modern Python Stack on SLE-15 + + Add %{?sle15_python_module_pythons} + + Drop %{?!python_module:%define python_module() python-%{**} python3-%{**}} + + Drop %define skip_python2 1 + + Drop support for older Python 3.x versions + +------------------------------------------------------------------- +Thu Feb 8 09:57:35 UTC 2024 - Adrian Schröter + +- fix build for python 3.12 + +------------------------------------------------------------------- +Wed Jan 3 09:41:42 UTC 2024 - Dirk Müller + +- require setuptools + +------------------------------------------------------------------- +Thu Nov 16 07:20:10 UTC 2023 - John Paul Adrian Glaubitz + +- Update to version 4.13.1 + csharp target + * [CSharp] Fix for #4386 -- change signatures for ReportAttemptingFullContext() + and ReportContextSensitivity() to be identical to all other targets (target:csharp, + type:cleanup) + go target + * Move GetText(), SetText(), and String() from CommonToken to BaseToken + (target:go, type:cleanup) + * Restore "Obtained from string" source name. (target:go, type:cleanup) + * fix: Fix very minor code issues spotted by goreportcard.com (target:go, type:cleanup) + java target + * Java: suppress this-escape warning introduced in JDK 21. (actions, target:java) + javascript target + * Adds default targets for babel configuration (target:javascript) + * fix dependabot warnings (target:javascript, type:cleanup) + swift target + * [SWIFT] Add Antlr4Dynamic product (target:swift) + * Cleanup duplicate SwiftTarget code (target:swift, type:cleanup) + dart target + * [Dart] Fix for #4320--export additional types (type:bug, target:dart) +- from version 4.13.0 + Issues fixed + * antlr4 jar doubled in size in 4.9.3 (unicode, comp:performance) + * Go: exponentially bad/absymal performance as of ... (type:bug, target:go) + * Go runtime panic (type:bug, target:go) + Improvements, features + * Update LexerATNSimulator.cs with virtual Consume (type:improvement, target:csharp) + * Feature/fixembedding (type:improvement, target:go, comp:performance) + * Provide Javascript port of TokenStreamRewriter (type:feature, + target:javascript, target:typescript) +- from version 4.12.0 + Issues fixed + * github actions now fail for python2 and ubuntu clang and ubuntu swift + (comp:runtime, comp:build, comp:testing) + * js mergeArrays output differs from java (atn-analysis, target:javascript) + * C++ target fails Performance/DropLoopEntryBranchInLRRule_4.txt + (atn-analysis, type:bug, target:cpp) + * Wrong grammarFileName in generated code (code-gen, type:bug) + * C++ crashes on new test ParserExec/ListLabelsOnRuleRefStartOfAlt.txt + (atn-analysis, type:bug, target:cpp) + * [JavaScript runtime] Bad field name, bad comments (type:bug) + Improvements, features + * Fully qualify std::move invocations to fix -Wunqualified-std-cast-call + (type:improvement, target:cpp) + * Extract FileUtils updates by @ericvergnaud (type:improvement, + cross-platform-issue, comp:testing) + * Extract unit test updates by @ericvergnaud needed for TypeScript + (type:improvement, comp:testing) + * [Go target] Fix for #3926: Add accessors for tree navigation to interfaces + in generated parser (trees-contexts, code-gen, type:improvement, target:go) + * GitHub Workflows security hardening (actions, type:improvement, comp:testing) +- from version 4.11.1 + * Just fixes 4.11.0 release issue. I forgot to change runtime + tool version so it didn't say SNAPSHOT. +- from version 4.11.0 + Issues fixed + * Disable failing CI tests in master (comp:build, comp:testing) + * Create accessor for Go-based IntervalSet.intervals (target:go) + * Grammar Name Conflict Golang with SPARQL issue (target:go, type:cleanup) + * Dependency declaration error in ANTLR 4.10.1 (comp:build) + * Drop old version of Visual Studio C++ (2013, 2015, 2017) + (comp:build, target:cpp) + * Circular grammar inclusion causes stack overflow in the tool. + (comp:tool, type:bug) + * Cpp, Go, JavaScript, Python2/3: Template rendering error. (code-gen, comp:runtime, + target:java, target:javascript, target:python2, target:python3, target:go) + Improvements, features + * Augment error message during testing to include full cause of problem. + (type:improvement, comp:testing) + * Include swift & tool verification in CI workflow (type:improvement, + comp:build, cross-platform-issue, target:swift) + * Issue #3783: CI Check Builds (type:improvement, comp:build, + cross-platform-issue, comp:testing) + * Parallel lock free testing, remove potential deadlocks, cache static data, + go to descriptor via test (comp:runtime, type:improvement, comp:testing) + * update getting-started doc (type:improvement, comp:doc) + * Getting Started has error (type:improvement, comp:doc) + * new nuget directory for building ANTLR4 C++ runtime as 3 Nuget packages + (type:improvement, comp:build, target:cpp) + * Add interp tool like TestRig (comp:tool, type:feature) + * Issue 3720: Java 2 Security issue (type:improvement, target:java) + * Cpp: Disable warnings for external project (type:bug, type:improvement, target:cpp) + * Fix Docker README for arm OS user (type:improvement, comp:doc) +- from version 4.10.1 + * [C++] Remove reference to antlrcpp:s2ws + * Update publishing instruction for Dart +- from version 4.10.0 + Issues fixed + * C++ runtime: Version identifier macro ? (target:cpp, type:cleanup) + * Generating XPath lexer/parser (actions, type:bug) + * do we need this C++ ATN serialization? (target:cpp, type:cleanup) + * Incorrect type of token with number 0xFFFF because of incorrect + ATN serialization (atn-analysis, type:bug) + * Clean up ATN serialization: rm UUID and shifting by value of 2 + (atn-analysis, type:cleanup) + * The parseFile method of the InterpreterDataReader class is missing + code: "line = br.readLine();" (type:bug, target:java) + * antlr.runtime.standard 4.9.3 invalid strong name. + (type:bug, comp:build, target:csharp) + * Serialized ATN data element 810567 element 11 out of + range 0..65535 (atn-analysis, type:cleanup) + * Go target, unable to check when custom error strategy + is in recovery mode (target:go) + * Escape issue for characeters (grammars, type:bug) + * antlr4 java.lang.NullPointerException Antlr 4 4.8 + (grammars, comp:tool, type:bug) + * UnsupportedOperationException while generating code for large grammars. + (atn-analysis, type:cleanup) + * Add a more understandable message than "Serialized ATN data element .... + element ... out of range 0..65535" (atn-analysis, type:cleanup) + * avoid java.lang.StackOverflowError (lexers, error-handling) + * Getting this error: Exception in thread "main" java.lang.UnsupportedOperationException: + Serialized ATN data element out of range (atn-analysis, type:cleanup) + Improvements, features + * Updated getting started with Cpp documentation. (type:improvement, comp:doc) + * Escape bad words during grammar generation (code-gen, type:improvement) + * Implement caseInsensitive option (lexers, options, type:improvement) + * Some tool bugfixes (error-handling, comp:tool, type:improvement, type:cleanup) +- Run testsuite using the tests/run.py script instead of %pyunittest +- Switch build systemd from setuptools to pyproject.toml +- Update BuildRequires from pyproject.toml +- Update filename pattern in %files section + +------------------------------------------------------------------- +Tue May 24 12:02:27 UTC 2022 - John Paul Adrian Glaubitz + +- Update to version 4.9.3 + Issues fixed + * Swift Target Crashes with Multi-Threading + * JavaScript Runtime bug + * Go target, cannot use superClass for the lexer grammar! + * Python runtime is inconsistent with Java + * FunctionDef source extract using getText() + * Provide .NET Framework target in the csharp nuget package + * Go target for Antlr tool, type ",int8" => "int8" + * Flutter/Dart web support + * Allow Antlr Javascript runtime to be loaded into Kindle Touch + * Fix Go test suite + * Weird error + Improvements, features + * [C++] Use faster alternative to dynamic_cast when not testing inherit + * Stackoverflow after upgrading from 4.6 to 4.7 +- from version 4.9.2 + Issues fixed + * CSharp and Java produce different results for identical input, identical tokens + Improvements, features + * Moved away from travis-ci.com +- Source upstream tarball from Github since PyPi tarball no longer ships testsuite + +------------------------------------------------------------------- +Sun Jan 31 10:41:57 UTC 2021 - andy great + +- Update to version 4.9.1. + * Improve python3 performance by adding slots + * Fix incorrect python token string templates +- Add testing. +- Skip python2 because this is for python3. +- Use python_alternative + +------------------------------------------------------------------- +Wed Apr 29 12:49:38 UTC 2020 - John Paul Adrian Glaubitz + +- Initial build + + Version 4.8 diff --git a/python-antlr4-python3-runtime.spec b/python-antlr4-python3-runtime.spec new file mode 100644 index 0000000..a02669a --- /dev/null +++ b/python-antlr4-python3-runtime.spec @@ -0,0 +1,91 @@ +# +# spec file for package python-antlr4-python3-runtime +# +# Copyright (c) 2025 SUSE LLC and contributors +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%if 0%{?suse_version} > 1500 +%bcond_without libalternatives +%else +%bcond_with libalternatives +%endif +%{?sle15_python_module_pythons} +Name: python-antlr4-python3-runtime +Version: 4.13.2 +Release: 0 +Summary: ANTLR runtime for Python 3 +License: BSD-3-Clause +URL: https://www.antlr.org +Source: https://github.com/antlr/antlr4/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz +Source1: LICENSE.txt +BuildRequires: %{python_module pip} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: python-rpm-macros +BuildArch: noarch +%if %{with libalternatives} +BuildRequires: alts +Requires: alts +%else +Requires(post): update-alternatives +Requires(postun): update-alternatives +%endif +%python_subpackages + +%description +ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for +reading, processing, executing, or translating structured text or binary files. + +This package contains the runtime for Python 3. + +%prep +%setup -q -n antlr4-%{version}/runtime/Python3 +cp %{SOURCE1} LICENSE.txt +# fixing for python 3.12 +sed -i 's,self.assertEquals,self.assertEqual,' tests/Test* + +%build +%pyproject_wheel + +%install +%pyproject_install +%python_clone -a %{buildroot}%{_bindir}/pygrun +%python_expand %fdupes %{buildroot}%{$python_sitelib} +%prepare_alternative pygrun + +%post +%python_install_alternative pygrun + +%postun +%python_uninstall_alternative pygrun + +%pre +%python_libalternatives_reset_alternative pygrun + +%check +cd %{_builddir}/antlr4-%{version}/runtime/Python3 +%{python_expand # +PYTHONPATH=%{buildroot}%{$python_sitelib} $python tests/run.py +} + +%files %{python_files} +%doc README.txt +%license LICENSE.txt +%python_alternative %{_bindir}/pygrun +%{python_sitelib}/antlr4_python3_runtime-*.dist-info +%{python_sitelib}/antlr4 + +%changelog