Accepting request 1102932 from GNOME:Factory

Simplify spec file by dropping update-alternatives and many unneeded Python single spec macros; and amend Licenses tag, among other things (forwarded request 1101271 from luc14n0)

OBS-URL: https://build.opensuse.org/request/show/1102932
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-gi-docgen?expand=0&rev=8
This commit is contained in:
Dominique Leuenberger 2023-08-09 15:24:11 +00:00 committed by Git OBS Bridge
commit bca101c1c9
4 changed files with 120 additions and 37 deletions

50
README.license Normal file
View File

@ -0,0 +1,50 @@
# "Borrowed" from the Fedora folks - and slightly adapted (regarding what
# gets installed, or not, in our spec file):
#
# Based on the “Copyright and Licensing terms” in README.md, on the
# contents of .reuse/dep5, and on inspection of SPDX headers or other file
# contents with assistance from licensecheck.
#
# The entire source is (Apache-2.0 OR GPL-3.0-or-later) except the
# following files that are packaged or are used to generate packaged files:
#
# MIT:
# - gidocgen/templates/basic/fzy.js
# - gidocgen/templates/basic/solarized-{dark,light}.js
#
# CC0-1.0:
# - gi-docgen.pc.in (from which gi-docgen.pc is generated)
# - gidocgen/templates/basic/*.png
# - docs/CODEOWNERS (not packaged)
# - examples/*.toml (not packaged)
#
# Note that CC0-1.0 is allowed for content only; these files may reasonably
# be called content.
#
# Additionally, the following sources are under licenses other than
# (ASL 2.0 or GPL-3.0-or-later), but are not packaged in any of the binary
# RPMs:
#
# CC0-1.0:
# - .editorconfig (not installed)
# - .gitlab-ci.yml (not installed)
# - gi-docgen.doap (not installed)
# - MANIFEST.in (not installed)
# - pytest.ini (not installed)
#
# CC-BY-SA-3.0:
# - docs/gi-docgen.{png,svg} (for HTML docs; not currently packaged)
# - code-of-conduct.md (not installed)
#
# OFL-1.1:
# - gidocgen/templates/basic/*.{woff,woff2}
#
# GPL-2.0-or-later:
# - test/gir/{Utility-1.0,Regress-1.0}.gir (not installed; test only)
#
# LGPL-2.0-or-later:
# - test/gir/{GLib,GObject,Gio}-2.0.gir (not installed; test only)
#
# LGPL-2.0-or-later OR MPL-1.1:
# - test/gir/cairo-1.0.gir (not installed; test only)
#

View File

@ -0,0 +1,2 @@
# We don't want to split the package only because of one file.
addFilter("E: devel-file-in-non-devel-package");

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Tue Jan 10 13:13:36 UTC 2023 - Luciano Santos <luc14n0@opensuse.org>
- Drop python3-coverage and python3-green package sugestion as they
are really meant for development, not for packaging purposes.
- Drop update-alternatives facility. GI-DocGen turned out to be a
non-user-facing software, so there's no need to have alternatives
for it and we're already producing only the main Python 3 flavor
anyway.
- Change URL tag from gitlab.gnome.org/ebassi/gi-docgen to
gitlab.gnome.org/GNOME/gi-docgen. GI-DocGen is an official
project under the GNOME umbrella now.
- Update "Apache-2.0 AND GPL-3.0-or-later AND CC0-1.0" License tag
to "(Apache-2.0 OR GPL-3.0-or-later) AND CC0-1.0 AND MIT AND
OFL-1.1", to account for a couple of missed licenses, and a
choice between Apache and GPL licenses.
- Following the changes from version 2023.1, use tomli Python
module as build and runtime requirement for Python older than
3.11. Otherwise, the tomllib Python module, provided by the
standard library, is going to be used instead.
-------------------------------------------------------------------
Fri Jan 6 19:34:04 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>

View File

@ -20,60 +20,70 @@
Name: python-gi-docgen
Version: 2023.1
Release: 0
Summary: Documentation tool for GObject-based libraries
License: Apache-2.0 AND GPL-3.0-or-later AND CC0-1.0
URL: https://gitlab.gnome.org/ebassi/gi-docgen
Summary: A documentation generator for GObject-based libraries
# For reference, as some scripts are known to reorder things:
# (Apache-2.0 OR GPL-3.0-or-later) AND CC0-1.0 AND MIT AND OFL-1.1
License: (Apache-2.0 OR GPL-3.0-or-later) AND CC0-1.0 AND MIT AND OFL-1.1
URL: https://gitlab.gnome.org/GNOME/gi-docgen
Source: https://files.pythonhosted.org/packages/source/g/gi-docgen/gi-docgen-%{version}.tar.gz
Source98: README.license
Source99: %{name}-rpmlintrc
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
BuildRequires: python-rpm-macros
# SECTION test requirements
BuildRequires: %{python_module Jinja2}
BuildRequires: %{python_module Markdown}
BuildRequires: %{python_module MarkupSafe}
BuildRequires: %{python_module Pygments}
BuildRequires: %{python_module toml}
BuildRequires: %{python_module typogrify}
# /SECTION
BuildRequires: fdupes
Requires: python-Jinja2
Requires: python-Markdown > 3.2.0
Requires: python-MarkupSafe
Requires: python-Pygments
Requires: python-toml
Requires: python-typogrify
Suggests: python-coverage
Suggests: python-green
BuildRequires: python-rpm-macros
## Build system dependencies
BuildRequires: python3-setuptools
BuildRequires: python3-wheel
##
BuildRequires: python3-Jinja2
BuildRequires: python3-Markdown
BuildRequires: python3-MarkupSafe
BuildRequires: python3-Pygments
BuildRequires: python3-typogrify
# As of version 2023.1, gi-docgen uses tomlib (which is available in the
# standard library) for Python 3.11+ and tomli/toml for older releases.
BuildRequires: (python3-tomli if ((python310-base with python3-base) or (python39-base with python3-base)))
Requires: python3-Jinja2
Requires: python3-Markdown > 3.2.0
Requires: python3-MarkupSafe
Requires: python3-Pygments
Requires: python3-typogrify
Requires: (python3-tomli if ((python310-base with python3-base) or (python39-base with python3-base)))
Obsoletes: python38-gi-docgen < %{version}
BuildArch: noarch
%python_subpackages
%description
Documentation tool for GObject-based libraries
GI-DocGen is a document generator for GObject-based libraries.
GObject is the base type system of the GNOME project. GI-Docgen
reuses the introspection data generated by GObject-based libraries
to generate the API reference of these libraries, as well as other
ancillary documentation.
%prep
%autosetup -n gi-docgen-%{version} -p1
# Copy README.license to the source tree, so we can use the %%doc macro on it.
cp %{SOURCE98} .
%build
%python_build
%python3_build
%install
%python_install
%python_clone -a %{buildroot}%{_bindir}/gi-docgen
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%post
%python_install_alternative gi-docgen
%postun
%python_uninstall_alternative gi-docgen
%python3_install
%fdupes %{buildroot}%{python3_sitelib}
%files %{python_files}
%doc README.md
%license LICENSES LICENSES/Apache-2.0.txt LICENSES/GPL-3.0-or-later.txt
%python_alternative %{_bindir}/gi-docgen
%{python_sitelib}/*
%doc README.md README.license
%license LICENSES/Apache-2.0.txt
%license LICENSES/GPL-3.0-or-later.txt
%license LICENSES/MIT.txt
%license LICENSES/OFL-1.1.txt
%license LICENSES/CC0-1.0.txt
%{_bindir}/gi-docgen
%{python3_sitelib}/gidocgen/
%{python3_sitelib}/gi_docgen-%{version}-py%{python3_version}.egg-info/
%{_mandir}/man1/gi-docgen.1%{?ext_man}
%{_datadir}/pkgconfig/gi-docgen.pc