I think we should be packaging avro for python using wheels, and I've
said as much in AVRO-2399, but I'm stumbling on some stuff.

The first stumbling block is that avro has artifacts in ./share that
it wants in the package, but the package root starts at ./lang/py. We
work around this with a fair amount of complexity in setup.py, but
it's error prone and I instinctively don't trust that setuptools has
to copy files from outside the package directory. This complexity
exists regardless of whether we're building a tarball (sdist), egg or
wheel.

The second problem I have is that bdist_wheel behaves substantially
different from sdist, so I get errors testing with the wheel that I
don't get when I test with the sdist. Simply, I guess the wheel is not
including something that the sdist includes. It could have to do with
package_data, but I guess python packaging is still an arcane
practice, and I don't understand what's wrong. (My old complaint is
that the python philosophy applies to its language, but not to its
packaging and build system. Efforts are in place to fix this, but it's
not a solved problem.) Anyway, if anyone is looking for something to
work on, particularly if simplifying python packaging is your bag, I
could use some help with AVRO-2399.

Thanks,
Michael

Reply via email to