jamadden/trollius

Last pypi Release broke trollius==2.1

Closed this issue · 9 comments

The last release of trollius removed trollius==2.1 from PyPi Repository

pip install trollius==2.1
No matching distribution found for trollius==2.1

Also trollius 1.0.4 which breaks pyshark.

The entire trollius project was removed from PyPI (see zopefoundation/ZEO#146).

To support existing products, some members of the Zope community are working to republish some old releases, with the huge caveat that they are completely unsupported and unmaintained. Right now that means 2.2.post1 is available, as is 2.1.post2 (we generally cannot reuse old version numbers exactly); there doesn't seem to be a git tag for 1.0.4 so I doubt we'll be attempting to republish that.

We had a CI dependency on 1.0.4 through a pyshark==0.3.7.9 pin. Just updated the pin on all branches to a newer version of pyshark; looks like it will no longer be an option.

@jamadden could you also release 1.0.4? Py2-compatible versions of pyshark depend on it.

I have the sources for 1.0.4, but for the life of me I cannot find the repository ref of it.

I cannot, no, not without a git commit. I'm unable to locate anything that looks like a tag or branch for "1.0.4" in the repository; commits from around the time 1.0.4 was released (according to docs/changelog.rst) call themselves 3.4.x.

@jamadden FWIW I've found what looks like 1.0.5 (unlisted in releases file) here 962dea8#diff-2eeaed663bd0d25b7e608891384b7298.

It seems to me that 3.4.x were tulip/asyncio versions. Trollius would pull changes from asyncio and fix them until it was working, then cut a release. Unable to find 1.0.4. Very strange logs in this repo. :)

Trollius is a fork of the asyncio project which has a complex Git tree. Trollius was rebased frequently on top of asyncio to retrieve fixes and enhancements. Each rebase was very painful and dangerous. It was very painful to maintain Trollius. In the meanwhile, asyncio moved completely into Python stdlib (https://github.com/python/cpython/) and https://github.com/python/asyncio/ moved to read-only.

It is likely that part of Trollius history was lost during a rebase. I suggest you to upgrade to Trollius 2.0 or newer. I didn't know that old Trollius versions had no tag in Git, nor that Trollius was... used :-) Sorry for the inconvenience :-(

Obviously, another option which is better for the long term (Python 2 will reach its end of life at the end of the year) is to upgrade to Python 3 which already has a builtin asyncio module. https://github.com/jamadden/trollius/blob/trollius/doc/deprecated.rst

I was able to extract trollius-1.0.4 from the Fedora EPEL (Extra Packages for Enterprise Linux) sources. I cross-checked that with two other distributions and confirmed the tarballs to be identical. I put that into a branch and then uploaded a wheel to PyPI. Hopefully that gets people unstuck in the short term.

(Note that I didn't do any significant verification; use at your own risk.)