Re: coming back to packaging multiple versions of libraries

2011-01-03 Thread Piotr Ożarowski
[Robert Collins, 2011-01-03]
> whats the simplest way to install this somewhere else - e.g.
> /usr/share/pyshared/wadllib-1.1.4
> and have
> import wadllib
> still work without user intervention.
> 
> Two options seem to present themselves to me at the moment:
>  - the pyshared symlink logic could select the highest version and
> link that into /usr/lib/.../wadllib as well as into
> /usr/lib/.../wadllib-1.1.4
>- possibly using a single wadllib->wadllib-1.1.4 symlink, or
> possibly using the 'normal' structure of directories + per-file links.
>  - we could drop the versioned path into site.py in the same way
> python-numeric etc do

what's the point of installing two different versions of the same module
if only one will be used anyway? If the answer to that question is:
"in the application where I need different version, I will adjust
sys.path" - why not simply provide different version of the library as
private module? Security team will hate you anyway.
 
> I'm very interested in other approaches to make this work;

teach upstream about the importance of stable API (yeah, I know Python
programmers do not care about it much, it could be worse¹, though)

You could also provide wadllib/__init__.py file which will modify
__path__ to point to the newest installed versions (and f.e. check for
WADLIBVERSION env. variable if someone doesn't want the newest version)
but it's an ugly hack and could cause more harm than good, IMHO.

[¹] imagine packaging something written in Ruby
-- 
Piotr Ożarowski Debian GNU/Linux Developer
www.ozarowski.pl  www.griffith.cc   www.debian.org
GPG Fingerprint: 1D2F A898 58DA AF62 1786 2DF7 AEF6 F1A2 A745 7645


-- 
To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20110103081200.gj18...@piotro.eu



Re: Compressing objects.inv?

2011-01-03 Thread Josselin Mouette
Le lundi 03 janvier 2011 à 00:17 +0100, Michael Fladischer a écrit :
> Some packages (e.g. python-sphinx itself) ship a gzip compressed
> objects.inv.gz (it seems to me that dh_compress triggers this during
> build) but sphinx.ext.intersphinx is not able to read compressed files.

If it’s done by dh_compress, this can be trivially fixed in debhelper
itself. I remember having to do this for similar reasons for debhelp.

-- 
 .''`.
: :' : “You would need to ask a lawyer if you don't know
`. `'   that a handshake of course makes a valid contract.”
  `---  J???rg Schilling


--
To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/1294052024.4333.8.ca...@meh



Re: Compressing objects.inv?

2011-01-03 Thread Michal Čihař
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

Hi

Dne Mon, 03 Jan 2011 12:31:29 +0100
Michael Fladischer  napsal(a):

> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
> 
> Josselin Mouette, 2011-01-03 11:53:
> > If it’s done by dh_compress, this can be trivially fixed in debhelper
> > itself. I remember having to do this for similar reasons for debhelp.
> 
> You mean by adding it to the hardcoded list of exceptions in
> dh_compress? I could send a patch to the debhelper maintainers if this
> would be the preferred path (although I already did a mass-bug-filing).
> 
> I was thinking about a lintian check but I lack lintian/perl foo to do
> this in a timely manner.

Filing wishlist bug agains lintian would help as well so that it is not
forgotten.

- -- 
Michal Čihař | http://cihar.com | http://blog.cihar.com
-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.15 (GNU/Linux)

iQIcBAEBCAAGBQJNIcjcAAoJEGo39bHX+xdN3rUP/AsA5pY9rMk1Pf5wTf3LadQf
bSiX6MIFiyToQanfoRpXUqrjUJ35QRgPdSL8GD7NVuy48yTIfe9DWDA34ixMg2HT
ngXhpo2B0nwI++qZGWOqkCrsIRH2vvNHeIWqI3c8JRTuXoIAu5st4x6V4CSDxoVr
bZsEUm39BijM/DuBy5KNaoxQdNPocIid+awqUXHN7tclkTw807G8Y+AS5diF+q2q
xlzcEjDBNYvqqCXZLH9toHQdMFeO6U8YRCduW5xXv1MJpNQvpLMhbJA/LIDAVzMD
4L9fzIOCKERw3EHkb8OLJdDhmAFZUjImiAIcgxDcqlPHaG9zt0lutr9cezqLTfEo
9gpnCYzJKGy4nYIcrL0BYpp4dt0aDBg5lOIZm44P8dUn3z/PsTp4G0mivUj9G955
deUMZO8ZXn4mNIXszp0bgrR5i/mnD30auoLYoCVvC8c+Vur1pmgsjUSp4HqjypY1
EBxMjF605TxAxm8gYYaN9dn+xesaXfPcwgTCVWylb4x0mFe0cLAe+glYpwctYxZU
AA+vtkHGeydTU3vYkCwQl12mfqb0EwXQNRDQLBeGny1e9a6kmsV8A21K+1xTCqFt
0T6hHeQEYP9bSVeHq+Vj9lCYzcKqrDix8B2K05qVuH6+Qbm0f3s71bmgzmILnPOR
D3M1Lw90bEnYMCxWD/ob
=HUiC
-END PGP SIGNATURE-


Re: Compressing objects.inv?

2011-01-03 Thread Stefano Rivera
Hi Michael (2011.01.03_13:31:29_+0200)
> You mean by adding it to the hardcoded list of exceptions in
> dh_compress? I could send a patch to the debhelper maintainers if this
> would be the preferred path (although I already did a mass-bug-filing).

Also worth noting is .js, which sphinx docs include, and get compressed
by default.

> I was thinking about a lintian check but I lack lintian/perl foo to do
> this in a timely manner.

If someone is doing that, there's also the missing _sources issue [0],
although that's a lot harder to detect (you need to identify a sphinx
docs subtree...)

[0]: http://lists.debian.org/20101108231614.gu12...@onerussian.com

SR

-- 
Stefano Rivera
  http://tumbleweed.org.za/
  H: +27 21 465 6908 C: +27 72 419 8559  UCT: x3127


-- 
To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20110103141828.gy11...@bach.rivera.co.za



Re: Compressing objects.inv?

2011-01-03 Thread Michal Čihař
Hi

Dne Mon, 3 Jan 2011 16:18:28 +0200
Stefano Rivera  napsal(a):

> Hi Michael (2011.01.03_13:31:29_+0200)
> > You mean by adding it to the hardcoded list of exceptions in
> > dh_compress? I could send a patch to the debhelper maintainers if this
> > would be the preferred path (although I already did a mass-bug-filing).
> 
> Also worth noting is .js, which sphinx docs include, and get compressed
> by default.
> 
> > I was thinking about a lintian check but I lack lintian/perl foo to do
> > this in a timely manner.
> 
> If someone is doing that, there's also the missing _sources issue [0],
> although that's a lot harder to detect (you need to identify a sphinx
> docs subtree...)

I guess broken search is rather caused by compressed .doctree files,
but I might be wrong.

-- 
Michal Čihař | http://cihar.com | http://blog.cihar.com


signature.asc
Description: PGP signature


Re: Compressing objects.inv?

2011-01-03 Thread Michael Fladischer
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Yaroslav Halchenko, 2011-01-03 02:57:
> cool extension -- any plans to develop/contribute a handler for
> DBTS?

Yes, I hope to be able to integrate python-debianbts as a handler later on.

- -- 
Michael Fladischer
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk0hsaEACgkQeJ3z1zFMUGZ4twCeJpsPh+8f/C5++HSe87tW+fLZ
Ik4An0EyKjoihwrpN58g03bkZy71VSIe
=iuZD
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4d21b1a1.90...@fladi.at



Re: Compressing objects.inv?

2011-01-03 Thread Michael Fladischer
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Jakub Wilk, 2011-01-03 01:27:
> For python-sphinx, I've just committed a fix, thanks.
> List of affected packages:

I've filed bugs with severity minor to all (30) affected packages
(except python-sphinx, thanks for the quick fix :-) ).

- -- 
Michael Fladischer
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk0hslQACgkQeJ3z1zFMUGZN/gCgk4mGPuLfTcyYKH4R+CdnmzQz
VNQAoIi+Ghdzwk8EG6tAfwa50iYD6952
=mAeW
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4d21b255.2090...@fladi.at



Re: Compressing objects.inv?

2011-01-03 Thread Michael Fladischer
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Josselin Mouette, 2011-01-03 11:53:
> If it’s done by dh_compress, this can be trivially fixed in debhelper
> itself. I remember having to do this for similar reasons for debhelp.

You mean by adding it to the hardcoded list of exceptions in
dh_compress? I could send a patch to the debhelper maintainers if this
would be the preferred path (although I already did a mass-bug-filing).

I was thinking about a lintian check but I lack lintian/perl foo to do
this in a timely manner.

Regards,
- -- 
Michael Fladischer
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk0hs5EACgkQeJ3z1zFMUGZWpQCfYiuOqkKd+Rt5pbQSr2yPz5g6
h44AoIb/ohhCXtjyFSAwRBwbI9nvFRmv
=JJQl
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4d21b391.6070...@fladi.at



Re: Compressing objects.inv?

2011-01-03 Thread Picca Frédéric-Emmanuel
Le Mon, 3 Jan 2011 14:02:20 +0100,
Michal Čihař  a écrit :

> > I was thinking about a lintian check but I lack lintian/perl foo to do
> > this in a timely manner.
> 
> Filing wishlist bug agains lintian would help as well so that it is not
> forgotten.

+1, I already sent a patch to avoid javascript (.js) compression.
Thoses javascript are also used by sphinx for the search engine.
It seems that a patch was already applyed to debhelper [1]

It would be nice to have a lintian check to fix the sphinx search engine
also [2]. It seems that all sphinx generated documentation is affected by this
compression unless overriding the dh_compress with something like

  12 # do not compress the javascript files generated by sphinx
  13 # if compressed the documentation search engine is broken.
  14 override_dh_compress:
  15 dh_compress -X.js

So it seems thaht we need no compression of the .js files under 
/usr/share/doc//html
and presence of 

HAS_SOURCE: false in search.html
or build without '_sources':
  html_copy_source = False


[1] 
http://git.debian.org/?p=debhelper/debhelper.git;a=commitdiff;h=030b3d807fb91a5bb7e61b3b47c8ca971de880ef
[2] http://lists.debian.org/20101108231614.gu12...@onerussian.com

See you

Frederic

-- 
GPG public key   1024D/A59B1171 2009-08-11
fingerprint = 1688 A3D6 F0BD E4DF 2E6B  06AA B6A9 BA6A A59B 1171
uid  Picca Frédéric-Emmanuel 


signature.asc
Description: PGP signature


Re: Compressing objects.inv?

2011-01-03 Thread Jakub Wilk

* Michal Čihař , 2011-01-03, 15:30:

If someone is doing that, there's also the missing _sources issue [0],
although that's a lot harder to detect (you need to identify a sphinx
docs subtree...)
I guess broken search is rather caused by compressed .doctree files, 
but I might be wrong.


You mean files in .doctrees/ subdirectory? They are cache files and 
shouldn't be shipped binary packages at all.


--
Jakub Wilk


signature.asc
Description: Digital signature


Re: Compressing objects.inv?

2011-01-03 Thread Michal Čihař
Hi

Dne Mon, 3 Jan 2011 15:45:04 +0100
Jakub Wilk  napsal(a):

> * Michal Čihař , 2011-01-03, 15:30:
> >>If someone is doing that, there's also the missing _sources issue [0],
> >>although that's a lot harder to detect (you need to identify a sphinx
> >>docs subtree...)
> >I guess broken search is rather caused by compressed .doctree files, 
> >but I might be wrong.
> 
> You mean files in .doctrees/ subdirectory? They are cache files and 
> shouldn't be shipped binary packages at all.

What sounds like another good check for lintian. Didn't know that.

-- 
Michal Čihař | http://cihar.com | http://blog.cihar.com


signature.asc
Description: PGP signature


Re: coming back to packaging multiple versions of libraries

2011-01-03 Thread Barry Warsaw
Robert brings this up every time I see him. :) I'm glad we're still talking
about it; while I'm sympathetic to the use case, it just seems like a problem
fraught with difficulties.

One question is whether the entire Debian packaging system knows that there
are multiple versions of a package available, and how it handles that.  Note
that this happens in other cases and AFAIK it's always resolved by including
the version number in the package name (gir1.0/gir1.2 comes to mind).  So,
would you have packages python-wadllib1.1.4 and python-wadllib1.2 in the
archive?  That's going to get pretty unwieldy as a general policy.

Or maybe all supported versions of wadllib get installed when you install
python-wadllib, but then packages get bigger and the Debian maintainer still
has to manage the complexity of multiple versions (e.g. when can you drop
wadllib 1.1.4?).

We see similar solutions in the Python world, what with unittest2, httplib2,
and so on (heck, even Python3 ;).  These are usually reserved for more severe
and deliberate API breaks, such as rewrites.  Unfortunately, we usually have
to live with the ugly module names forever.

Piotr makes other good points, so just a few additional comments.

On Jan 03, 2011, at 09:12 AM, Piotr Ożarowski wrote:

>teach upstream about the importance of stable API (yeah, I know Python
>programmers do not care about it much, it could be worse¹, though)

Not all upstreams are bad at this, or perhaps a better way of saying this is
that many are good at maintaining stable APIs.  It's not really a Python
thing, since the quality, stability, and guarantees of Python libraries
probably run the gamut as much as libraries in any other language (
BerkeleyDB ).  The standard library strives for this with stated
policy (PEP 387) but it's tricky.  For example, sometimes you have to forego a
bug fix because the only way to fix it properly is to break the API.  You can
sometimes play tricks (e.g. add optional args to the end of the parameters, or
a parallel function) but you have to have backward compatibility as a firm
principle of your software development.  I do think that if a library you care
about breaks compatibility, you should file bugs and be tenacious about them.
In wadllib's case, you know the developers and might even have write
permissions to the tree. :)

The stdlib is made more difficult IMO by the batteries-included philosophy.
Meaning, individual modules generally lose their own identifiable versioning
when pulled into the stdlib, and only get multiple versions for deliberate
major breaks described above, e.g. we ship both urllib and urllib2.

>You could also provide wadllib/__init__.py file which will modify
>__path__ to point to the newest installed versions (and f.e. check for
>WADLIBVERSION env. variable if someone doesn't want the newest version)
>but it's an ugly hack and could cause more harm than good, IMHO.

Agreed.  It would be more useful for the wadllib developers to work harder at
keeping a stable API between minor versions.  If the API breaks, bump the
major version number.  Then the distros can do all the difficult work of
analyzing dependencies, and deciding when and how to transition to the new
version.  This happens all the time.

Don't give up though Robert!  I think the problem is bigger than just Python,
but if anyone can come up with some innovative ideas that could work, you
can!

-Barry


signature.asc
Description: PGP signature


Re: Compressing objects.inv?

2011-01-03 Thread Michael Fladischer
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Michal Čihař, 2011-01-03 14:02:
> Filing wishlist bug agains lintian would help as well so that it is not
> forgotten.

I've filed a bug with a patch attached: #608810

- -- 
Michael Fladischer
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk0iBZ4ACgkQeJ3z1zFMUGa/iACfWESSM/upFcvmAQUtoFP9MQc5
6roAnjG4erRR/zMQC7Sj4HpAtEODIP60
=YMwS
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4d22059e.9090...@fladi.at



Re: coming back to packaging multiple versions of libraries

2011-01-03 Thread Robert Collins
On Mon, Jan 3, 2011 at 9:12 PM, Piotr Ożarowski  wrote:
> what's the point of installing two different versions of the same module
> if only one will be used anyway? If the answer to that question is:
> "in the application where I need different version, I will adjust
> sys.path" - why not simply provide different version of the library as
> private module? Security team will hate you anyway.

For the same reason we support libreadline5 and 6 : to transition
higher level code without a flag day across the entire machine.
Security team should not hate this any more or less than they do for C
libraries, its for precisely the same reasons.

>> I'm very interested in other approaches to make this work;
>
> teach upstream about the importance of stable API (yeah, I know Python
> programmers do not care about it much, it could be worse¹, though)

The best of intentions still sometimes leads to incompatible changes,
but yeah, preach it :).

> You could also provide wadllib/__init__.py file which will modify
> __path__ to point to the newest installed versions (and f.e. check for
> WADLIBVERSION env. variable if someone doesn't want the newest version)
> but it's an ugly hack and could cause more harm than good, IMHO.

I can see that breaking overly-clever packages, or things like the
twisted splitup, bzrlib.plugins etc. I'd like to be minimally
invasive.

@Barry: yes, the C/C++/CLR/ library handling is precisely equivalent.
I would expect only as many concurrent versions in the archive as we
need to support. There are two use cases:
 - in sid, while transitioning an incompatible change
 - users using private packages with their own archive

In the former case, we'd generally(1) drop an old version as soon as
its rdepends(2) is empty. In the latter case, its up to the user to
decide when they don't need a particular version.

(1) Exceptions might occur if a maintainer feels that the package is
extremely widely used outside of the packaging universe and wants to
keep it available.
(2) Figuring out rdepends sanely is another step to be taken, but I'm
hoping to break this down far enough to get consensus on individual
bits.

It really does look like having better upstream facilities would make
this a no-brainer for us; what I'd like to achieve though is something
that /works/ for the existing python platform - for 2.7 which will be
around a good long time, and then we'll have plenty of data to discuss
with upstream.

-Rob


--
To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/aanlktim7joembx_7nhtpb2mpkaq-9iiet7txbp8cp...@mail.gmail.com



Re: Bug#524176: AM_PATH_PYTHON should honor python's idea about the site directory

2011-01-03 Thread Eric Dorland
reassign 524176 automake
fixed 524176 1.11
thanks

* Matthias Klose (d...@debian.org) wrote:
> On 23.03.2010 21:21, Jonathan Wiltshire wrote:
> >Hi,
> >
> >Do you have any indication of when this bug will be closed? It's currently
> >holding up the (proper) fixes for several bugs key to the Python 2.6
> >transition, that we want to get over and done as soon as possible.
> >
> >We can make ugly patches, but fixing this bug would reduce the work needed
> >to merely binNMUing the affected packages, if I have understood it
> >correctly.
> 
> it is fixed upstream in automake 1.11 (and in Debian), so you could
> use this version; I doubt that it will allow more binNMUs, as
> autoconf isn't called during the build for many packages.

Reassigning to the current version of automake and closing.

-- 
Eric Dorland 
ICQ: #61138586, Jabber: ho...@jabber.com



signature.asc
Description: Digital signature