Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Relax SDL minor version exact match check#3428

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
illume merged 1 commit intomainfromankith26-sdl-ver-check
Aug 28, 2022

Conversation

@ankith26
Copy link
Contributor

fixes#3427

@MyreMylar
Copy link
Contributor

How does this change to the versioning system handle old versions of SDL still out in the wild?

@smcv
Copy link

How does this change to the versioning system handle old versions of SDL still out in the wild?

No change. All the stable versions of SDL2 released before 2.24.0 were of the form 2.0.x, where 2.0.x is backwards-compatible with 2.0.y, for any x >= y. It is still true that 2.0.x is backwards-compatible with 2.0.y for any x >= y.

What has changed is that before 2.24, SDL upstream didn't specify whether 2.x.a is compatible with 2.y.b, where x != y. Before this MR, pygame pessimistically assumed that a minor version change is a compatibility break, similar to the way SDL 1 worked (SDL 1.2 was incompatible with SDL 1.3).

Since 2.24, SDL upstream is declaring that all (stable) versions of-lSDL2 (sdl2.pc,libSDL2.so on Linux,SDL2.lib/SDL2.dll on Windows, etc.) are going to be backwards-compatible with older stable versions of-lSDL2. Next time there is an intentionally incompatible version, SDL upstream is now promising that it will be renamed to SDL 3 (sdl3.pc, linked using-lSDL3,libSDL3.so on Linux,SDL3.lib/SDL3.dll on Windows, etc.) and generally behave like a separate library, similar to what happened at the jump between SDL 1 and SDL 2.

@smcv
Copy link

I see pygame usessdl2-config on Unix. Another consequence of what I said in my previous comment is: SDL upstream is now saying thatsdl2-config will always find a version of SDL 2 that is backwards-compatible with all older stable versions of SDL 2. Next time there is an intentional incompatible change, the library will be renamed to SDL 3, meaningsdl2-config will either be renamed tosdl3-config or removed in favour ofpkg-config sdl3 (see#3429).

@ankith26
Copy link
ContributorAuthor

ankith26 commentedAug 26, 2022
edited
Loading

I've tested this patch on windows (by replacingSDL2.dll with an older one) and it works as intended

@smcv
Copy link

I'm not a pygame maintainer or contributor, but this looks good to me.

Copy link
Contributor

@MyreMylarMyreMylar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

OK, after reading the discussion and on a second look though this all seems reasonable. I'm approving. 👍

Copy link
Contributor

@Starbuck5Starbuck5 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

Looks good to me. Thanks for handling this Ankith, and thanks for the report smcv!

Copy link
Member

@illumeillume left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

👍

Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

@illumeillumeillume approved these changes

+4 more reviewers

@smcvsmcvsmcv left review comments

@robertpfeifferrobertpfeifferrobertpfeiffer approved these changes

@MyreMylarMyreMylarMyreMylar approved these changes

@Starbuck5Starbuck5Starbuck5 approved these changes

Reviewers whose approvals may not affect merge requirements

Assignees

No one assigned

Labels

basepygame.basebugSDL2

Projects

None yet

Milestone

2.1.3

Development

Successfully merging this pull request may close these issues.

pygame assumes that SDL minor version bump implies ABI break, but this is no longer true

7 participants

@ankith26@MyreMylar@smcv@illume@robertpfeiffer@Starbuck5

[8]ページ先頭

©2009-2025 Movatter.jp