Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 293135 - dev-lang/python: Remove "ucs2" USE flag and add "wide-unicode" USE flag
Summary: dev-lang/python: Remove "ucs2" USE flag and add "wide-unicode" USE flag
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All All
: High enhancement (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
: 294068 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-11-14 00:52 UTC by Arfrever Frehtes Taifersar Arahesis (RETIRED)
Modified: 2009-12-06 20:04 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-11-14 00:52:17 UTC
I would like to suggest to remove "ucs2" USE flag and add "wide-unicode" USE flag, which would have the opposite meaning.

The name of "ucs2" USE flag is confusing to some users, who might think that it's somehow useful to enable this flag. Switching this flag changes ABI of Python, so it's reasonable to prevent misinterpretation of usefulness of this flag.

Additionally '--enable-unicode=ucs2' and '--enable-unicode=ucs4' options of `configure` have been replaced with '--with-wide-unicode' and '--without-wide-unicode' options in Python 3.

"wide-unicode" USE flag would be enabled by IUSE default and package.use.force.

If there are no objections, then I will commit suggested changes in next week.
Comment 1 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-11-14 00:54:23 UTC
(In reply to comment #0)
> Additionally '--enable-unicode=ucs2' and '--enable-unicode=ucs4' options of
> `configure` have been replaced with '--with-wide-unicode' and
> '--without-wide-unicode' options in Python 3.

s/'--enable-unicode=ucs2' and '--enable-unicode=ucs4'/'--enable-unicode=ucs4' and '--enable-unicode=ucs2'/
Comment 2 Carsten Lohrke (RETIRED) gentoo-dev 2009-11-14 16:42:13 UTC
I'm aware of innocent users playing with it and not being aware of the binary incompatibility. Imho masking the use flag by default, with the possibility to reenable it on certain profiles, would be more sensible, be it for architectural reasons or mememory constraints that ucs2 is a better choice.
Comment 3 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-11-14 16:51:14 UTC
(In reply to comment #2)

It doesn't matter if "wide-unicode" is forced or "ucs2" is masked.
Children profiles can contain "dev-lang/python -wide-unicode" in package.use.force to unforce this flag.
Comment 4 Carsten Lohrke (RETIRED) gentoo-dev 2009-11-15 16:27:47 UTC
O.k. probably it doesn't matter what's the use flag is called. From my point of view it's just an unnecessary naming change.

Features overriding system adminstrators will - like forced use flags (at least the willy-nilly additions to existing profils) and especially use defaults within ebuilds suck badly (alsmost as much as automatic use flag additions were a misfeature back then), because it forces everyone counting on a reasonable _stable_ system to create their very own profile. Having large package.use, package.use.forc, etc. exception lists is time consuming and annoying.

Profiles should be considered more or less fixed and such a change should be only forced on users, who are willing to change to a new profile (or at least until they have to, because older profiles being deprecated). And please simply mask it, as it's really unneeded for almost everyone - package.use.force is at least in this case so backwards and unnecessary. I'm not sure, if this feature ever should have been added to Portage at all.

More complexity and less transparency in the packaging management isn't winning us any users.
Comment 5 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-11-17 12:54:27 UTC
ucs2 flag has negative meaning (similarly to nocxx etc.), because it disables a feature, but current tendency is to use flags with positive meanings (e.g. +cxx).

IMHO use.force and package.use.force are useful.
Comment 6 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-11-22 17:21:05 UTC
*** Bug 294068 has been marked as a duplicate of this bug. ***
Comment 7 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-12-06 17:52:07 UTC
I haven't seen further suggestions, so I have committed the suggested changes.
Comment 8 Fabian Groffen gentoo-dev 2009-12-06 20:04:13 UTC
I think you should announce this subtle change as it will trigger questions why this new use-flag is suddenly in there, and why it is enabled by default.  People needlessly have to rebuild python, and occasionally you break people's systems with this nice change.

Remember that Python is (unfortunately) a core package.