Opened 2 years ago

Last modified 8 months ago

#56853 new enhancement

Examine py26-only ports

Reported by: yan12125 (Chih-Hsuan Yen) Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: jmroot (Joshua Root), ryandesign (Ryan Schmidt), stromnov (Andrew Stromnov), mahergamal@…, rasmus@…, petrrr
Port: py-clnum py-psyco py-rpncalc

Description (last modified by yan12125 (Chih-Hsuan Yen))

Some Python ports have only one py26 subport. They should be examined and there are some possibilities:

  • Is Python 2.7 supported upstream? If so add py27 subport
  • If not, try to patch it to bring Python 2.7 support
  • If patching is infeasible, consider dropping it

Port list generated by the following command:

grep -r 'python\.versions' | grep '\<26\>' | grep -v '\<27\>' | cut -d ':' -f 1 | sed 's#/Portfile##' | sed 's#python/##' | sort
port maintainer status
py-carrot@stromnov,open port declared obsolete in changeset:ca781b3b4c496c39272add473256ee363a95e2ad/macports-ports
py-clnumryandesign,open
py-country changeset:a298c71dc38dc74b79559f85a50a31790a42d266/macports-ports
py-logilab-hmmminimoog.org:sb updated in changeset:a363ac30dc6fb470d4f9a230cadc9f1cb5723398/macports-ports
py-mox changeset:568824c44fb02b0447ca8ed76df06f165b9d207c/macports-ports
py-openopt changeset:7cf5548c3c2cf1b300b1a31b9e8c6c563563ca40/macports-ports
py-pebl changeset:6c0fdf7020942a6ea1b0d3bd5510f50833fcc737/macports-ports
py-psyco@jmroot,open
py-pybox2d@stromnov,open updated in changeset:d4eb19ad8448b6d488fa48ee69162c978b68b675/macports-ports
py-pyfsevents changeset:85062aaa91491895d4382fee493e005cd51e164d/macports-ports
py-pyhyphen changeset:235654af1a6a19d39c46c8c7b11b15c21ebde903/macports-ports
py-pymodels@stromnov,open removed in changeset:b88ad54870018cd8524cef1d9bd49f930ef5a8f1/macports-ports
py-pymorph@stromnov,open deprecated in changeset:0cfbc6d5d1e971f4d31bf8e8b001e6e744d733ca/macports-ports
py-pyrant@stromnov,open updated in changeset:90249aa49baac097038e8fb4b4a2c6b44f39bd12/macports-ports
py-rabbyt@stromnov,open changeset:3e95aafcbbc2dfdc9cf98b98200ee962c52abd20/macports-ports
py-recaptcha-client port declared obsolete in changeset:d7a678ecd974b2337e64729e91f227396e723ac3/macports-ports
py-repoze.what port removed in changeset:ee1cb4b9a14d85b87ad40f12357cd366fbc678ee/macports-ports
py-repoze.what-pylons port removed in changeset:ee1cb4b9a14d85b87ad40f12357cd366fbc678ee/macports-ports
py-repoze.what-quickstart port removed in changeset:ee1cb4b9a14d85b87ad40f12357cd366fbc678ee/macports-ports
py-repoze.what.plugins.sql port removed in changeset:ee1cb4b9a14d85b87ad40f12357cd366fbc678ee/macports-ports
py-repoze.who port removed in changeset:ee1cb4b9a14d85b87ad40f12357cd366fbc678ee/macports-ports
py-repoze.who-friendlyform port removed in changeset:ee1cb4b9a14d85b87ad40f12357cd366fbc678ee/macports-ports
py-repoze.who-testutil port removed in changeset:ee1cb4b9a14d85b87ad40f12357cd366fbc678ee/macports-ports
py-repoze.who.plugins.sa port removed in changeset:ee1cb4b9a14d85b87ad40f12357cd366fbc678ee/macports-ports
py-rpncalcryandesign,open
py-scgi changeset:af0ee430684c9a62b72c128afab4583f751a3a13/macports-ports
py-scikits-ann updated in changeset:abf7ced27a2406c734e94ba77c7983a0655834f3/macports-ports
py-scikits-audiolab updated in changeset:3a56a002a9e14ef79730247bffdd4d7242ef206a/macports-ports
py-scikits-talkbox updated in changeset:acd6774e783a1dc237cf9728850b9cecd9c4659d/macports-ports
py-scikits-timeseries updated in changeset:5f753131bf5d58e57912da67678e828f8674b046/macports-ports
py-smiskrasmus changeset:fb8bfdb3a1b91a4cd1af62e9220405691b8fc3e9/macports-ports
py-tesser removed in changeset:e329e5a0cce4e4dc36e153e5780afdb395a5abfb/macports-ports
py-twill@maherg updated in changeset:5b75c985dd89b1478fa82c70796fc35f38bc31ea/macports-ports

I'll look into ports without a maintainer.

Change History (44)

comment:1 Changed 2 years ago by yan12125 (Chih-Hsuan Yen)

In a298c71dc38dc74b79559f85a50a31790a42d266/macports-ports (master):

py-country: update to 18.5.26 and set appropriate python versions

Other changes:

  • whitespacing
  • update homepage
  • update test

Ref: #56853

comment:2 Changed 2 years ago by yan12125 (Chih-Hsuan Yen)

In 568824c44fb02b0447ca8ed76df06f165b9d207c/macports-ports (master):

py-mox: update, add test and drop py26

Ref: #53467

(Obsoleted ports hosted on Google Code)

Ref: #56853

(Examine py26-only ports)

comment:3 Changed 2 years ago by superbock

Cc: superbock added

comment:4 Changed 2 years ago by mf2k (Frank Schima)

Description: modified (diff)

comment:5 Changed 2 years ago by reneeotten <reneeotten@…>

In ee1cb4b9a14d85b87ad40f12357cd366fbc678ee/macports-ports (master):

py-repoze.[what/who]-*: remove ports

  • py26-only ports have been broken for a while, with no interest in

fixing the issue

  • there are no dependents
  • last updates by upstream seem ~7 years ago so development has stopped

and newer Python versions are presumably not supported

See: #39707
See: #56853
Closes: #51194

comment:6 Changed 2 years ago by reneeotten <reneeotten@…>

In ca781b3b4c496c39272add473256ee363a95e2ad/macports-ports (master):

py-carrot: obsolete, replaced_by py-kombu

Last update to codebase was >8 years ago and upstream states that
py-carrot is discontinued and that py-kombu should be used instead..

See: #56853

comment:7 Changed 2 years ago by reneeotten <reneeotten@…>

In 7cf5548c3c2cf1b300b1a31b9e8c6c563563ca40/macports-ports (master):

py-openopt: update to 0.5628

  • obsolete py26 subport
  • switch to PyPI; use default livecheck
  • update homepage to PyPI as openopt.org is down
  • update modeline

See: #56853

comment:8 Changed 2 years ago by reneeotten <reneeotten@…>

In 85062aaa91491895d4382fee493e005cd51e164d/macports-ports (master):

py-pyfsevents: obsolete py26 subport, add py27

  • add modeline
  • modernize checksums
  • update livecheck

The package has not been updated in the last 9 years. Let's keep it in
the ports tree for now, but adding support for Python 3 seems unnecessary.

See: #56853

comment:9 Changed 2 years ago by reneeotten <reneeotten@…>

In 235654af1a6a19d39c46c8c7b11b15c21ebde903/macports-ports (master):

py-pyhyphen: update to 3.0.1

  • obsolete py26 subport
  • update homepage
  • modernize checksums
  • update license
  • update dependencies
  • add modeline

See: #56853

comment:10 Changed 2 years ago by reneeotten <reneeotten@…>

In d7a678ecd974b2337e64729e91f227396e723ac3/macports-ports (master):

py-recaptcha-client: obsolete port

  • py26-recaptcha-client has no dependents
  • set to replaced_by py-recaptcha, which provides the same but has a

more modern Portfile that supports py27 already

See: #56853

comment:11 Changed 2 years ago by petrrr

Description: modified (diff)

comment:12 Changed 2 years ago by petrrr

Description: modified (diff)
Port: py-carrot py-country py-mox py-openopt py-pyfsevents py-pyhyphen py-recaptcha-client py-repoze.what py-repoze.what-pylons py-repoze.what-quickstart py-repoze.what.plugins.sql py-repoze.who py-repoze.who-friendlyform py-repoze.who-testutil py-repoze.who.plugins.sa removed

comment:13 Changed 2 years ago by petrrr

Cc: petrrr added

comment:14 Changed 2 years ago by reneeotten <reneeotten@…>

In b88ad54870018cd8524cef1d9bd49f930ef5a8f1/macports-ports (master):

py-pymodels: remove port

  • latest pymodels update on May 1, 2010
  • upstream has renamed it twice, first to docu and then to doqu
  • the latest doqu release was on Jan 7, 2013 (if there is interest this

port could be added)

See: #56853

comment:15 Changed 2 years ago by reneeotten <reneeotten@…>

In 0cfbc6d5d1e971f4d31bf8e8b001e6e744d733ca/macports-ports (master):

py-pymorph: replaced_by py-scikit-image

  • upstream states that the project is unmaintained and deprecated
  • suggested alternatives are py-mathotas or py-scikit-image

See: #56853

comment:16 Changed 2 years ago by reneeotten <reneeotten@…>

In 90249aa49baac097038e8fb4b4a2c6b44f39bd12/macports-ports (master):

py-pyrant: obsolete py26 and add py27 subport

  • update livecheck, use PyPI default
  • modernize checksums

See: #56853

comment:17 Changed 2 years ago by reneeotten <reneeotten@…>

In 3e95aafcbbc2dfdc9cf98b98200ee962c52abd20/macports-ports (master):

py-rabbyt: obsolete py26 and add py27 subport

  • update livecheck, use PyPI default
  • modernize checksums
  • update homepage

See: #56853

comment:18 Changed 2 years ago by reneeotten <reneeotten@…>

In af0ee430684c9a62b72c128afab4583f751a3a13/macports-ports (master):

py-scgi: update to 1.15, obsolete py26 subport

  • add py27 subport
  • update livecheck, use PyPI default
  • modernize checksums
  • update master_sites
  • add modeline

See: #56853

comment:19 Changed 2 years ago by reneeotten <reneeotten@…>

In 5b75c985dd89b1478fa82c70796fc35f38bc31ea/macports-ports (master):

py-twill: update to 1.8.0, obsolete py26 subport

  • update master_sites and dependencies
  • modernize checksums

See: #56853

comment:20 Changed 2 years ago by reneeotten <reneeotten@…>

In e329e5a0cce4e4dc36e153e5780afdb395a5abfb/macports-ports (master):

py-tesser: remove port

The first (and only) release of this port was on GoogleCode on May 6,

  1. It seems to have followed its author, but is not developed anymore

(https://github.com/mokelly/pytesser).

There are more recent Python wrapper of the tesseract-ocr API present on
PyPI that are still being developed. Examples are pytesseract,
tesserocr, and pyocr to name a few.

See: #53467
See: #56853

comment:21 Changed 2 years ago by reneeotten <reneeotten@…>

In abf7ced27a2406c734e94ba77c7983a0655834f3/macports-ports (master):

py-scikits-ann: obsolete py26, add py27 subport

  • update dependencies
  • modernize checksums
  • update livecheck and homepage
  • add modeline

See: #56853

comment:22 Changed 2 years ago by reneeotten <reneeotten@…>

In 3a56a002a9e14ef79730247bffdd4d7242ef206a/macports-ports (master):

py-scikits-audiolab: obsolete py26, add py27 subport

  • modernize checksums
  • update dependencies
  • update livecheck and homepage
  • update modeline

See: #56853

comment:23 Changed 2 years ago by reneeotten <reneeotten@…>

In acd6774e783a1dc237cf9728850b9cecd9c4659d/macports-ports (master):

py-scikits-talkbox: obsolete py26, add py27 subport

  • update livecheck, homepage, modeline
  • update dependencies
  • modernize checksums

See: #56853

comment:24 Changed 2 years ago by reneeotten <reneeotten@…>

In 5f753131bf5d58e57912da67678e828f8674b046/macports-ports (master):

py-scikits-timeseries: update to 0.91.3

  • obsolete py26, add py27 subport
  • update dependencies
  • modernize checksums
  • update livecheck and modeline

See: #56853

comment:25 in reply to:  description ; Changed 2 years ago by ryandesign (Ryan Schmidt)

Replying to yan12125:

py-clnumryandesign,open
py-rpncalcryandesign,open

These two ports, which are part of the same package, do not support python 2.7 or later. I have contacted the author, who said he is not developing this software any longer. I don't know whether it could be fixed to work on newer versions of python. I don't know if newer alternatives to this software exist.

comment:26 Changed 2 years ago by yan12125 (Chih-Hsuan Yen)

Description: modified (diff)

comment:27 in reply to:  25 Changed 2 years ago by yan12125 (Chih-Hsuan Yen)

ryandesign: I just tried clnum. Looks like it requires non-trivial patches to build on 64-bit systems.

comment:29 Changed 2 years ago by mf2k (Frank Schima)

Description: modified (diff)

comment:30 Changed 2 years ago by yan12125 (Chih-Hsuan Yen)

Description: modified (diff)

comment:31 in reply to:  28 Changed 2 years ago by yan12125 (Chih-Hsuan Yen)

Replying to reneeotten:

two other ports have been updated already, but didn't add this ticket in their commit message:

Updated! Feel free to just modify the description in the following commits.

comment:32 Changed 2 years ago by reneeotten <reneeotten@…>

In a363ac30dc6fb470d4f9a230cadc9f1cb5723398/macports-ports (master):

py-logilab-hmm: obsolete py26 subport

See: #56853
Closes: #56073

comment:33 Changed 2 years ago by reneeotten <reneeotten@…>

In d4eb19ad8448b6d488fa48ee69162c978b68b675/macports-ports (master):

py-pybox2d: obsolete py26 subport

See: #56853

comment:34 Changed 2 years ago by yan12125 (Chih-Hsuan Yen)

Description: modified (diff)

comment:35 Changed 15 months ago by reneeotten (Renee Otten)

Port: py-logilab-hmm py-pebl py-pybox2d py-pymodels py-pymorph py-pyrant py-rabbyt py-scgi py-scikits-ann py-scikits-audiolab py-scikits-talkbox py-scikits-timeseries py-smisk py-tesser py-twill removed

comment:36 Changed 15 months ago by reneeotten (Renee Otten)

there are three ports left that are not supported anymore upstream:

  • py-clnum and py-rpncalc, see comment:25. A quick search on GitHub seem to indicate that there are package for this that will work with newer Python versions; these could be added if there is interest.
  • py-psyco, it states on the website: "12 March 2012 - Psyco is unmaintained and dead. Please look at PyPy for the state-of-the-art in JIT compilers for Python."

Any objections to just removing these last three packages?

Last edited 9 months ago by ryandesign (Ryan Schmidt) (previous) (diff)

comment:37 Changed 15 months ago by mf2k (Frank Schima)

No objection here. I say file the PR and let's see if the maintainers object.

comment:38 Changed 13 months ago by jmroot (Joshua Root)

Just leave psyco thanks.

comment:39 Changed 9 months ago by ryandesign (Ryan Schmidt)

Since I presume py26-clnum and py26-rpncalc continue to work, why not leave them until an alternative is available?

comment:40 in reply to:  39 ; Changed 9 months ago by yan12125 (Chih-Hsuan Yen)

Replying to ryandesign:

Since I presume py26-clnum and py26-rpncalc continue to work, why not leave them until an alternative is available?

I'm not sure if those ports still work or not. py26-rpncalc depends on py26-clnum, and during the last time I tried, py26-clnum does not build (comment:27).

comment:41 Changed 9 months ago by superbock

Cc: superbock removed

comment:42 in reply to:  40 Changed 9 months ago by ryandesign (Ryan Schmidt)

Replying to yan12125:

py26-rpncalc depends on py26-clnum, and during the last time I tried, py26-clnum does not build (comment:27).

I fixed that yesterday in cd816c4 and 3986833. Both ports build on all macOS versions.

comment:43 Changed 8 months ago by yan12125 (Chih-Hsuan Yen)

Thanks! Then IMO it is fine to keep py26-clnum as long as someone is willing to maintain python26.

As a side record, here is the error when I attempt to compile clnum with Python 2.7 on Linux:

$ python2.7 setup.py build_ext 
running build_ext
building 'clnum.clnum' extension
gcc -pthread -fno-strict-aliasing -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -DNDEBUG -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fPIC -I/usr/include/python2.7 -c clnum/src/clnum.cpp -o build/temp.linux-x86_64-2.7/clnum/src/clnum.o
clnum/src/clnum.cpp:819:2: error: #error This routine needs to be fixed
  819 | #error This routine needs to be fixed
      |  ^~~~~
error: command 'gcc' failed with exit status 1

This seems to be related to an internal change since Python 2.7 (1).

(1) https://bugs.python.org/issue4258

comment:44 Changed 8 months ago by ryandesign (Ryan Schmidt)

Yes, clnum does not build with python27 or later. I've mentioned it to the author. He's no longer developing the software. That Python issue is very long so I'm not going to read it. :)

Note: See TracTickets for help on using tickets.