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

How to react to (soon to come) release of SDL3? #117

Open
Free-Pascal-meets-SDL-Website opened this issue Mar 5, 2023 · 5 comments
Open
Labels
discussion Discuss an idea/feature/PR/issue...

Comments

@Free-Pascal-meets-SDL-Website
Copy link
Collaborator

Hi there,

I wonder what would be the best option to react if SDL3 is released. Their main branch is already dedicated to SDL3.

Unfortunately our repo has the version 2 ingrained in the name, so we have the following options

  1. rename the repo
  2. start a new repo "SDL3-for-Pascal" based on SDL2-for-Pascal (no fork)
  3. branching SDL3 off within the SDL2-for-Pascal repo

I prefer the second option so far, as this allows for further development of SDL2-for-Pascal and keeps all links to this repo intact and it prevents confusion. Option 1 would break links to this repo. Option 3 is confusing if the repo is not renamed to SDL3-for-Pascal.

I would suggest to base SDL3 at least on our next release as soon as the last few include files are updated.

Best regards

@suve
@AthenaOfDelphi

@suve
Copy link
Collaborator

suve commented Mar 5, 2023

I prefer option 2 by a wide margin. Option 1 and 3 are pretty much the same - one way or the other, we'd have a single repository and keep SDL2 and SDL3 on separate branches.

While having two different repos will likely result in some duplication of effort - there will, quite likely, be many parts of SDL2 and SDL3 that'll have an identical API - from a user point of view, it will be easier to discover and use.

@Free-Pascal-meets-SDL-Website Free-Pascal-meets-SDL-Website added the discussion Discuss an idea/feature/PR/issue... label Mar 11, 2023
@furious-programming
Copy link
Contributor

Given that SDL2 and SDL3 are and will be developed separately, in order not to force SDL users to migrate and to ensure continued support for the previous version, the only sensible solution is to create a separate headers repo — SDL3-for-Pascal.

I would suggest to base SDL3 at least on our next release as soon as the last few include files are updated.

It would be good to finally start making official releases and publish them in the Releases section so that users can conveniently check and download new versions of the headers. Publish the release after matching the headers to a specific SDL version (according to the tags).

@Free-Pascal-meets-SDL-Website
Copy link
Collaborator Author

the only sensible solution is to create a separate headers repo — SDL3-for-Pascal.

I fully agree.

It would be good to finally start making official releases and publish them in the Releases section so that users can conveniently check and download new versions of the headers. Publish the release after matching the headers to a specific SDL version (according to the tags).

Yes, I agree, but that is actually what we are doing, or try to achieve. Unfortunately, it turned out that even the minimal main goal (= being up to date with at least SDL2 version 2.0.14) for the first official unit release (after the compatibility release) could not be fully reached since we started this. The process of updating takes undesirably long, but we are only a "core team" of two (@suve and me) working on this more or less actively - and in the spare time. Please do not hesitate to play a more active role and contribute regularly to this project, if you like,

The long update time of the units is also the reason why we started to add the version tag of the translated headers next to the corresponding include file in SDL2.pas. It is not possible to match all headers to a specific SDL2 version within a reasonable time frame (with a team of two). From this follows also the decision to mark functions/constants/... which got removed from SDL2 as deprecated instead of also removing them from the include files.

Best regards
Matthias

@AthenaOfDelphi
Copy link
Member

I've created a team for maintainer, created a new repo and given the team maintainer access to the new repo... let me know if it needs any tweaking :)

@Free-Pascal-meets-SDL-Website
Copy link
Collaborator Author

I've created a team for maintainer, created a new repo and given the team maintainer access to the new repo... let me know if it needs any tweaking :)

Excellent, thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Discuss an idea/feature/PR/issue...
Projects
None yet
Development

No branches or pull requests

4 participants