alerque / aur

Package sources for all the AUR packages I either maintain, co-maintain, or fork.
https://wiki.archlinux.org/index.php/Unofficial_user_repositories#alerque
45 stars 26 forks source link

upgpkg: python-{openstep-plist,uharfbuzz} diffenator2 #63

Closed eclairevoyant closed 12 months ago

eclairevoyant commented 1 year ago

Also looks like python-defcon in the repos is due for a python3.11 rebuild, as without the rebuild, python-ufo2ft fails to complete tests

eclairevoyant commented 1 year ago

Seems like diffenator2 only works with AUR/python-ninja and not [extra]/ninja for some reason, although I didn't really dig into it. I didn't replace it here in case I'm missing something obvious.

alerque commented 12 months ago

Thanks for these bumps. I will get them merged, but for a couple weeks I've been fighting with some issue in git subtree than is affecting aurpublish. An earlier merge commit of mine is corrupting the exported subtrees of all packages. I haven't wanted to reset them all and have a huge mess of duplicated commits here, but I also haven't found any way to backtrack or exclude the merge commit(s).

alerque commented 12 months ago

After weeks of frustration and searching I've given up trying to get git subtree to behave. It doesn't seem to have any mechanism for excluding/filtering a bad commit and not including it in the exported tree. I had two options: delete all packages from this repo and re-add them which would bring in 10+ duplicate commits, or force-push to rewind a few weeks of commits past the bad merge and re-import just the trees that had been touched since then. I opted for the latter route.

I can't merge this PR as is because it has the bad history, but I did cherry pick both of these bumps and they should be both in the AUR and in my prebuilt repository now. Thanks again.

alerque commented 12 months ago

I was able to build diffenator2 using [extra]/ninja without incident.

eclairevoyant commented 12 months ago

Building diffenator2 with either package works, I was referring to runtime. I can get the error if needed

alerque commented 12 months ago

Ninja is a build system, it souldn't be needed at runtime at all. If you are seeing an error lets get that filed upstream and/or on whatever package is relevant. If the ninja package is doing something wrong we can fix that too, but I suspect the error is actually on the upstream side at diffenator2 because it shouldn't require build system stuff at runtime.

eclairevoyant commented 12 months ago

Normally I'd agree, but it seems they've designed the program to use ninja at runtime.

rg -i ninja /usr/lib/python3.11/site-packages/diffenator2

Output:

``` /usr/lib/python3.11/site-packages/diffenator2/__main__.py 5:from diffenator2 import ninja_diff, ninja_proof, THRESHOLD, NINJA_BUILD_FILE 52: if os.path.exists(NINJA_BUILD_FILE): 53: os.remove(NINJA_BUILD_FILE) 54: if os.path.exists(".ninja_log"): 55: os.remove(".ninja_log") 58: ninja_proof( 71: ninja_diff( /usr/lib/python3.11/site-packages/diffenator2/__init__.py 4:from ninja.ninja_syntax import Writer 9:import ninja 17:NINJA_BUILD_FILE = "build.ninja" 20:def ninja_proof( 34: _ninja_proof(fonts, out, imgs, styles, filter_styles, characters, pt_size, user_wordlist) 44: _ninja_proof(fonts, o, imgs, styles, filter_styles, characters, pt_size, user_wordlist) 47:def _ninja_proof( 57: w = Writer(open(NINJA_BUILD_FILE, "w", encoding="utf8")) 89: ninja._program("ninja", []) 92:def ninja_diff( 110: _ninja_diff( 142: _ninja_diff( 157:def _ninja_diff( 171: w = Writer(open(NINJA_BUILD_FILE, "w", encoding="utf8")) 239: ninja._program("ninja", []) ```

Also, someone else filed an issue upstream (googlefonts/diffenator2#67) and a collaborator on the repo indicated that ninja was expected at runtime.

I'm thinking that AUR ninja package should be deleted as a duplicate and any fixes should be filed as a bug report?

alerque commented 12 months ago

I'm thinking that AUR ninja package should be deleted as a duplicate and any fixes should be filed as a bug report?

Yes, this is correct. I don't see any justification for it and duplicated packages like that are expressly forbidden in the AUR with specific exceptions which don't seem relevant there. If the [extra] package has a problem lets get a bug open on it and if needed I can even talk to the maintainer about it and see what we can do to fix it.