Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Moving finext (mixin replacement) to a new repo #524

Open
ThistleSifter opened this issue May 14, 2023 · 3 comments
Open

Moving finext (mixin replacement) to a new repo #524

ThistleSifter opened this issue May 14, 2023 · 3 comments

Comments

@ThistleSifter
Copy link
Member

I've been working on finext (progress here) , the replacement for the mixin library that uses wrapping tables (they're technically not mixins anymore, so I'm calling them extensions). Along the way, I've been planning out features that would be good to have and I've also realised that some things (eg error rewriting) need to be fleshed out into their own libraries. So I was wondering if it would be better to split it off into its own repo (or even 2 repos, one for the core library and one for the extensions)?

For example, being able to compile different versions of the core library with options (eg one for src usage with all the bells and whistles, one for dist with no loading of external files and reduced checking) from a master.

Also being able to do some basic static checks for extensions when PRs are merged would be good (eg no clashing names across properties/methods/static methods). I have found a Lua minifier that includes an AST builder that looks promising (as far as I can tell from looking at it on my phone anyway) which can hopefully be used for that. If it ends up working as intended, we might also be able to use it to detect which extensions a script actually needs and reduce dist bloat.

I'm assuming that submoduling or somehow triggering a re-build via a GitHub action should be feasible.

I also don't know how accessing submodules would work when everything is bundled in one file (eg require("finext"), require("finext.proxy"), require("finext.helper"), etc all loaded from finext.lua).

@rpatters1
Copy link
Collaborator

I've made a lot of use of submodules with RGP Lua. I think this could work. Are you able to create a repo in the Finale Lua org?

@ThistleSifter
Copy link
Member Author

Yes I can create a repo in the Finale Lua org.

@rpatters1
Copy link
Collaborator

@ThistleSifter is there any reason to keep this issue open?

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

No branches or pull requests

2 participants