## START: Set by rpmautospec ## (rpmautospec version 0.7.3) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %global srcname beanquery Name: python-%{srcname} Version: 0.1.0 Release: %autorelease Summary: Customizable lightweight SQL query tool for Beancount License: GPL-2.0-only URL: https://github.com/beancount/beanquery # PyPI tarball doesn't include the parser source Source: %{url}/archive/v%{version}/%{srcname}-%{version}.tar.gz BuildArch: noarch BuildRequires: python3-devel BuildRequires: python3-docs BuildRequires: sed # Documentation BuildRequires: texinfo BuildRequires: python3dist(docutils) # Tests BuildRequires: python3dist(pytest) %global _description %{expand: Beanquery is a customizable and extensible lightweight SQL query tool that works on tabular data, including Beancount ledger data.} %description %_description %package -n %{srcname} Summary: %{summary} Requires: python3-%{srcname} = %{version}-%{release} %description -n %{srcname} %_description %package -n python3-%{srcname} Summary: %{summary} %description -n python3-%{srcname} %_description %package -n %{srcname}-doc Summary: Documentation and examples for %{srcname} Requires: python3-docs %description -n %{srcname}-doc %_description This package contains additional documentation and examples for %{srcname}. %prep %autosetup -p1 -n %{srcname}-%{version} # Relax tatsu version pin sed -i 's/tatsu >= 5.7.4, < 5.8.0/tatsu >= 5.7.4/' pyproject.toml sed -i 's/sphinx ~= 8.1.0/sphinx/' pyproject.toml # Remove pregenerated parser rm beanquery/parser/parser.py # Use local intersphinx inventory sed -r \ -e 's|https://docs.python.org/3|%{_docdir}/python3-docs/html|' \ -i docs/conf.py %generate_buildrequires %pyproject_buildrequires -x docs %build tatsu -o beanquery/parser/parser.py beanquery/parser/bql.ebnf %pyproject_wheel sphinx-build -b texinfo docs texinfo pushd texinfo makeinfo --docbook beanquery.texi popd %install %pyproject_install %pyproject_save_files -l %{srcname} # Remove spurious directory rm -r %{buildroot}%{python3_sitelib}/docs/ install -pDm0644 texinfo/beanquery.xml %{buildroot}%{_datadir}/help/en/beanquery/beanquery.xml %check %pytest -v %files -n %{srcname} %doc README.rst %{_bindir}/bean-query %files -n %{srcname}-doc %license LICENSE %dir %{_datadir}/help/en %lang(en) %{_datadir}/help/en/beanquery %files -n python3-%{srcname} -f %{pyproject_files} %changelog ## START: Generated by rpmautospec * Mon Jun 02 2025 John Doe - 0.1.0-1 - Uncommitted changes ## END: Generated by rpmautospec