[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How do I add support for python3 to my package?



On Wednesday, April 18, 2012 02:35:20 PM Paul Elliott wrote:
> On Wednesday, April 18, 2012 10:49:34 AM Scott Kitterman wrote:
> > Alternately you could invest a little time in understanding what Barry's
> > written up and build both sets of binaries from one source.  This is the
> > usual method.
> 
> The problem is not understanding. It is a problem of style.
> 
> Let us take one snippet
> 
> >         python$* setup.py install --root=$(CURDIR)/debian/tmp
> >         --install-layout=deb
> 
> That is the usual way we install in March 2012. But "the usual way we
> install" is a moving target; It will change.
> 
> I don't want to codify "the usual way  we install" in March 2012 and then
> maintain that moving target as it moves.

It's extremely unlikely to change anytime soon.

> I want to write code that means "install in the usual way" and let the code
> that implements that concept be maintained by someone smarter than me.

That would be better, but such code isn't available yet, so your choices are 
do it by hand or wait.  It's your choice, but I don't think it's so bad to go 
ahead.

> It is not good design to have a bunch moving targets all tracked by multiple
> packagers with  various abilities and attention spans.

The design is stable.  What we don't have is a tool set that hides it from 
you.  There is no chance before Wheezy releases and probably not for long 
after that that the existing choices will quit working or suddenly be wrong.

> This is not criticism of Barry; He has written excellent documentation on
> how to join the cargo cult.

I was confused by assuming you knew what the phrase cargo cult meant.  If you 
understand Barry's documentation, you aren't cargo culting the scripts.

http://en.wikipedia.org/wiki/Cargo_cult_programming

> I am saying that we ought to find ways of not joining cargo cults.

I don't think anyone is suggesting you actually do that.

> It is not about me or my level of understanding. Every line of code I write
> has to be maintained by somebody. Eventually, by somebody other than me; I
> am not going to live forever. Therefore, I resist writting lines of code.

Then you can wait until multibuild is done if you prefer.

> > A separate source package doesn't make it any easier as it
> > would still have to build for python3.
> 
> When I build for python2 alone I don't have to override
> dh_auto_build or dh_auto_install.
> 
> I assume the same would be true if building for python3 alone.
> 
> It is only when I want both in the same source package that I need these
> complicated overrides that create moving targets.

No.  You'd need overrides for a python3 only source package as well.  The 
fundamental problem is debhelper doesn't know about building for python3.  
That doesn't change no matter how many source packages you split it up into.

Scott K


Reply to: