I'm working on packaging the latest version of sqlobject, which adds
supprt for python 3, and I'm unsure of how best to handle the helper
applications that ship as part of the package. The helper applications
will work with both python2 and python3, so it's not clear to me how
to apply the advice given in [1], and I'd ideally want the helper
programs available regardless of which version of the module is
installed.

Looking at some other packages in the archive, there seem to be
several approaches used to solve similar problems

a) Bundle the application in both python2 and python3 version and use
alternatives to manage the version (docutils and sphinx, for example,
although in those cases the programs are used fairly extensively as
applications)

b) Install multiple copies with different names (foo and foo-py3 and
similar ideas)

c) Replace the helper with a combination shell / python script
(django-admin for example [2]), which is cute.

Is there any consensus on which approach is best? Any advice on the
pitfalls or benefits of the various approachs? Other tricks I've
missed?

Thanks

[1] https://wiki.debian.org/Python/LibraryStyleGuide

[2] 
https://anonscm.debian.org/cgit/python-modules/packages/python-django.git/tree/debian/django-admin

-- 
Neil Muller

Reply via email to