Page MenuHomePhabricator

dependency irc (because of jaraco.text) is not Python 2.6 compatible
Closed, ResolvedPublic

Description

The jaraco.text dependency is not compatible with Python 2.6 because it's using sets via curly brackets (s = {42, 74, 47}). I first discovred it on Travis where one 2.6 test failed. Now the main repository's test are failing too.

Unfortunately that package is not a direct dependency but it looks like that is just compatible with Python 2.7+. It's not a direct dependency and the dependency [[https://pypi.python.org/pypi/irc/11.1.1|irc]] depends on it and that dropped support of Python 2.6 in version 10. The normal test without PYSETUP_TEST_EXTRAS=1 does works so it's most likely only that package.

Event Timeline

XZise raised the priority of this task from to Needs Triage.
XZise updated the task description. (Show Details)
XZise added projects: Pywikibot, Pywikibot-tests.
XZise subscribed.
Restricted Application added subscribers: Aklapper, Unknown Object (MLST). · View Herald TranscriptFeb 23 2015, 2:46 PM

I haven't much time, will add additonal information later.

jayvdb renamed this task from One dependency is not Python 2.6 compatible to dependency jaraco.text is not Python 2.6 compatible.Feb 23 2015, 5:11 PM
jayvdb updated the task description. (Show Details)
jayvdb set Security to None.
XZise renamed this task from dependency jaraco.text is not Python 2.6 compatible to dependency irc (because of jaraco.text) is not Python 2.6 compatible.Feb 25 2015, 9:52 AM
XZise updated the task description. (Show Details)

Okay I should've waited for my test before I edited it. So irc is not compatible anymore with Python 2.6. Should we remove it from the script dependencies when under Python 2.6?

Okay forcing irc<10.0 when in Python 2.6 just delegates the problem to jaraco.ui: https://travis-ci.org/xZise/pywikibot-core/jobs/52116400 :(

Can we go back to an earlier version that does support py2.6 , or fix the bugs in jaraco.text? (it appears to be a new repo https://bitbucket.org/jaraco/jaraco.text/history-node/205f9c5bf573/setup.py?at=default , so they may be interested in py2.6 support)

Other options/workarounds at least until the bugs in py2.6 support are fixed:

  • flag 'irc' as a py2.7+ component of pywikibot,
  • dont include irc in the PYSETUP_TEST_EXTRAS=1 builds
jayvdb triaged this task as Unbreak Now! priority.Feb 26 2015, 2:25 AM

Regarding “Unbreak now!” I fear there are other problems too: https://travis-ci.org/xZise/pywikibot-core/jobs/52121307 That version is not installing IRC (like one of your suggestions).

I mean I could try installing irc on Python 2.6 until I got a version that works (which would then look something like this), although what if it's always installing the newest dependencies which are not compatible?

Okay I'm running a new test now after I tested through the versions. Version 9, which was the last version officially compatible with Python 2.6, couldn't be installed because of:

File "/tmp/pip_build_xzise/jaraco.functools/setup.py", line 13
  needs_pytest = {'pytest', 'test'}.intersection(sys.argv)
                          ^

Then the next older version was 8.9.1 which is incompatible for the same reason. I guess along with version 10 of irc they dropped the support in all their utility libraries and versions before 8.9.1 didn't use them. Although I was able to install 8.9 and adding a dependency in a -.-.1 version seems unlikely.

Change 193098 had a related patch set uploaded (by XZise):
[FIX] Use IRC before v10 in Python 2.6

https://gerrit.wikimedia.org/r/193098

Change 193098 merged by jenkins-bot:
[FIX] Use IRC before v10 in Python 2.6

https://gerrit.wikimedia.org/r/193098

@XZise, @jayvdb: What is left to do here after the patch has been merged? Any news?
This task has been "Unbreak now" priority for six weeks, is that priority still realistic?

XZise claimed this task.