This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Remove CoreServices / CoreFoundation dependencies in core
Type: Stage:
Components: macOS Versions: Python 2.4
process
Status: closed Resolution: accepted
Dependencies: Superseder:
Assigned To: brett.cannon Nosy List: bob.ippolito, brett.cannon, jvr, rhettinger
Priority: release blocker Keywords: patch

Created on 2004-09-27 03:44 by bob.ippolito, last changed 2022-04-11 14:56 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
python-2.4-fewer-deps.patch.gz bob.ippolito, 2004-09-29 06:35
remove_CF_dependency.diff brett.cannon, 2004-11-05 05:23 Cleanup of Bob's patch; need to run autoconf after patching
Messages (16)
msg46941 - (view) Author: Bob Ippolito (bob.ippolito) * (Python committer) Date: 2004-09-27 03:44
This patch trims down the Python core on Darwin by making it 
independent of CoreFoundation and CoreServices.  It does this by:

Changed linker flags in configure/configure.in
Removed the unused PyMac_GetAppletScriptFile
Moved the implementation of PyMac_StrError to the MacOS module
Moved the implementation of PyMac_GetFullPathname to the 
Carbon.File module

In theory this should make Python start up faster on OS X, but I 
haven't benchmarked it.
msg46942 - (view) Author: Brett Cannon (brett.cannon) * (Python committer) Date: 2004-10-20 21:14
Logged In: YES 
user_id=357491

I will see if I can get to this over the weekend.  Might take a while since 
I am not familiar with much of the MacPython stuff beyond the UNIX-
level issues.

Until then, I am wondering if this will help solve test__locale from failing 
since the C locale should no longer be locked down since compilation 
against CF was what was causing trouble in the first place.

And I need to remember to regenerate configure with autoconf 2.58 (not 
2.57 as is included with OS X!).  DarwinPorts to the rescue.  =)
msg46943 - (view) Author: Bob Ippolito (bob.ippolito) * (Python committer) Date: 2004-10-20 21:16
Logged In: YES 
user_id=139309

It certainly won't solve the test__locale issue, but it *might* make it 
intermittent depending on what you've imported ;)
msg46944 - (view) Author: Brett Cannon (brett.cannon) * (Python committer) Date: 2004-10-23 19:49
Logged In: YES 
user_id=357491

Note that this would close bug #1034277 .

Also realize that it does not remove all linking against CF; if you look in 
setup.py you will notice that a few modules (including _locale) still need 
to link against CoreFoundation.  This patch is just to remove the 
dependence on the core, not extension modules.
msg46945 - (view) Author: Brett Cannon (brett.cannon) * (Python committer) Date: 2004-10-23 20:21
Logged In: YES 
user_id=357491

Bob, did Anthony OK the priority bump?  I need to decide whether this is 
a bugfix or feature and thus go into b2.
msg46946 - (view) Author: Bob Ippolito (bob.ippolito) * (Python committer) Date: 2004-10-23 22:39
Logged In: YES 
user_id=139309

Raymond said to bump the priority.  It is definitely a bugfix not a 
feature, though.

No, it definitely does not remove all linking to CF, just from the core.
msg46947 - (view) Author: Brett Cannon (brett.cannon) * (Python committer) Date: 2004-10-26 02:59
Logged In: YES 
user_id=357491

OK, I have a cleaned up version of the patch ready to be checked in, but 
I realized that it changes the API by removing 
PyMac_GetAppletScriptFile().  While googling seems to suggest it is not 
used by anyone, it still changes the API.  How sure are you that no one 
uses it?
msg46948 - (view) Author: Bob Ippolito (bob.ippolito) * (Python committer) Date: 2004-10-26 03:35
Logged In: YES 
user_id=139309

99.5% sure nothing else uses it.  It's only useful from a bundled 
application.  I  don't know a single Python application that creates a 
bundle manually.  All published methods for creating a Python bundle use 
a stub that's either pure python (bundlebuilder, BuildApplet), or 
descendent of the Objective C stub I wrote for the PyObjC Xcode 
template (incl. py2app).
msg46949 - (view) Author: Brett Cannon (brett.cannon) * (Python committer) Date: 2004-10-26 05:51
Logged In: YES 
user_id=357491

So it is undocumented, only references to it from Google point to 
Python's own CVS, and it is meant for internal use for building bundles 
that is supposed to be automated anyway.  Missing anything there? 

That sounds like enough to me to drop it since it is a hinderance to 
solving this bug.
msg46950 - (view) Author: Bob Ippolito (bob.ippolito) * (Python committer) Date: 2004-10-26 06:34
Logged In: YES 
user_id=139309

Mostly correct.  The function is intended to be used from
the executable stub of a bundled python application.  No
known application uses a custom stub, and no stub from an
automated tool uses this function.
msg46951 - (view) Author: Brett Cannon (brett.cannon) * (Python committer) Date: 2004-10-30 00:49
Logged In: YES 
user_id=357491

I am waiting to hear from Anthony on an email I sent him about whether 
he is okay on me applying this for b2.  Otherwise the patch is all  ready 
to be checked in.
msg46952 - (view) Author: Brett Cannon (brett.cannon) * (Python committer) Date: 2004-11-02 20:29
Logged In: YES 
user_id=357491

OK, I didn't hear from Anthony and he just announced that b2 is going to 
be cut soon (3.5 hours from now) so I am trying to get clearance to 
deprecate PyMac_GetAppletScriptFile() in 2.4 so that this can go in first 
thing in 2.5 .
msg46953 - (view) Author: Just van Rossum (jvr) * (Python triager) Date: 2004-11-02 20:51
Logged In: YES 
user_id=92689

It's Jack's call, but my opinion is that just ripping it out is fine, 
even if it's after b2. No need to go through a whole deprecation 
phase.
msg46954 - (view) Author: Brett Cannon (brett.cannon) * (Python committer) Date: 2004-11-05 05:23
Logged In: YES 
user_id=357491

Where is Jack?  Have not heard from him in ages.

I have uploaded my version of the patch so that if someone decided to 
step over me and apply the patch they can.
msg46955 - (view) Author: Bob Ippolito (bob.ippolito) * (Python committer) Date: 2004-11-05 05:25
Logged In: YES 
user_id=139309

he's been really busy.. he probably isn't going to many any noise here
msg46956 - (view) Author: Raymond Hettinger (rhettinger) * (Python committer) Date: 2004-11-05 07:03
Logged In: YES 
user_id=80475

Applied.

Bob, thx for the patch.
Brett, thx for testing.
History
Date User Action Args
2022-04-11 14:56:07adminsetgithub: 40954
2004-09-27 03:44:54bob.ippolitocreate