[openstack-dev] getting rid of tablib completely (Requests + urllib3 + distro packages)

Thomas Goirand zigo at debian.org
Wed Oct 14 22:31:44 UTC 2015

On 10/13/2015 05:14 PM, Doug Hellmann wrote:
> Excerpts from Thomas Goirand's message of 2015-10-13 12:38:00 +0200:
>> On 10/12/2015 11:09 PM, Steve Baker wrote:
>>> On 13/10/15 02:05, Thomas Goirand wrote:
>>>> BTW, the same applies for tablib which is in a even more horrible state
>>>> that makes it impossible to package with Py3 support. But tablib could
>>>> be removed from our (build-)dependency list, if someone cares about
>>>> re-writing cliff-tablib, which IMO wouldn't be that much work. Doug, how
>>>> many beers shall I offer you for that work? :)
>>> Regarding tablib, cliff has had its own table formatter for some time,
>>> and now has its own json and yaml formatters. I believe the only tablib
>>> formatter left is the HTML one, which likely wouldn't be missed if it
>>> was just dropped (or it could be simply reimplemented inside cliff).
>>> If the cliff deb depends on cliff-tablib
>> It does.
> That dependency is backwards. cliff-tablib should depend on cliff. Cliff
> does not need cliff-tablib, but cliff-tablib is only useful if cliff is
> installed.

My bad, sorry. python-cliff doesn't depends on cliff-tablib. Why did I
say yes?

>> And also the below packages have a build-dependency on
>> cliff-tablib:
>> - python-neutronclient
>> - python-openstackclient
>> python-openstackclient also has a runtime depends on cliff-tablib.
> Now that we have a cliff with the formatters provided by tablib, we can
> update those dependencies to remove cliff-tablib. Someone just needs to
> follow through on that with patches to the requirements files for the
> clients.

Doug, the problem isn't cliff-tablib, the problem is tablib.

I don't really know how to describe the mess that this package is. It
bundles so many outdated Python modules with hacks to force Py3 support
into it, that it is impossible to package properly. Mostly, all the
embedded Python modules in tablib have had newer upstream releases with
real support for Py3 (instead of hacks in the bundled versions), though
upgrading to them breaks tablib. Just doing "python3 setup.py install"
fails on me because its trying to install the Py2 version. It's just
horrible... :(

So please don't just remove cliff-tablib, which itself is fine, but
really get rid of tablib as per the subject...


Thomas Goirand (zigo)

More information about the OpenStack-dev mailing list