Created attachment 200608 [details] print/py-fonttools: 3.33.0 -> 3.34.2 I am going to update x11-fonts/py-fontmake from 1.7 to 1.8. This new version of fontmake stops using x11-fonts/py-ufoLib and starts requiring print/py-fonttools to have optional 'ufo', 'lxml', 'unicode' featues. Therefore, I have to add more RUN_DEPENDS to print/py-fonttools first. Note that this patch lists devel/py-fs >= 2.1.1 in RUN_DEPENDS, but it is still at version 0.5.4 in ports. The patch can only be committed after devel/py-fs is updated.
Can these optional features be turned into OPTIONS, enabled by default (OPTIONS_DEFAULT)
(In reply to Kubilay Kocak from comment #1) The setup.py of fonttools defines 8 optional features, do you think we have to convert all these optional features into 8 ports options?
(In reply to Ting-Wei Lan from comment #2) That depends on the nature and context of the options, and whether or not multiple optional features/components can come under the banner of a single OPTION because they are relevant together. I see that upstream has already grouped them up into ufo, lxml, woff, unicode, graphite, interpolatable, plot and type1, some of which only apply to specific OS's, so this would be a good place to start For any optional feature that you think might be valuable/relevant to the majority of users, and are fairly lightweight in terms of additional dependencies, you could consider just adding them in unconditionally. 'unicode' looks like one.
The patch is outdated since print/py-fonttools is 3.36.0 now. BTW, you do not have to add all this options to py-fonttools, instead, you could just add the dependencies to py-fontmake. The main reason is, the options you need for py-fontmake may not always be enabled by default in py-fonttools. At last, I removed the "Blocks" section because those 2 PRs only require print/py-fonttools 3.32.0 (which is true before this PR).
(In reply to Sunpoet Po-Chuan Hsieh from comment #4) It does block those 2 PRs because they both depend on 'ufo' feature. If fonttools doesn't pull in dependencies required for 'ufo' feature by default, those 2 ports cannot work.
As I said in comment #4, the patch is outdated. And you should first add what you want to py-fontmake. I'm going to remove Blocks again and close this PR.