ius-coredev team mailing list archive
-
ius-coredev team
-
Mailing list archive
-
Message #00836
[Bug 779120] Re: Python 3.1 incorrectly uses UCS2 for Unicode
Package python31 version 3.1.3-2.ius has been pushed to IUS Testing.
Once this package has synced across the mirrors you can install the
package using the command below:
yum install python31 --enablerepo=ius-testing
** Changed in: ius
Status: New => Fix Committed
** Changed in: ius
Assignee: (unassigned) => Jeffrey Ness (jeffrey-ness)
--
You received this bug notification because you are a member of IUS Core
Development, which is subscribed to IUS Community Project.
https://bugs.launchpad.net/bugs/779120
Title:
Python 3.1 incorrectly uses UCS2 for Unicode
Status in IUS Community Project:
Fix Committed
Bug description:
Summary:
The python31 specfile clearly intends to build Python 3.1 with UCS4 for Unicode, since its configure invocation includes
--enable-unicode=ucs4
However, --enable-unicode is not a valid option to configure, so it is
silently ignored; Python is thus built with the default, which is
UCS2. Instead, the configure script should be passed --with-wide-
unicode.
Since UCS2 and UCS4 builds are not ABI compatible, the RHEL 5 Python
2.4 package uses UCS4, and the Fedora Python 3 package also uses UCS4,
it makes sense that the IUS Python 3 package also use UCS4 (as seems
to be originally intended) to reduce confusion.
OS Version:
CentOS 5.6, x86_64
IUS Packages:
python31-3.1.3-1.ius.el5.x86_64
To reproduce:
1. Install the python31 and python31-libs packages.
2. Compare against RHEL 5's native python package:
$ strings libpython2.4.so | grep PyUnicodeUCS._ToDigit
_PyUnicodeUCS4_ToDigit
$ strings libpython3.1.so | grep PyUnicodeUCS._ToDigit
_PyUnicodeUCS2_ToDigit
References