-
Notifications
You must be signed in to change notification settings - Fork 40
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
Make releases please for make possible packaging in distros repositories #53
Comments
I think we'll do an initial official release soon! |
FTR, I’ve started packaging snapshots in Debian: https://tracker.debian.org/pkg/sdl12-compat. There are two packages, one which is co-installable with “regular” SDL 1.2, the other which replaces it — the idea being to allow interested packages (e.g. for Quake 4) to pull in sdl12-compat, without forcing everything to use it. |
And make it please available in AUR. |
Thanks a lot for all the work on sdl12-compat! I am trying to understand if there could be interested and how to use sdl1-compat as the part of the I was curious about
Thanks in advance! |
Actually the answer to this is already in the README (and it is yes), sorry for the noise. |
It will report itself as 1.2.50, to signify it's still the 1.2 API but there's no question it's not a minor patch release of classic SDL 1.2. |
Perfect, thanks! |
I guess since we're getting picked up by distros, we should do a formal sdl12-compat release. Is there anything we want to change before we tag an official 1.0.0 (1.2.50?) release? @sezero? @sulix? @Conan-Kudo? @slouken: how do we want to do this? Just tag it and let GitHub provide a tarball from that tag? Or something more formal? |
Let's just version and tag it. We might want to provide binaries on the website for Windows and Mac |
|
Also for macOS: Is there a way to handle deployment target (10.6 for x86/x64, 11.0 for aarch64) in cmake? |
There are a bunch of FIXME()s that it'd be nice to get to: even if we don't get to fix them, it'd be nice to have some of them only trigger when they're more likely to indicate an actual problem with the running application. Now that FIXMEs are disabled by default, it's not as confusing as it could be, though. We might also want to document some of the cases where sdl12-compat won't work: particularly with programs which depend, e.g., on accessing X11 directly (including a whole bunch of OpenGL extension loaders / libcgGL which use GLX) if you're running under wayland, or things which break with the OpenGL scaling. That being said, if Fedora is already using this reasonably successfully as the default, that's a pretty good sign that none of the remaining issues are super-critical and need to block a release. |
Okay, I'm going to put together a milestone from @sezero's list so we have a formal checklist for a release, and I'll start poking at that once SDL 2.0.18 is out the door. |
Kitware's own claim is that you specify Said here: https://gitlab.kitware.com/cmake/cmake/-/issues/22184 (They have an Xcode specific piece of magic mentioned in there too (adding |
Since the git snapshots found in e.g. Fedora and Debian already identify themselves as SDL 1.2.50 internally ( |
Well, sdl12-compat has its own version, and there's the version it pretends to be. I prefer that those versions are different, personally. So I would vote for it being called 1.0.0 release and leaving the SDL version at 1.2.50. |
If all versions of If different versions install as The Steam Runtime relies on being able to do that comparison: if it cannot, then it has to make an arbitrary choice of host system or Steam Runtime, and assume that version is "probably" newer. (Currently it assumes libraries on the host system are newer, with a few targeted exceptions.) When |
We'll match the SDL 1.2 ++ version for our release. There's no reason to have sdl12-compat at 1.0 instead of 1.2.x, and having the version be higher than the 1.2 release will be better for distros. |
LAST CALL FOR 1.2.50. The latest in revision control fixes all the major known issues, afaik, and I've tested it on Windows, Mac, and Linux. Unless there are concerns, we're tagging the current revision as an official 1.2.50 release. Speak now if we should delay!! |
I'm fine with this, that will let me update to a tagged release in Fedora and CentOS Stream. cc: @wtay |
OK. |
I'm testing this for possible inclusion in the Steam Runtime now. Only one issue found so far (#160) , and it's really minor (a build issue with ancient OpenGL libraries) and could easily wait for a subsequent release. As I mentioned in #53 (comment), if possible I'd prefer the first release to be labelled as something strictly greater than 1.2.50 (1.2.51 would be ideal), so that we can distinguish it from snapshots older than the first release (which identify themselves as 1.2.50). |
@icculus: If version number is bumped, please remember to update |
I would prefer the version to be 1.2.50 since that would indicate a finalized release of what this has developed into. And we have had no releases before now anyway. |
Some distributions are already shipping the pre-release code as 1.2.50. We should bump this to 1.2.52 for release. @sezero, would you like to do the honors? |
Who is shipping as 1.2.50? It's not Fedora or Debian, that's for sure:
Repology confirms that no one is shipping it as 1.2.50: https://repology.org/project/sdl12-compat/versions |
I've submitted #161 to rewire project versioning to match what we've decided here so far. |
Ah, I thought Fedora had shipped as 1.2.50. In that case, we should be good. |
Are we keeping 1.2.50 as is, or are we bumping now? |
I wouldn't do that, as I was in the camp of restarting the project version. 😉 |
I think we're keeping 1.2.50 as-is. |
Everyone, if you look at the actual shared library and not just at the packaging metadata. For example, on Debian:
The basename of the My request is for prerelease snapshots to compare strictly older than the shipped release, so that when we have:
we will use the Steam Runtime's version because 52 > 50. It's too late to achieve this by making prerelease snapshots compare older, so the only way to make it happen is to make the final release compare newer. |
Please only commit this in the version that is literally released, otherwise we will have the same problem again, where a pre-release snapshot compares equal to the release and things like ldconfig and the Steam Runtime cannot tell the difference. |
But we don't want Steam's version to win? Also, Steam Runtime is currently not shipping sdl12-compat, so this shouldn't actually matter. |
I don’t think we want the Steam version to have its own version. The problem currently is that the existing libraries advertise themselves as 1.2.50, so 1.2.50 in the Steam runtime (or anywhere else) isn’t determinably different from pre-releases that have been shipping for a while. Bumping to 1.2.52 or whatever in the release commit exactly ensures that 1.2.52 is a known quantity, and whether Steam uses its own runtime copy or the system’s doesn’t matter then. |
But this is theorycrafting since Steam is shipping the real SDL 1.2, not this. |
I would call it planning ahead. |
Well, if we go by the library string for versioning, sdl12-compat is going to be higher than anything any Steam Runtime ships today. And we basically always want the host version of SDL to win over any other version. So even releasing 1.2.50 now as-is means distros that ship sdl12-compat will be fine, SDL Runtime hasn't upgraded to it yet, and when they do, it'll be the normal situation everyone expects. |
Not if the host version is a snapshot of sdl12-compat. A user of Ubuntu 21.10 with the sdl12-compat packages installed will have a late June snapshot of sdl12-compat, with no simple way for the Steam runtime or anything else to determine that it’s not the same as the forthcoming release of sdl12-compat. |
We'll go with 1.2.52, to keep everything simple. |
Someone should tag the release I guess, if nothing else is left to do. How are we going to do the binaries (if any)? |
I'll do some more testing today and then tag the release. This release is mostly for Linux distributions so we'll wait and see if anyone needs other binaries. |
Bumped version to 1.2.53 for future development: cc52691 |
No description provided.
The text was updated successfully, but these errors were encountered: