Closed tobil4sk closed 1 year ago
This conflicts after merging the other PR.
And is this really saying that this should install this library on 5.1 and 5.4, but not on 5.3 (which it used to say).
Yes, it was incorrect before. For 5.2 and 5.3, the bit32 library is a built-in part of std so it does not need to be installed manually. 5.1 didn't have this library yet, so someone created a backport and uploaded it to luarocks, which is why you need to run luarocks install bit32
on 5.1.
Then, 5.4 removed this library in favour of native bitwise operators, which is why the bit32 library (originally intended just as a backport for 5.1, but now usable on anything < 5.5) should be installed on 5.4 as well.
Our unit tests don't install bit32 from luarocks on 5.3 and they run fine: https://github.com/HaxeFoundation/haxe/blob/dd0d6a64e90f3b93b8a1be966184f51bc6d35903/tests/runci/targets/Lua.hx#L80-L83.
Our tests also depend on specific old versions of luasocket / luv / luautf8, for example you cannot install old enough luautf8 on lua 5.4 to make length
work on broken unicode strings, instead of returning nil
(can affect http requests and other stuff). I'm not sure about best solution here.
Regex library is handled separately in #522