← Back to team overview

ius-coredev team mailing list archive

[Bug 779120] Re: Python 3.1 incorrectly uses UCS2 for Unicode

 

Verified building with --with-wide-unicode builds with UCS4 rather than
UCS2:

  # rpm -q python31-libs
  python31-libs-3.1.3-2.ius.el5.x86_64

  # rpm -q python31-libs -l | grep .so
  /usr/lib64/libpython3.1.so.1.0

  # strings /usr/lib64/libpython3.1.so.1.0 | grep PyUnicodeUCS._ToDigit
  _PyUnicodeUCS4_ToDigit

I will get this package to IUS Testing hopefully sometime today along
with the MySQL 5.5 and MySQ 5.1 updates.

-- 
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:
  New

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