docs/release_notes.rst: v1.3.0 ====== - Remove dependency on ``defusedxml.lxml``, because this library is deprecated. In the absence of other options for XML hardening we have reverted to standard ``lxml``. pikepdf-1.8.3 $ grep -n lxml setup.py 142: install_requires=['lxml >= 4.0'] pikepdf-1.8.3/src/pikepdf $ grep -rn lxml models/metadata.py:16:from lxml import etree models/metadata.py:17:from lxml.etree import parse, QName, XMLSyntaxError I haven't tested these with 1.8.3 but they worked with 1.8.2: Optional documentation building with: distutils_enable_sphinx docs possibly should be: distutils_enable_sphinx docs dev-python/sphinx_rtd_theme and tests with: test? ( dev-python/hypothesis[${PYTHON_USEDEP}] ) distutils_enable_tests pytest
There was one test which I needed to disable with: sed -i "s:test_stack_depth:_test_stack_depth:" tests/test_object.py || die
(In reply to Chris Mayo from comment #0) You are right, I'll add lxml. > Optional documentation building with: > distutils_enable_sphinx docs > > possibly should be: > distutils_enable_sphinx docs dev-python/sphinx_rtd_theme I tried to do this (though in a more old-fashioned way, by supplying src_compile and src_install). According to requirements/docs.txt, the packages needed for this are sphinx, sphinx-rtd-theme, setuptools_scm (dev-python/setuptools_scm_git_archive depends on it and is already in DEPEND), pybind11 (already in RDEPEND), ipython, matplotlib. ipython and matplotlib don't have python3_8, and, naturally, repoman shouts about wrong dependencies. I had to delete all this stuff from the ebuild before committing to Gentoo. > and tests with: > test? ( dev-python/hypothesis[${PYTHON_USEDEP}] ) > > distutils_enable_tests pytest I tried this, too. According to requirements/test.txt, the needed packages are attrs >= 19.1.0 hypothesis >= 4.24, < 5 Pillow >= 5.0.0 pytest >= 4.4.0, < 5 pytest-xdist >= 1.28, < 2 pytest-helpers-namespace >= 2019.1.8 pytest-timeout >= 1.3.3 python-xmp-toolkit >= 2.0.1 ; sys_platform != "nt" It seems that python-xmp-toolkit is not in Gentoo. I tried to run pytest (by hand, not from the ebuild) after installing everything except python-xmp-toolkit. I got a segfault. After that, I gave up and decided not to include testing in the ebuild for now. If you have any suggestions about these two points, I'll be very glad to hear them. I agree that adding doc and test IUSE flags is very useful. Unfortunately, I haven't succeeded to do it.
In my pull request there are the ebuilds pikepdf with test and doc use flags and sphinx-rtd-theme. Feel free to use them so I can remove from my overlay.
> I tried this, too. According to requirements/test.txt, the needed packages > are > > attrs >= 19.1.0 > hypothesis >= 4.24, < 5 > Pillow >= 5.0.0 > pytest >= 4.4.0, < 5 > pytest-xdist >= 1.28, < 2 > pytest-helpers-namespace >= 2019.1.8 > pytest-timeout >= 1.3.3 > python-xmp-toolkit >= 2.0.1 ; sys_platform != "nt" > > It seems that python-xmp-toolkit is not in Gentoo. I tried to run pytest (by > hand, not from the ebuild) after installing everything except > python-xmp-toolkit. I got a segfault. After that, I gave up and decided not > to include testing in the ebuild for now. I do have dev-python/attrs, dev-python/hypothesis, dev-python/pillow, dev-python/pytest and dev-python/pytest-xdist installed. With the sed the other tests were running (on 1.8.2, doing a diff the change to the test in 1.8.3 is minimal with one test being parametrized). I think that test may be the cause of your segfault. There is a needs_libxmp fixture that checks whether python-xmp-toolkit is installed in test_metadata.py. So, without it the test is just being skipped. > > Optional documentation building with: > > distutils_enable_sphinx docs > > > > possibly should be: > > distutils_enable_sphinx docs dev-python/sphinx_rtd_theme > I tried to do this (though in a more old-fashioned way, by supplying > src_compile and src_install). According to requirements/docs.txt, the > packages needed for this are sphinx, sphinx-rtd-theme, setuptools_scm > (dev-python/setuptools_scm_git_archive depends on it and is already in > DEPEND), > pybind11 (already in RDEPEND), ipython, matplotlib. ipython and matplotlib > don't have python3_8, and, naturally, repoman shouts about wrong > dependencies. I had to delete all this stuff from the ebuild before > committing to Gentoo. I do have dev-python/ipython and dev-python/matplotlib. That probably masked this for me. Although the distutils_enable_sphinx is using python_gen_any_dep with autodoc (the default) so maybe that gets around the problem of Python 3.8 support.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a08c97274a3610e3ed0a7c78e4f8c51d712aa63c commit a08c97274a3610e3ed0a7c78e4f8c51d712aa63c Author: Andrey Grozin <grozin@gentoo.org> AuthorDate: 2020-01-13 16:12:59 +0000 Commit: Andrey Grozin <grozin@gentoo.org> CommitDate: 2020-01-13 16:13:42 +0000 dev-python/pikepdf: ebuild improvements Thanks to Chris Mayo <aklhfex@gmail.com> and Marco Genasci <fedeliallalinea@gmail.com> Closes: https://bugs.gentoo.org/705062 Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Andrey Grozin <grozin@gentoo.org> dev-python/pikepdf/files/pikepdf-1.8.3-test.patch | 40 +++++++++++++++++++++++ dev-python/pikepdf/pikepdf-1.8.3.ebuild | 37 +++++++++++++++++++-- 2 files changed, 75 insertions(+), 2 deletions(-)