diff --git a/hotdoc/.SRCINFO b/hotdoc/.SRCINFO new file mode 100644 index 0000000000..e2b2d1bcae --- /dev/null +++ b/hotdoc/.SRCINFO @@ -0,0 +1,48 @@ +pkgbase = hotdoc + pkgdesc = The tastiest API documentation system + pkgver = 0.17.4 + pkgrel = 1 + url = https://github.com/hotdoc/hotdoc + arch = x86_64 + arch = powerpc64le + arch = powerpc64 + arch = riscv64 + license = LGPL-2.1-or-later + makedepends = cmake + makedepends = git + makedepends = npm + makedepends = python-build + makedepends = python-installer + makedepends = python-setuptools + makedepends = python-wheel + depends = bash + depends = glib2 + depends = glibc + depends = json-glib + depends = libxml2 + depends = python + depends = python-appdirs + depends = python-dbus-deviation + depends = python-faust-cchardet + depends = python-feedgen + depends = python-lxml + depends = python-networkx + depends = python-pkgconfig + depends = python-schema + depends = python-toposort + depends = python-wheezy-template + depends = python-yaml + optdepends = clang: for the C extension + optdepends = llvm: for the C extension + source = git+https://github.com/hotdoc/hotdoc#tag=0.17.4 + source = git+https://github.com/MathieuDuponchelle/cmark + source = git+https://github.com/PrismJS/prism + source = git+https://github.com/hotdoc/hotdoc_bootstrap_theme + source = 0001-Simplify-deps-for-Python-3.11.patch + sha256sums = 9ba11a71cb8e4c5fa2bb33bc4f27f5fee02cf8328b5f8a2bcb4986116f98d443 + sha256sums = SKIP + sha256sums = SKIP + sha256sums = SKIP + sha256sums = 865812a0c5a66822ece814e898b4b3ca46553ba51190adc944bb4f01c0db6cf0 + +pkgname = hotdoc diff --git a/hotdoc/.nvchecker.toml b/hotdoc/.nvchecker.toml new file mode 100644 index 0000000000..861070f698 --- /dev/null +++ b/hotdoc/.nvchecker.toml @@ -0,0 +1,3 @@ +[hotdoc] +source = "pypi" +pypi = "hotdoc" diff --git a/hotdoc/0001-Simplify-deps-for-Python-3.11.patch b/hotdoc/0001-Simplify-deps-for-Python-3.11.patch new file mode 100644 index 0000000000..9fe876f3ef --- /dev/null +++ b/hotdoc/0001-Simplify-deps-for-Python-3.11.patch @@ -0,0 +1,63 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: "Jan Alexander Steffens (heftig)" +Date: Sat, 27 Jul 2024 15:27:31 +0200 +Subject: [PATCH] Simplify deps for Python 3.11+ + +--- + hotdoc/extensions/gi/utils.py | 2 +- + hotdoc/utils/utils.py | 8 ++------ + setup.py | 2 -- + 3 files changed, 3 insertions(+), 9 deletions(-) + +diff --git a/hotdoc/extensions/gi/utils.py b/hotdoc/extensions/gi/utils.py +index 159c2b65d886..5007bf23bf45 100644 +--- a/hotdoc/extensions/gi/utils.py ++++ b/hotdoc/extensions/gi/utils.py +@@ -3,7 +3,7 @@ from collections import namedtuple + import pathlib + import traceback + +-from backports.entry_points_selectable import entry_points ++from importlib.metadata import entry_points + + from hotdoc.core.links import Link + from hotdoc.utils.loggable import info, debug +diff --git a/hotdoc/utils/utils.py b/hotdoc/utils/utils.py +index 518d308646fa..12f67f2f4fff 100644 +--- a/hotdoc/utils/utils.py ++++ b/hotdoc/utils/utils.py +@@ -35,11 +35,7 @@ import importlib.util + from urllib.request import urlretrieve + from pathlib import Path + +-from backports.entry_points_selectable import entry_points +-try: +- import importlib.metadata as meta +-except ImportError: +- import importlib_metadata as meta ++import importlib.metadata as meta + + from toposort import toposort_flatten + +@@ -226,7 +222,7 @@ def get_extension_classes(sort: bool, + all_classes = {} + deps_map = {} + +- for entry_point in entry_points( ++ for entry_point in meta.entry_points( + group='hotdoc.extensions', name='get_extension_classes'): + if getattr(entry_point, 'module', '') == 'hotdoc_c_extension.extensions': + continue +diff --git a/setup.py b/setup.py +index 5d7f131e4425..7dd5c37bf342 100644 +--- a/setup.py ++++ b/setup.py +@@ -299,8 +299,6 @@ INSTALL_REQUIRES = [ + 'appdirs', + 'wheezy.template', + 'toposort>=1.4', +- 'importlib_metadata; python_version<"3.10"', +- 'backports.entry_points_selectable', + ] + + # dbus-deviation requires sphinx, which requires python 3.5 diff --git a/hotdoc/PKGBUILD b/hotdoc/PKGBUILD new file mode 100644 index 0000000000..d0879fd37c --- /dev/null +++ b/hotdoc/PKGBUILD @@ -0,0 +1,84 @@ +# POWER Maintainer: Alexander Baldeck +# Maintainer: Carl Smedstad +# Contributor: Eli Schwartz + +pkgname=hotdoc +pkgver=0.17.4 +pkgrel=1 +pkgdesc="The tastiest API documentation system" +url="https://github.com/hotdoc/hotdoc" +arch=(x86_64 powerpc64le powerpc64 riscv64) +license=(LGPL-2.1-or-later) +depends=( + bash + glib2 + glibc + json-glib + libxml2 + python + python-appdirs + python-dbus-deviation + python-faust-cchardet + python-feedgen + python-lxml + python-networkx + python-pkgconfig + python-schema + python-toposort + python-wheezy-template + python-yaml +) +makedepends=( + cmake + git + npm + python-build + python-installer + python-setuptools + python-wheel +) +optdepends=( + 'clang: for the C extension' + 'llvm: for the C extension' +) +source=( + "git+https://github.com/hotdoc/hotdoc#tag=$pkgver" + "git+https://github.com/MathieuDuponchelle/cmark" + "git+https://github.com/PrismJS/prism" + "git+https://github.com/hotdoc/hotdoc_bootstrap_theme" + "0001-Simplify-deps-for-Python-3.11.patch" +) +sha256sums=('9ba11a71cb8e4c5fa2bb33bc4f27f5fee02cf8328b5f8a2bcb4986116f98d443' + 'SKIP' + 'SKIP' + 'SKIP' + '865812a0c5a66822ece814e898b4b3ca46553ba51190adc944bb4f01c0db6cf0') + +prepare() { + cd $pkgname + + patch -Np1 -i "$srcdir/0001-Simplify-deps-for-Python-3.11.patch" + + git submodule init + git config submodule.cmark.url "$srcdir/cmark" + git config submodule.hotdoc/extensions/syntax_highlighting/prism.url "$srcdir/prism" + git config submodule.hotdoc/hotdoc_bootstrap_theme.url "$srcdir/hotdoc_bootstrap_theme" + git -c protocol.file.allow=always submodule update +} + +build() { + cd $pkgname + python -m build --wheel --no-isolation +} + +check() { + cd $pkgname + python -m installer -d tmp_install dist/*.whl + local site_packages=$(python -c "import site; print(site.getsitepackages()[0])") + python -m unittest discover "$PWD/tmp_install/$site_packages" +} + +package() { + cd $pkgname + python -m installer --destdir="$pkgdir" dist/*.whl +}