diff --git a/SPECS/python-absl-py/python-absl-py.spec b/SPECS/python-absl-py/python-absl-py.spec new file mode 100644 index 000000000..f5ef7469b --- /dev/null +++ b/SPECS/python-absl-py/python-absl-py.spec @@ -0,0 +1,42 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname absl-py +%global pypi_name absl_py + +Name: python-%{srcname} +Version: 2.3.1 +Release: %autorelease +Summary: Abseil Python common libraries +License: Apache-2.0 +URL: https://github.com/abseil/abseil-py +#!RemoteAsset: sha256:a97820526f7fbfd2ec1bce83f3f25e3a14840dac0d8e02a0b71cd75db3f77fc9 +Source0: https://files.pythonhosted.org/packages/source/a/%{srcname}/%{pypi_name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l absl + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(hatchling) >= 1.26 +BuildRequires: python3dist(pip) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +absl-py provides common utility libraries used by Abseil-based Python +projects. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.md +%license LICENSE + +%changelog +%autochangelog diff --git a/SPECS/python-nltk/python-nltk.spec b/SPECS/python-nltk/python-nltk.spec new file mode 100644 index 000000000..631121baa --- /dev/null +++ b/SPECS/python-nltk/python-nltk.spec @@ -0,0 +1,57 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname nltk + +Name: python-%{srcname} +Version: 3.9.2 +Release: %autorelease +Summary: Natural Language Toolkit +License: Apache-2.0 +URL: https://www.nltk.org/ +#!RemoteAsset: sha256:0f409e9b069ca4177c1903c3e843eef90c7e92992fa4931ae607da6de49e1419 +Source0: https://files.pythonhosted.org/packages/source/n/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +# Exclude modules that require external NLTK corpora or optional integrations +# during import. Keep the rest of the runtime surface under import checking. +BuildOption(install): -l %{srcname} +BuildOption(check): -e nltk.book +BuildOption(check): -e nltk.langnames +BuildOption(check): -e nltk.tokenize.nist +BuildOption(check): -e "nltk.test*" +BuildOption(check): -e "nltk.app*" +BuildOption(check): -e "nltk.draw*" +BuildOption(check): -e "nltk.twitter*" +BuildOption(check): %{srcname} + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(click) +BuildRequires: python3dist(joblib) +BuildRequires: python3dist(pip) +BuildRequires: python3dist(regex) >= 2021.8.3 +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(tqdm) +BuildRequires: python3dist(wheel) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +NLTK provides a broad collection of libraries and tools for natural language +processing. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.md AUTHORS.md ChangeLog SECURITY.md +%license LICENSE.txt +%{_bindir}/nltk + +%changelog +%autochangelog diff --git a/SPECS/python-plac/python-plac.spec b/SPECS/python-plac/python-plac.spec new file mode 100644 index 000000000..a97b21496 --- /dev/null +++ b/SPECS/python-plac/python-plac.spec @@ -0,0 +1,44 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname plac + +Name: python-%{srcname} +Version: 1.4.5 +Release: %autorelease +Summary: Command line argument parser for Python +License: BSD-2-Clause +URL: https://github.com/ialbert/plac +#!RemoteAsset: sha256:5f05bf85235c017fcd76c73c8101d4ff8e96beb3dc58b9a37de49cac7de82d14 +Source0: https://files.pythonhosted.org/packages/source/p/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +# plac_tk still imports the Python 2 Tkinter module and is not usable on Python 3. +BuildOption(install): -l plac plac_core plac_ext plac_tk +BuildOption(check): -e plac_tk plac plac_core plac_ext + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(pip) +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(wheel) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +plac provides a command line argument parser and command dispatcher for Python. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.md CHANGES.md +%license LICENSE.txt +%{_bindir}/plac_runner.py + +%changelog +%autochangelog diff --git a/SPECS/python-pyyaml-ft/python-pyyaml-ft.spec b/SPECS/python-pyyaml-ft/python-pyyaml-ft.spec new file mode 100644 index 000000000..157042004 --- /dev/null +++ b/SPECS/python-pyyaml-ft/python-pyyaml-ft.spec @@ -0,0 +1,48 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname pyyaml-ft +%global pypi_name pyyaml_ft + +Name: python-%{srcname} +Version: 8.0.0 +Release: %autorelease +Summary: YAML parser and emitter for Python with free-threading support +License: MIT +URL: https://github.com/Quansight-Labs/pyyaml-ft +#!RemoteAsset: sha256:0c947dce03954c7b5d38869ed4878b2e6ff1d44b08a0d84dc83fdad205ae39ab +Source0: https://files.pythonhosted.org/packages/source/p/%{srcname}/%{pypi_name}-%{version}.tar.gz +BuildSystem: pyproject + +BuildOption(build): -C--global-option=--with-libyaml +BuildOption(install): -l yaml_ft _yaml_ft +BuildOption(check): yaml_ft + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(yaml-0.1) +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(cython) >= 3.1 +BuildRequires: python3dist(pip) +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(wheel) + +Provides: python3-%{srcname} +Provides: python3-%{srcname} = %{version}-%{release} +Provides: python3-%{srcname}%{?_isa} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +PyYAML-ft provides a YAML parser and emitter for Python with support for +free-threaded Python 3.13 runtimes. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.md CHANGES +%license LICENSE + +%changelog +%autochangelog diff --git a/SPECS/python-rouge-score/python-rouge-score.spec b/SPECS/python-rouge-score/python-rouge-score.spec new file mode 100644 index 000000000..bd8889996 --- /dev/null +++ b/SPECS/python-rouge-score/python-rouge-score.spec @@ -0,0 +1,46 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname rouge-score +%global pypi_name rouge_score + +Name: python-%{srcname} +Version: 0.1.2 +Release: %autorelease +Summary: Pure Python implementation of ROUGE-1.5.5 +License: Apache-2.0 +URL: https://github.com/google-research/google-research/tree/master/rouge +#!RemoteAsset: sha256:c7d4da2683e68c9abf0135ef915d63a46643666f848e558a1b9f7ead17ff0f04 +Source0: https://files.pythonhosted.org/packages/source/r/%{srcname}/%{pypi_name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l %{pypi_name} -L +BuildOption(check): %{pypi_name} + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(absl-py) +BuildRequires: python3dist(nltk) +BuildRequires: python3dist(numpy) +BuildRequires: python3dist(pip) +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(six) >= 1.14.0 +BuildRequires: python3dist(wheel) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +rouge-score provides a pure Python implementation of ROUGE-1.5.5. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.md + +%changelog +%autochangelog diff --git a/SPECS/python-sacrebleu/python-sacrebleu.spec b/SPECS/python-sacrebleu/python-sacrebleu.spec new file mode 100644 index 000000000..676f66234 --- /dev/null +++ b/SPECS/python-sacrebleu/python-sacrebleu.spec @@ -0,0 +1,48 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname sacrebleu + +Name: python-%{srcname} +Version: 2.6.0 +Release: %autorelease +Summary: Reproducible BLEU, chrF, and TER score computation +License: Apache-2.0 +URL: https://github.com/mjpost/sacrebleu +#!RemoteAsset: sha256:91499b6cd46138d95154fff1e863c2f9be57e82f0c719d8dd718d0006cf6c566 +Source0: https://files.pythonhosted.org/packages/source/s/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l %{srcname} + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(colorama) +BuildRequires: python3dist(lxml) +BuildRequires: python3dist(numpy) >= 1.17 +BuildRequires: python3dist(pip) +BuildRequires: python3dist(portalocker) +BuildRequires: python3dist(regex) +BuildRequires: python3dist(setuptools) >= 77 +BuildRequires: python3dist(setuptools-scm) >= 8 +BuildRequires: python3dist(tabulate) >= 0.8.9 + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +sacrebleu provides reproducible BLEU, chrF, and TER score computation. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.md CHANGELOG.md DATASETS.md +%license LICENSE.txt +%{_bindir}/sacrebleu + +%changelog +%autochangelog diff --git a/SPECS/python-sacremoses/python-sacremoses.spec b/SPECS/python-sacremoses/python-sacremoses.spec new file mode 100644 index 000000000..c6daaf749 --- /dev/null +++ b/SPECS/python-sacremoses/python-sacremoses.spec @@ -0,0 +1,49 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname sacremoses + +Name: python-%{srcname} +Version: 0.1.1 +Release: %autorelease +Summary: Moses-based text preprocessing utilities +License: MIT +URL: https://github.com/hplt-project/sacremoses +#!RemoteAsset: sha256:b6fd5d3a766b02154ed80b962ddca91e1fd25629c0978c7efba21ebccf663934 +Source0: https://files.pythonhosted.org/packages/source/s/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +# sacremoses.sent_tokenize raises NotImplementedError at import time by design, +# so exclude it from the import smoke test. +BuildOption(install): -l %{srcname} +BuildOption(check): -e sacremoses.sent_tokenize %{srcname} + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(click) +BuildRequires: python3dist(joblib) +BuildRequires: python3dist(pip) +BuildRequires: python3dist(regex) +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(tqdm) +BuildRequires: python3dist(wheel) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +sacremoses provides Moses-based text preprocessing utilities. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/sacremoses + +%changelog +%autochangelog diff --git a/SPECS/python-schedulefree/python-schedulefree.spec b/SPECS/python-schedulefree/python-schedulefree.spec new file mode 100644 index 000000000..ac0e09d70 --- /dev/null +++ b/SPECS/python-schedulefree/python-schedulefree.spec @@ -0,0 +1,49 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname schedulefree + +Name: python-%{srcname} +Version: 1.4.1 +Release: %autorelease +Summary: Schedule-free optimizers for PyTorch +License: Apache-2.0 +URL: https://github.com/facebookresearch/schedule_free +#!RemoteAsset: sha256:69ef25601d1fc0d8dd00cb36f9af78833f88b7846f1bb6ddecc9f144f3e9f7cb +Source0: https://files.pythonhosted.org/packages/source/s/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +# Exclude the packaged test module and the bundled algoperf experiment tree. +# The algoperf modules import undeclared research-only dependencies such as +# algorithmic_efficiency and are not part of the base runtime dependency set. +BuildOption(install): -l %{srcname} +BuildOption(check): -e schedulefree.test_schedulefree +BuildOption(check): -e "schedulefree.algoperf*" +BuildOption(check): %{srcname} + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(absl-py) +BuildRequires: python3dist(hatchling) +BuildRequires: python3dist(pip) +BuildRequires: python3dist(torch) +BuildRequires: python3dist(typing-extensions) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +schedulefree provides schedule-free optimizers for PyTorch. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.md +%license LICENSE + +%changelog +%autochangelog diff --git a/SPECS/python-timeout-decorator/python-timeout-decorator.spec b/SPECS/python-timeout-decorator/python-timeout-decorator.spec new file mode 100644 index 000000000..6507ac314 --- /dev/null +++ b/SPECS/python-timeout-decorator/python-timeout-decorator.spec @@ -0,0 +1,40 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname timeout-decorator + +Name: python-%{srcname} +Version: 0.5.0 +Release: %autorelease +Summary: Timeout decorator +License: MIT +URL: https://github.com/pnpnpn/timeout-decorator +#!RemoteAsset: sha256:6a2f2f58db1c5b24a2cc79de6345760377ad8bdc13813f5265f6c3e63d16b3d7 +Source0: https://files.pythonhosted.org/packages/source/t/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l timeout_decorator -L + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(pip) +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(wheel) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +timeout-decorator provides a simple timeout decorator for Python functions. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.rst CHANGES.rst + +%changelog +%autochangelog diff --git a/SPECS/python-types-dataclasses/python-types-dataclasses.spec b/SPECS/python-types-dataclasses/python-types-dataclasses.spec new file mode 100644 index 000000000..3b42aaf70 --- /dev/null +++ b/SPECS/python-types-dataclasses/python-types-dataclasses.spec @@ -0,0 +1,47 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname types-dataclasses + +Name: python-%{srcname} +Version: 0.6.6 +Release: %autorelease +Summary: Typing stubs for dataclasses +License: Apache-2.0 +URL: https://github.com/python/typeshed +#!RemoteAsset: sha256:4b5a2fcf8e568d5a1974cd69010e320e1af8251177ec968de7b9bb49aa49f7b9 +Source0: https://files.pythonhosted.org/packages/source/t/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): dataclasses-stubs + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(pip) +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(wheel) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +Typeshed contains external type annotations for the Python standard library and +Python builtins, as well as third-party packages that are contributed by people +external to those projects. + +%check +# Keep an explicit empty %%check here: this is a type stubs package, so the +# default pyproject import check would not exercise any meaningful runtime +# module surface. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc CHANGELOG.md + +%changelog +%autochangelog diff --git a/SPECS/python-unidic-lite/python-unidic-lite.spec b/SPECS/python-unidic-lite/python-unidic-lite.spec new file mode 100644 index 000000000..1de7ac019 --- /dev/null +++ b/SPECS/python-unidic-lite/python-unidic-lite.spec @@ -0,0 +1,42 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname unidic-lite + +Name: python-%{srcname} +Version: 1.0.8 +Release: %autorelease +Summary: Small UniDic dictionary package for Python +License: MIT AND BSD-3-Clause +URL: https://github.com/polm/unidic-lite +#!RemoteAsset: sha256:db9d4572d9fdd4d00a97949d4b0741ec480ee05a7e7e2e32f547500dae27b245 +Source0: https://files.pythonhosted.org/packages/source/u/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l unidic_lite +BuildOption(check): unidic_lite + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(pip) +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(wheel) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +unidic-lite provides a compact UniDic dictionary packaged for Python. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%doc README.md unidic_lite/dicdir/README.md +%license LICENSE LICENSE.unidic + +%changelog +%autochangelog