Closed randy408 closed 1 year ago
is this repo abandoned?
It's still being updated but not all the tests are passing like it did before which makes it less useful if you don't know the project inside out, so the repository was neglected.
The main issue with keeping flecs-lua up to date is that it's not an automatically generated binding and the flecs API and behavior keeps changing, even between minor versions.
Right now I'm targeting flecs v3.2.0 (released 2 days ago) and it won't work with older versions. The majority of the work is done but there are still crashes on cleanup, new asserts in flecs have to be duplicated in the binding for proper error reporting, etc..
The project has a channel on the flecs discord server (https://discord.gg/BEzP5Rgrrp) which is a bit more active.
It's still being updated but not all the tests are passing like it did before which makes it less useful if you don't know the project inside out, so the repository was neglected.
The main issue with keeping flecs-lua up to date is that it's not an automatically generated binding and the flecs API and behavior keeps changing, even between minor versions.
Right now I'm targeting flecs v3.2.0 (released 2 days ago) and it won't work with older versions. The majority of the work is done but there are still crashes on cleanup, new asserts in flecs have to be duplicated in the binding for proper error reporting, etc..
The project has a channel on the flecs discord server (https://discord.gg/BEzP5Rgrrp) which is a bit more active.
Very glad to hear that!
There are still some outstanding bugs (tracked by #14) but migration is basically done.
Migration to v3 is a work in progress, the majority of the v3 api is already exposed in v2.4, those should be finished first:
[x] Pair API (replaces trait API)
[x]
event/event[]
instead of phase for systems/triggers[x]
ecs.observer()
[x]
ecs.term_iter()
,ecs.term_next()
, etc.[x] Update
ecs.query()
to accept a filter or more of theecs_query_desc_t
fields[x] Update
ecs.system()
the same as way as above[x] Update
ecs.trigger()
to accept a term[x] Update
ecs.observer()
to accept a filterBreaking changes
flecs-lua will target v2.4 until v3 becomes stable (or at least until a beta release)
[ ] Remove/replace deprecated functions,
ecs_iter_t
fields[x]
add_owned()
->override()
[x] Switch to the new builtin meta module
[x] Update constants / builtin components
Misc
[x]
ecs_lua_query_next()
->ecs_lua_iter_next()
[x]
ecs.iter_next()
[x] Consider dropping all other
ecs.*_next()
functions[x] Consider re-adding the range checks to flecs-lua from the old meta module
[ ] Expose JSON module
[ ] System status callback
[ ] Consider v2.4-style API for systems, entities, etc