Description
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
).