Opened 11 years ago

Closed 11 years ago

#21118 closed defect (fixed)

ESHUTDOWN missing in Python 2.4.6 (SL)

Reported by: Themanwithoutaplan Owned by: jaroel (Roel Bruggink)
Priority: Normal Milestone:
Component: ports Version: 1.8.0
Keywords: Cc: petitmermet@…, ys@…, luca@…
Port: python24

Description (last modified by mf2k (Frank Schima))

Python 2.4.6 (#1, Sep  5 2009, 00:39:12) 
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import asyncore
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "/opt/local/lib/python2.4/", line 56, in ?
ImportError: cannot import name ESHUTDOWN

2.5 is fine,. There was a similar bug (#4182) for Python 2.3 with a patch for configure.

Attachments (1)

Portfile.diff (880 bytes) - added by ys@… 11 years ago.
added patch file for python24

Download all attachments as: .zip

Change History (11)

comment:1 Changed 11 years ago by mf2k (Frank Schima)

Description: modified (diff)
Port: python24 added
Priority: HighNormal

comment:2 Changed 11 years ago by Themanwithoutaplan

Going on the Plone patch it looks like the Posix compatability is the problem:

+ +#if (defined APPLE) && (!defined _POSIX_C_SOURCE) +#define TEMPORARILY_DEFININGPOSIX_C_SOURCE /* so we can #undef it later */ +#define _POSIX_C_SOURCE /* avoid deprecated struct ostat in sys/stat.h */ +#endif +

#include <sys/stat.h> #elif defined(HAVE_STAT_H) #include <stat.h> #endif

+/* Mac OS X: undefine _POSIX_C_SOURCE if it wasn't defined before */ +#ifdef TEMPORARILY_DEFININGPOSIX_C_SOURCE +#undef _POSIX_C_SOURCE +#undef TEMPORARILY_DEFININGPOSIX_C_SOURCE +#endif

comment:3 Changed 11 years ago by petitmermet@…

Cc: petitmermet@… added

Cc Me!

comment:4 Changed 11 years ago by ys@…

Cc: ys@… added

Cc Me!

Changed 11 years ago by ys@…

Attachment: Portfile.diff added

added patch file for python24

comment:5 Changed 11 years ago by luca@…

Cc: luca@… added

Cc Me!

comment:6 Changed 11 years ago by luca@…

There is a chance that this will be fixed somedays?

Even if python2.4 is very old, this bug create great problems to Plone developers. Plone is a very famous Open Source CMS and the current version use python 2.4...

comment:7 Changed 11 years ago by Themanwithoutaplan

I can confirm that YS patch does solve the problem with asyncore. Until someone actually commits the patch it is easy enough to apply:

Download the patch sudo patch /opt/local/var/macports/sources/ ~/Downloads/Portfile.diff sudo port install python24

However, as of Zope 2.12 Python 2.4 is no longer officially supported for Zope and most work is done using Python 2.6, installed using buildout. Plone 4 will be use Zope 2.12 so we should indeed be thinking of retiring Python 2.4

comment:8 Changed 11 years ago by jmroot (Joshua Root)

Owner: changed from macports-tickets@… to roel@…

comment:9 Changed 11 years ago by jaroel (Roel Bruggink)

Diff tested and confirmed. Merge requested per #25472

comment:10 Changed 11 years ago by jmroot (Joshua Root)

Resolution: fixed
Status: newclosed

Committed in r69337.

Note: See TracTickets for help on using tickets.