Obecne wydanie LuaSocket, podobnie jak wiele bibliotek Lua, nie obsługuje Lua 5.2. W przypadku Lua zmiany w drugiej cyfrze wersji wskazują główne wydania, a kompatybilność wsteczna nie jest zachowana (z wyjątkiem niektórych przypadków poprzez flagi kompilacji w celu ponownego włączenia przestarzałych funkcji).
Lua 5.1 jest stabilna i nie ma szczególnego powodu, aby jej nie używać, chyba że potrzebujesz funkcji dodanej w 5.2.
To powiedziawszy, wiele bibliotek jest obecnie aktualizowanych do wersji 5.2, w tym LuaSocket. Jeśli jesteś zdeterminowany i zadowolony z kompilacji ze źródeł i dostrajania plików makefile, wypróbuj to repozytorium, które jest kompatybilną wersją LuaSocket 5.2.
Zwróć uwagę, że Lua 5.2 musiała zostać zbudowana przy użyciu LUA_COMPAT_MODULE
zdefiniowane dla tej wersji LuaSocket do skompilowania z nią. Będziesz także musiał edytować pliki makefile, aby dostosować je do poprawnych ścieżek w systemie.
Biorąc pod uwagę kolejne 3-4 miesiące i myślę, że wiele popularnych bibliotek będzie kompatybilnych z 5.2. Jednak moim zdaniem, o ile nie jest to drobnostka, myślę, że to dopiero początek, aby opierać projekty na 5.2. Przeniesienie kodu do 5.2 w dół wiersza nie jest takie trudne (zwłaszcza jeśli zapoznałeś się z przestarzałymi funkcjami, dzięki czemu możesz uniknąć zbytniego polegania na nich w 5.1 - zwłaszcza setfenv()
i module()
).