PolyMC / PolyMC

A custom launcher for Minecraft that allows you to easily manage multiple installations of Minecraft at once (Fork of MultiMC)

Home Page:https://polymc.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Regression: PolyMC does not properly respect some org.lwjgl3.json's after 09e85e948cdb361c306a1cccbc3557a464366a21

Richard-Rogalski opened this issue · comments

Operating System

Linux, PPC64le architecture, using custom natives

Version of PolyMC

Tested up to latest git master, still seems present

Version of Qt

5.15.13
6.7.0
I believe this old commit only supported Qt5

Description of bug

The instances listed here only work at or before commit 09e85e948cdb361c306a1cccbc3557a464366a21. For example-- this instance here. Before this regression, it downloaded the natives specified in org.lwjgl3.json, currently, it doesn't and just errors out. (will show log of what happens currently, but will have to wait to rebuild poly yet again).

Note that my git bisect knocked down the troublesome commit to either 09e85e948cdb361c306a1cccbc3557a464366a21 or the one immediately after. I could not test the one after due to an unrelated build failure with the code (if you want me to test this commit, I can try again and patch the code to fix each build failure one by one).

Also note that I do not own a valid copy of minecraft (anymore, did not migrate), so I have to rely on an offline account and cannot test with a valid online MC account. (using the good 'ol echo '{"accounts": [{"entitlement": {"canPlayMinecraft": true,"ownsMinecraft": true},"type": "Offline"}],"formatVersion": 3}' > ~/.local/share/PolyMC/accounts.json). could be related(?)

Steps to reproduce

I think that it should still be testable on a non ppc machine (testing whether it respects the json files), but if any Poly dev wishes to test on real ppc hardware they can reply here or on discord with an ssh pubkey. rrogalski#0 on discord

Suspected cause

No response

This issue is unique

  • I have searched the issue tracker and did not find an issue describing my bug.

before regression. it works!

after regression + after2.txt , git master build of poly. you can see it is no longer using the natives

modern prism + this is as far as it gets, unrelated issue just thought I'd share heh

@Richard-Rogalski thanks for the detailed reporting, but I need some clarification. You said that the instance only works "on or before" 09e85e9 (implying that the commit is good) but then you said the troublesome commit was either 09e85e9 (implying that the commit is bad) or the commit immediately after. Which commits were actually tested? Do you have a bisect log that you can share?

Sorry. 09e85e948cdb361c306a1cccbc3557a464366a21 is good. I was unsure if the commit immediately after introduced the regression, or if it was good and unaffected, as I had build failures on that commit.

I've looked more closely at the issue. It seems that the 'linux' in "linux": "natives-linux" was aliased to linux-x86{_64}, so after the 'regression' poly will only look at linux if on x86. After this change, poly would be explicitly looking for "linux-ppc64le": "natives-linux". So I'm not sure if the current behavior is intended or not intended, maybe if linux-ppc64le isn't specified it tries just linux?