Package Details: python-ufo2ft 2.25.1-1

Git Clone URL: https://aur.archlinux.org/python-ufo2ft.git (read-only, click to copy)
Package Base: python-ufo2ft
Description: A bridge from UFOs to FontTools objects
Upstream URL: https://github.com/googlefonts/ufo2ft
Licenses: MIT
Submitter: thrasibule
Maintainer: alerque (thrasibule)
Last Packager: alerque
Votes: 2
Popularity: 0.37
First Submitted: 2019-08-18 01:33
Last Updated: 2021-10-21 02:43

Pinned Comments

alerque commented on 2021-08-03 10:41

PSA: Like most of the PKGBUILDs that I (co-)maintain, I host prebuilt packages for this in my user repository and all its dependencies for those who wish to install it using pacman without messing around with building from the AUR. Issues or contributions are welcome either in comments below or via this GitHub repository.

Latest Comments

1 2 Next › Last »

alerque commented on 2021-08-03 19:42

The latest build requires the brand new release of fonttools. I've bumped this for [community] but it might take a day or two to get there. Old features still work without it but new features actually do depend on it. If you are in a hurry you can build python-fonttools from the trunk branch or python-fonttools-git from AUR.

alerque commented on 2021-08-03 10:41

PSA: Like most of the PKGBUILDs that I (co-)maintain, I host prebuilt packages for this in my user repository and all its dependencies for those who wish to install it using pacman without messing around with building from the AUR. Issues or contributions are welcome either in comments below or via this GitHub repository.

alerque commented on 2021-07-19 15:59

You asked for smaller patches, here are two for python-cffsubr (and two more for python-compreffor, and two more for python-booleanoperations) for another one of your font tooling related packages that does not currently build at all in a clean chroot because the dependencies are broken and the build cycle is implement wrong.

alerque commented on 2021-07-19 15:12

The only "fix" that I see in this patch is the missing dependency on python-compreffor.

I'm sorry but this just isn't accurate. There were several other significant fixes, just adding python-compresffor to the checkdepends would still have left a broken package. I see you fixed at least two other things I fixed in other ways including patching them out of the upstream source, but my fixes for the setuptools-scm and test runners were also valid fixes.

If you'd prefer small patches I can to that too, but relaying them over AUR comments is clumsy. It's discouraging when suggesting in comments that they are broken nor sending patches has been working to get fixes through on many of your packages that I depend on for other things.

thrasibule commented on 2021-07-18 13:29

I don't value these patches that much since they're a kitchen sink of unrelated fixes:

  • you bump the version to 2.23.
  • there are various stylistic changes that serve no functional purpose.
  • your comment about the stable download url is inaccurate. The url I'm using is just as stable.

The end result is a patch that changes almost every single line. I'd rather have a patch that's atomic and fixes one thing at a time.

The only "fix" that I see in this patch is the missing dependency on python-compreffor. I've bumped the package and fixed the setup.py to not require python-pytest-runner and python-setuptools-scm which are not needed. Please let me know if this doesn't work for you. In the future, I'm happy to apply patches that fix specific issues. In particular I welcome help with tracking the various dependencies that are quite entangled, so it's hard to know what's really required.

alerque commented on 2021-07-17 11:32

Per discussion on aur-requests, here is a refreshed patch to be applied with git am file.patch:

From ea176c78a5d842f3f1345888b2a9497f854a4e77 Mon Sep 17 00:00:00 2001
From: Caleb Maclennan <caleb@alerque.com>
Date: Thu, 26 Mar 2020 11:21:57 +0300
Subject: [PATCH] Bump, fix build issues, follow Python packaging guidelines

For rational behind some of these, please see:
https://wiki.archlinux.org/title/Python_package_guidelines

* Bump to current version
* Use stable download URL
* Split build() and package()
* Use correct test runner (legacy one breaks based on host env)
* Fix makedepeds (uses SCM setuptools)
* Fix checkdepends (wrong test runner, needs optdepends)
* Match more Arch guidelines such as quoting suggestions

Signed-off-by: Caleb Maclennan <caleb@alerque.com>
---
 .SRCINFO | 13 +++++++------
 PKGBUILD | 32 +++++++++++++++++++-------------
 2 files changed, 26 insertions(+), 19 deletions(-)

diff --git a/.SRCINFO b/.SRCINFO
index c084ef0..2c99896 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,20 +1,21 @@
 pkgbase = python-ufo2ft
-   pkgdesc = A bridge from UFOs to FontTools objects.
-   pkgver = 2.21.0
+   pkgdesc = A bridge from UFOs to FontTools objects
+   pkgver = 2.23.0
    pkgrel = 1
    url = https://github.com/googlefonts/ufo2ft
    arch = any
    license = MIT
-   checkdepends = python-pytest
+   checkdepends = python-compreffor
+   checkdepends = python-pytest-runner
    checkdepends = python-skia-pathops
-   makedepends = python-setuptools
+   makedepends = python-setuptools-scm
    depends = python-booleanoperations
    depends = python-cffsubr
    depends = python-cu2qu
    depends = python-defcon
    depends = python-fonttools>=4.21.1
    optdepends = python-compreffor
-   source = https://pypi.org/packages/source/u/ufo2ft/ufo2ft-2.21.0.zip
-   sha256sums = 8387241b9a36ed906a0b99afc80d58cee72ea5266ec0016f17456f765be73300
+   source = https://files.pythonhosted.org/packages/source/u/ufo2ft/ufo2ft-2.23.0.zip
+   sha256sums = 02ceb5201f08b632b84046ddfd11233eaf3633437ccac9981ebf2d944d75616b

 pkgname = python-ufo2ft
diff --git a/PKGBUILD b/PKGBUILD
index a04894a..1bb369c 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,27 +1,33 @@
 # Maintainer: Guillaume Horel <guillaume.horel@gmail.com>
+# Contributor: Caleb Maclennan <caleb@alerque.com>

-pkgname='python-ufo2ft'
-_pkgname='ufo2ft'
-pkgver='2.21.0'
+pkgname=python-ufo2ft
+_pkgname=ufo2ft
+pkgver=2.23.0
 pkgrel=1
-pkgdesc="A bridge from UFOs to FontTools objects."
+pkgdesc="A bridge from UFOs to FontTools objects"
 url="https://github.com/googlefonts/ufo2ft"
-checkdepends=('python-pytest' 'python-skia-pathops')
+checkdepends=('python-compreffor' 'python-pytest-runner' 'python-skia-pathops')
 depends=('python-booleanoperations' 'python-cffsubr' 'python-cu2qu' 'python-defcon' 'python-fonttools>=4.21.1')
-makedepends=('python-setuptools')
+makedepends=('python-setuptools-scm')
 optdepends=('python-compreffor')
 license=('MIT')
 arch=('any')
-source=("https://pypi.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.zip")
-sha256sums=('8387241b9a36ed906a0b99afc80d58cee72ea5266ec0016f17456f765be73300')
+source=("https://files.pythonhosted.org/packages/source/${_pkgname::1}/$_pkgname/$_pkgname-$pkgver.zip")
+sha256sums=('02ceb5201f08b632b84046ddfd11233eaf3633437ccac9981ebf2d944d75616b')

-package() {
-    cd "${_pkgname}-${pkgver}"
-    python setup.py install --root="${pkgdir}" --optimize=1
-    install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+build() {
+    cd "$_pkgname-$pkgver"
+    python setup.py build
 }

 check() {
     cd "$_pkgname-$pkgver"
-    python setup.py test
+    python setup.py pytest
+}
+
+package() {
+    cd "$_pkgname-$pkgver"
+    python setup.py install --root="$pkgdir" --optimize=1 --skip-build
+    install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname/" LICENSE
 }
-- 
2.32.0

alerque commented on 2021-06-19 08:41

Hey @thrasibule you can't bump the version without updating checksums too. Please run updpkgsums in the directory for this and then update the srcinfo file again.

Also please disable the check() function per previous comments. The upstream test suite on this is not suitable for use on all Arch systems this is supposed to build successfully on.

Also please consider adding me as a co-maintainer.

alerque commented on 2021-05-25 17:50

The upstream testing functionality is not a good match for Arch package builds because it is not testing the packaging, it's testing the upstream functions and they are making assumptions a mile a minute about the environment. I still recommend building this with --nocheck.

Also, the python-fonttools dependency version needs bumping. This project expects the very latest released version and the Arch package for that has been lagging behind. I know the maintainer has been traveling lately, but the holdups have been pretty regular and are hurting downstream packages like this one. You can use python-fonttools-git to get a newer version to resolve this. That's working for me in a bunch of production projects.

keren_sky commented on 2021-05-24 17:48

Hi, is anyone seeing test failures for this package❔ Eg 'IntegrationTest.test_TestFont_TTF[defcon]' Not seeing anything obvious on the github issues page. I'm guessing this is what caleb refers to❔ https://aur.archlinux.org/packages/python-ufo2ft/#comment-748589 Thanks

alerque commented on 2021-03-19 15:40

With 2.20.0 python-compreffor should be moved to optdepends=().