Continuing the work started with https://fedoraproject.org/wiki/Changes/Python_Extension_Flags, this change is about further reducing the build and linker flags (CFLAGS and LDFLAGS) saved internally in the Python interpreter for use by distutils and other build systems. Compiling non-RPM Python extension modules will carry only the compiler flags required for binary compatibility with the interpreter they were built against and not Fedora specific ones.
Practically that means the only Fedora derived flag will be -fexceptions and Python will apply its own upstream hardcoded ones, making the final flag set for a non-RPM compiled Python extension as follows:
-fexceptions
-Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -fexceptions
Python C extensions built as rpm's will '''not''' be affected.
The current main Python interpreter on Fedora 39 will be modified (Python 3.12) and Python 3.6-3.11 will follow.
This change will affect every package that provides support for extension builders via utilizing the %{extension...flags} macros which at the time being is only Python.
%{extension...flags}
Owners, do not implement this work until the FESCo vote has explicitly ended. The Fedora Program Manager will create a tracking bug in Bugzilla for this Change, which is your indication to proceed. See the FESCo ticket policy and the Changes policy for more information.
REMINDER: This ticket is for FESCo members to vote on the proposal. Further discussion should happen in the devel list thread linked above.
+1
+1 🐍
Following the rules, this should have been approved about 4 days ago with (+7, 0, 0). But since @dcantrell votes, let's count his vote too, this doesn't change the outcome.
APPROVED (+8, 0, 0)
Metadata Update from @zbyszek: - Issue tagged with: pending announcement
Announced.
Metadata Update from @zbyszek: - Issue untagged with: pending announcement - Issue close_status updated to: Accepted - Issue status updated to: Closed (was: Open)
The change has been implemented but I don't see it at https://fedoraproject.org/wiki/Releases/39/ChangeSet nor I got a tracking bug.
Change tracking bugs have apparently gone by the wayside since... certain RH staffing decisions
Yeah. I think we're in semi-self-service mode now: please create an releng and tracker bugs as appropriate if something is missing.
https://bugzilla.redhat.com/show_bug.cgi?id=2229725