Page MenuHomeFreeBSD

lang/python{27,33,34,35,36}: Make Python curses module work with Unicode
ClosedPublic

Authored by dbaio on Jun 10 2017, 2:41 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Nov 13, 10:53 AM
Unknown Object (File)
Fri, Nov 8, 1:39 PM
Unknown Object (File)
Oct 21 2024, 5:15 AM
Unknown Object (File)
Oct 21 2024, 5:08 AM
Unknown Object (File)
Oct 21 2024, 5:08 AM
Unknown Object (File)
Oct 21 2024, 5:08 AM
Unknown Object (File)
Oct 21 2024, 5:08 AM
Unknown Object (File)
Oct 21 2024, 4:28 AM

Details

Summary
lang/python{27,33,34,35,36}: Make Python curses module work with Unicode

Use readline from ports (USES= readline:port) and patch
setup.py to ignore readline from base. The patch is necessary for
FreeBSD < 1100000, as after this the readline library became an
INTERNALLIB, see base r268461 [1]

Link devel/readline against termcapw instead of termcap is part of
this change, see ports r444463 [2]

Note that this is the **ports** approach for getting Python curses
module working with Unicode. The other way is splitting libncurses
into separate libncurses and libtinfo in base, for which an open
issue exists [3].

Apart from Python language ports, at least www/rtv and
sysutils/py-ranger ports have been tested to work correctly
(display Unicode) after this change.

[1] https://svnweb.freebsd.org/changeset/base/268461
[2] https://svnweb.freebsd.org/changeset/ports/444463
[3] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=197317

 PR:	171246, 197317
 Reviewed by:   miwi, koobs
 Reported by:	Vitaly Magerya <vmagerya gmail com>
 Approved by:	garga (mentor), ??? (python, with hat)
 Differential Revision:	D11127
Test Plan

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

koobs requested changes to this revision.Jun 12 2017, 6:48 AM

Please add changes for lang/python33.

While python33 has been DEPRECATED it has not expired. All changes to python ports should be made consistently across all ports unless they are not affected by the fix/issue to both minimise diffs, but also ensure consistent behaviour.

Also, I would:

  • Separate commits (commit for readline (as it affects other ports), then then consumers (lang/python*) separately referncing the original commit revision
This revision now requires changes to proceed.Jun 12 2017, 6:48 AM

@dbaio And thank you for paying this issue attention :)

You will also probably have to bump PORTREVISION of all devel/readline consumers as you change what it links with.

I'm OK with readline part. But I would like to add it as part of the readline 7.0 update to reduce unnecessary PORTREVISION bump on 250+ ports. I plan to submit readline 7.0 update for exp-run tomorrow.

I've requested exp-run for readline 7.0 update as PR 219947.

dbaio edited edge metadata.

Thank you all for taking a look on this.
Removing readline and adding python 3.3.

koobs edited the summary of this revision. (Show Details)
koobs retitled this revision from Make Python curses module work with Unicode to lang/python{27,33,34,35,36}: Make Python curses module work with Unicode.Jun 16 2017, 7:48 AM
koobs edited the summary of this revision. (Show Details)
koobs edited the test plan for this revision. (Show Details)

@dbaio I've updated the commit log message to include comments that were added to the TEST PLAN section, and added some QA entries that should be confirmed. Let me know if you have any questions about what each of them are or consist of.

koobs requested changes to this revision.Jun 16 2017, 7:51 AM
koobs edited the test plan for this revision. (Show Details)
This revision now requires changes to proceed.Jun 16 2017, 7:52 AM
dbaio edited the test plan for this revision. (Show Details)

@koobs, could you take a look at the make test logs?
I get similar results with and without this change... any advices?

Regards.

@dbaio Satisfied if the test failure/success delta is zero before and after this change. Please confirm that that is the case

Commit log message nit:

Multiple PR: lines should be combined into one (i believe both space or comma separated can be processed by the post-commit hook scripts)

dbaio edited edge metadata.
dbaio edited the test plan for this revision. (Show Details)

Updating PORTREVISION

dbaio edited the test plan for this revision. (Show Details)

Thanks @sunpoet for D11172

I'm OK with the change if it looks good for @koobs and/or @sunpoet

This revision was automatically updated to reflect the committed changes.