Tangent128 / luasdl2

A pure C binding of SDL 2.0 for Lua 5.1, Lua 5.2, and LuaJIT.
ISC License
385 stars 74 forks source link

Switch to new versioning method; close #58. #59

Closed Web-eWorks closed 7 years ago

Web-eWorks commented 7 years ago

Regarding #58, I have implemented a move to SemVer and an independent version number for the binding.

Still undecided if the patch field is necessary - most changes happening are enough to skip straight to incrementing the minor version.

I moved away from the 'long constant' style of querying the SDL version. Now the SDL version is queried via SDL.version.x, where x is either major, minor, or patch. The binding version is in the SDL.binding table.

Thoughts, questions? Did I miss anything?

Also, what's the rocks/config.h file for, and do I have to manually update it?

Tangent128 commented 7 years ago

Ah shoot, rocks/config.h didn't get updated in the release, did it.

That file is used when building via Luarocks, so that cmake is not needed as a dependency.

That will need to be updated appropriately before this is merged, yes, especially if introducing new #defines.


I like the direction of this patchset, but I have notes:

Web-eWorks commented 7 years ago

Alright, will get a commit pushed later to update that. Will also amend the versioning to MAJOR.MINOR.

You're completely right about the backwards compatibility. I would suggest marking the SDL version fields as deprecated in the docs, and just dropping the binding ones, as the meaning and names of the VERSION_BINDINGs are going to change anyway.

I'm hesitant to go with 2.0.6 for the version number, as Lua-SDL2 releases are probably not going to correspond that closely with SDL2 releases, but 2.1 seems perfect.

Also, on a bit of a tangent, would you want to update the description on the Luarocks page? It seems a little sparse. Maybe merge the the 'Features' section in the updated README into the page?

Tangent128 commented 7 years ago

Finally had time to look over this and your other branch, had two small kickbacks before I merge.

Web-eWorks commented 7 years ago

And done. Consider the long constant style slated for removal when v3.0 eventually rolls around.