commit 18b59b013a92f579322fd079315b2782327b432d42cb55e0c03905aee9d00cee Author: Matej Cepl Date: Fri Jul 19 17:57:15 2024 +0000 - Add no-store-btime-gzip.patch to fix bsc#1227999 by not storing build time in gzip headers so as to make building documentation reproducible - Add rpmlintrc OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-sphinxcontrib-devhelp?expand=0&rev=14 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/_multibuild b/_multibuild new file mode 100644 index 0000000..fcc7b97 --- /dev/null +++ b/_multibuild @@ -0,0 +1,3 @@ + + test + diff --git a/no-store-btime-gzip.patch b/no-store-btime-gzip.patch new file mode 100644 index 0000000..47aefe1 --- /dev/null +++ b/no-store-btime-gzip.patch @@ -0,0 +1,25 @@ +From 2e0fc9b9da0227b146258aa3831a416c7b023234 Mon Sep 17 00:00:00 2001 +From: "Bernhard M. Wiedemann" +Date: Wed, 17 Jul 2024 07:50:46 +0200 +Subject: [PATCH] Avoid storing build time in gzip headers + +This allows to create bit-reproducible Python3.12/Python.devhelp.gz output. + +See https://reproducible-builds.org/ for why this is good. +--- + sphinxcontrib/devhelp/__init__.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/sphinxcontrib/devhelp/__init__.py b/sphinxcontrib/devhelp/__init__.py +index bc99016..fc441d0 100644 +--- a/sphinxcontrib/devhelp/__init__.py ++++ b/sphinxcontrib/devhelp/__init__.py +@@ -124,7 +124,7 @@ def write_index(title: str, refs: list[Any], subitems: Any) -> None: + + # Dump the XML file + xmlfile = path.join(outdir, outname + '.devhelp.gz') +- with gzip.open(xmlfile, 'w') as f: ++ with gzip.GzipFile(filename=xmlfile, mode='w', mtime=0) as f: + tree.write(f, 'utf-8') # type: ignore + + diff --git a/python-sphinxcontrib-devhelp.changes b/python-sphinxcontrib-devhelp.changes new file mode 100644 index 0000000..3dbaab1 --- /dev/null +++ b/python-sphinxcontrib-devhelp.changes @@ -0,0 +1,45 @@ +------------------------------------------------------------------- +Fri Jul 19 17:56:18 UTC 2024 - Matej Cepl + +- Add no-store-btime-gzip.patch to fix bsc#1227999 by not storing + build time in gzip headers so as to make building documentation + reproducible +- Add rpmlintrc + +------------------------------------------------------------------- +Sun Jan 14 10:42:57 UTC 2024 - Dirk Müller + +- update to 1.0.6: + * Remove Sphinx as a required dependency, as circular + dependencies may cause failure with package managers that + expect a directed acyclic graph (DAG) of dependencies. + +------------------------------------------------------------------- +Thu Sep 7 11:17:56 UTC 2023 - Dirk Müller + +- update to 1.0.5: + * Use ``os.PathLike`` over ``pathlib.Path`` + * Fix tests for Sphinx 7.1 and below + * Drop support for Python 3.5, 3.6, 3.7, and 3.8 + * Raise minimum required Sphinx version to 5.0 + +------------------------------------------------------------------- +Fri Apr 21 12:36:52 UTC 2023 - Dirk Müller + +- add sle15_python_module_pythons (jsc#PED-68) + +------------------------------------------------------------------- +Thu Apr 13 22:45:07 UTC 2023 - Matej Cepl + +- Make calling of %{sle15modernpython} optional. + +------------------------------------------------------------------- +Fri Mar 6 12:52:53 UTC 2020 - pgajdos@suse.com + +- version update to 1.0.2 + * Fix package metadata + +------------------------------------------------------------------- +Tue Jun 4 12:02:12 UTC 2019 - Tomáš Chvátal + +- Initial commit, needed by Sphinx diff --git a/python-sphinxcontrib-devhelp.rpmlintrc b/python-sphinxcontrib-devhelp.rpmlintrc new file mode 100644 index 0000000..cf2462c --- /dev/null +++ b/python-sphinxcontrib-devhelp.rpmlintrc @@ -0,0 +1,2 @@ +addFilter("hidden-file-or-dir /usr/lib/python.*/sphinxcontrib/devhelp/locales/.tx") +addFilter("file-not-in-%lang /usr/lib/python.*/site-packages/sphinxcontrib/devhelp/locales/.*\.mo") diff --git a/python-sphinxcontrib-devhelp.spec b/python-sphinxcontrib-devhelp.spec new file mode 100644 index 0000000..ff35d8b --- /dev/null +++ b/python-sphinxcontrib-devhelp.spec @@ -0,0 +1,82 @@ +# +# spec file for package python-sphinxcontrib-devhelp +# +# Copyright (c) 2024 SUSE LLC +# +# 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/ +# + + +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "test" +%define psuffix -test +%bcond_without test +%else +%define psuffix %{nil} +%bcond_with test +%endif +%{?sle15_python_module_pythons} +Name: python-sphinxcontrib-devhelp%{psuffix} +Version: 1.0.6 +Release: 0 +Summary: Sphinx extension which outputs Devhelp documents +License: BSD-2-Clause +Group: Development/Languages/Python +URL: https://github.com/sphinx-doc/sphinxcontrib-devhelp +Source0: https://files.pythonhosted.org/packages/source/s/sphinxcontrib-devhelp/sphinxcontrib_devhelp-%{version}.tar.gz +Source99: python-sphinxcontrib-devhelp.rpmlintrc +# PATCH-FIX-UPSTREAM no-store-btime-gzip.patch bsc#1227999 mcepl@suse.com +# don't store build time in gzip headers to make building documentation reproducible +Patch0: no-store-btime-gzip.patch +%if %{with test} +BuildRequires: %{python_module Sphinx >= 5.0} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module sphinxcontrib-devhelp >= %{version}} +%endif +BuildRequires: %{python_module flit-core} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: python-rpm-macros +BuildArch: noarch +%python_subpackages + +%description +sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document. + +%prep +%autosetup -p1 -n sphinxcontrib_devhelp-%{version} + +%build +%pyproject_wheel + +%install +%if %{without test} +%pyproject_install +%python_expand %fdupes %{buildroot}%{$python_sitelib} +%endif + +%if %{with test} +%check +%pytest +%endif + +%if %{without test} +%files %{python_files} +%doc README.rst CHANGES +%license LICENSE +%dir %{python_sitelib}/sphinxcontrib +%{python_sitelib}/sphinxcontrib/devhelp +%{python_sitelib}/sphinxcontrib_devhelp-%{version}*-info +%endif + +%changelog diff --git a/sphinxcontrib_devhelp-1.0.6.tar.gz b/sphinxcontrib_devhelp-1.0.6.tar.gz new file mode 100644 index 0000000..51bf1d4 --- /dev/null +++ b/sphinxcontrib_devhelp-1.0.6.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9893fd3f90506bc4b97bdb977ceb8fbd823989f4316b28c3841ec128544372d3 +size 12480