Skip to content

luajit: enable LUAJIT_ENABLE_LUA52COMPAT by default#55648

Closed
mmdbalkhi wants to merge 1 commit into
void-linux:masterfrom
mmdbalkhi:luajit52
Closed

luajit: enable LUAJIT_ENABLE_LUA52COMPAT by default#55648
mmdbalkhi wants to merge 1 commit into
void-linux:masterfrom
mmdbalkhi:luajit52

Conversation

@mmdbalkhi
Copy link
Copy Markdown
Contributor

This enables Lua 5.2 compatibility APIs without changing the ABI (still Lua 5.1).
Required by some applications (e.g. Aegisub(#55647)).

@classabbyamp
Copy link
Copy Markdown
Member

cc @Calandracas606

@classabbyamp
Copy link
Copy Markdown
Member

classabbyamp commented Jun 7, 2025

build_options and releated on line ~16 should be removed too

@mmdbalkhi
Copy link
Copy Markdown
Contributor Author

done

Comment thread srcpkgs/LuaJIT/template Outdated
@Calandracas606
Copy link
Copy Markdown
Contributor

Why is this being done?

It might not break ABI but it DOES break API and existing code by adding keywords (goto is a keyword, no longer a legal variable name), and changing return values (io.write() returns file handle instead of bool)

@classabbyamp
Copy link
Copy Markdown
Member

aegisub requires it (TypesettingTools/Aegisub#239)

ftr, both alpine and fedora build luajit with it enabled, so the damage is probably low.

@mmdbalkhi

This comment was marked as outdated.

@classabbyamp
Copy link
Copy Markdown
Member

whether it builds or not is not necessarily relevant. it's often used to add scripting capability so it could be user code that breaks, like if someone uses goto as a variable in their neovim config

@Calandracas606
Copy link
Copy Markdown
Contributor

That's the problem with interpreted languages, we cant test that this change works without breakage since any errors would be at runtime.

In addition to users scripts breaking, like neovim configs, or plugins

@mmdbalkhi
Copy link
Copy Markdown
Contributor Author

imo we’re making things unnecessarily complicated by keeping 5.2 compat optional. upstream distros have already gone through this decision, and the breakage is minimal and manageable. let’s just enable it and move forward.

@Calandracas606
Copy link
Copy Markdown
Contributor

All things considered, I do agree that its probably best to enable 5.2 compat

Comment thread srcpkgs/LuaJIT/template Outdated
Comment thread srcpkgs/LuaJIT/template Outdated
@Calandracas606
Copy link
Copy Markdown
Contributor

need to update checksum too, and squash commits

@mmdbalkhi
Copy link
Copy Markdown
Contributor Author

done

@mmdbalkhi
Copy link
Copy Markdown
Contributor Author

Could you re-run failed tests please? @classabbyamp

@classabbyamp
Copy link
Copy Markdown
Member

you need to fix the lint anyways, force push

This enables Lua 5.2 compatibility APIs without changing the ABI
(still Lua 5.1). Required by some applications (e.g. Aegisub).

Co-authored-by: Daniel Martinez <danielpedromartinez@duck.com>
@mmdbalkhi
Copy link
Copy Markdown
Contributor Author

mmdbalkhi commented Jun 8, 2025

ig we are good now.

-revision=2
+revision=1

sww1235 pushed a commit to sww1235/void-packages that referenced this pull request Jun 29, 2025
This enables Lua 5.2 compatibility APIs without changing the ABI
(still Lua 5.1). Required by some applications (e.g. Aegisub).

Co-authored-by: Daniel Martinez <danielpedromartinez@duck.com>
Closes: void-linux#55648 [via git-merge-pr]
@mmdbalkhi mmdbalkhi deleted the luajit52 branch June 30, 2025 16:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants