Re: Salvaging python-cassandra for Stretch

2017-04-09 Thread Thomas Goirand
On 04/06/2017 09:36 PM, Thomas Goirand wrote:
> On 04/06/2017 08:39 PM, Ondrej Novy wrote:
>> And auto -dbgsym doesn't support python-dbg. So it's wrong for Python C
>> modules.
> 
> I guess I need to read more about this then.
> 
> On 04/06/2017 06:31 PM, Dmitry Shachnev wrote:
>> In my opinion a better solution (for Stretch) would be just adding an
>> Architecture: field to the -dbg packages (and for Buster, porting the
>> code to support big endian architectures).
> 
> This looks like the most reasonable solution to me. Thoughts anyone?

Does anyone oppose to an upload with this change?

Cheers,

Thomas Goirand (zigo)



Re: Salvaging python-cassandra for Stretch

2017-04-06 Thread Thomas Goirand
On 04/06/2017 08:39 PM, Ondrej Novy wrote:
> And auto -dbgsym doesn't support python-dbg. So it's wrong for Python C
> modules.

I guess I need to read more about this then.

On 04/06/2017 06:31 PM, Dmitry Shachnev wrote:
> In my opinion a better solution (for Stretch) would be just adding an
> Architecture: field to the -dbg packages (and for Buster, porting the
> code to support big endian architectures).

This looks like the most reasonable solution to me. Thoughts anyone?

Cheers,

Thomas Goirand (zigo)



Re: Salvaging python-cassandra for Stretch

2017-04-06 Thread Ondrej Novy
Hi,

sry for second email.

2017-04-06 17:49 GMT+02:00 Thomas Goirand :

> Attached is the debdiff. As you can see, I'm attempting to use the new
> system that creates -dbgsym, and transitioning to it.


cite from: https://release.debian.org/stretch/freeze_policy.html

Some examples of changes that are undesirable during a freeze:
dropping a -dbg package in favour of -dbgsym

I guess FTP masters will reject this unblock request.

And auto -dbgsym doesn't support python-dbg. So it's wrong for Python C
modules.

-- 
Best regards
 Ondřej Nový

Email: n...@ondrej.org
PGP: 3D98 3C52 EB85 980C 46A5  6090 3573 1255 9D1E 064B


Re: Salvaging python-cassandra for Stretch

2017-04-06 Thread Ondrej Novy
Hi,

2017-04-06 17:49 GMT+02:00 Thomas Goirand :

> I'll NMU.
>

because you are part of DPMT, why are you going to do NMU and not team
upload?

-- 
Best regards
 Ondřej Nový

Email: n...@ondrej.org
PGP: 3D98 3C52 EB85 980C 46A5  6090 3573 1255 9D1E 064B


Re: Salvaging python-cassandra for Stretch

2017-04-06 Thread Simon McVittie
On Thu, 06 Apr 2017 at 17:49:15 +0200, Thomas Goirand wrote:
> Attached is the debdiff. As you can see, I'm attempting to use the new
> system that creates -dbgsym, and transitioning to it.

Sorry, I don't think this is a correct solution.

For non-Python packages, foo-dbg traditionally contained detached debug
symbols for the "production" version of foo (for example libglib2.0-0-dbg
contained debug symbols that were stripped from the libraries and binaries
in libglib2.0-0 and libglib2.0-bin). This can easily be superseded by
-dbgsym packages.

However, for Python packages, python[3]-foo-dbg has traditionally contained
two distinct types of content:

* Detached debug symbols as above

* A version of the same Python libraries as python[3]-foo, but recompiled
  with different options such that they can be imported into the debug
  interpreter python[3]-dbg (whose ABI is not the same as python[3])

You're keeping the first but losing the second. Is this intentional? Is
this correct?

It is certainly not correct to keep the -dbg packages and make them
transitional. I'm not sure whether this is considered to be a Policy
violation (-dbgsym packages are not in the main archive), but it's
certainly unconventional; and in this case, the -dbgsym package does
not correctly provide (all the functionality of) the -dbg package,
because the -dbg package contained libraries for the debug interpreter
and the -dbgsym package does not.

With hindsight, Python packages should probably not have ended with
-dbg, because that misleads developers like you into thinking they
are basically the same thing as libglib2.0-0-dbg - they aren't.
Perhaps they should have been like python[3]-dbg-cassandra instead,
which would make it a little clearer that they are a plugin for
python[3]-dbg.

Normally, dropping -dbg packages looks like this:
https://anonscm.debian.org/cgit/pkg-games/ioquake3.git/commit/?id=87594a58b03b850569357543b3823954b4fb0e73

> Also, does #857298 really deserves severity "grave"? Are others sharing
> the view that it could be downgraded to "important"?

It is grave for the binary package, because on the affected architectures,
python-cassandra-dbg is useless: it fails to meet its intended purpose
(letting users of python-dbg "import cassandra").

Unfortunately, autoremovals act on source packages, not binary packages,
because we don't want to remove individual binary packages from testing.

Perhaps removing the binary package is the best resolution - I don't
know. It's certainly the easiest. However, you need to be aware that
this is what you're doing: deliberately removing functionality.

S



Re: Salvaging python-cassandra for Stretch

2017-04-06 Thread Dmitry Shachnev
Hi Thomas!

On Thu, Apr 06, 2017 at 05:49:15PM +0200, Thomas Goirand wrote:
> Hi Sandro and others,
>
> Sandro Tosi has left python-cassandra-driver in a bad state, which leads
> me to attempt to salvage it before it's too late. No harsh feeling, this
> happened to everyone of us, and we can all be busy. Though something
> must be done. Indeed, python-cassandra-driver suffers from #857298,
> which is an RC bug that will lead to AUTORM in 16 days. This will also
> remove openstack-trove, which I would like to avoid.
>
> As I don't want to repeat history and get a flame war started by an NMU,
> I'm in advance of a possible NMU upload, sharing the debdiff with the
> debian-python list. If Sandro agrees, or if there's a consensus in this
> list that it's appropriate, I'll NMU. Best would be if Sandro himself
> fixes the issue though.
>
> Attached is the debdiff. As you can see, I'm attempting to use the new
> system that creates -dbgsym, and transitioning to it. Of course, for
> this to happen, we will need the FTP masters to approve such change in a
> timely manner, and likewise with the release team unblock. If someone
> believe he has a better approach, let me know, though what I did is
> probably the safest way to fix #857298.

To be honest, I do not like your patch.

The -dbg package currently contains not only debug symbols, but also the
C extensions built for debug Python interpreter. And you are removing them
even on the platforms where they are successfully built.

In my opinion a better solution (for Stretch) would be just adding an
Architecture: field to the -dbg packages (and for Buster, porting the code
to support big endian architectures).

Also, even if you really wanted to switch to -dbgsym, there is no need to
keep the old -dbg packages for transition. You could use --dbgsym-migration
option of dh_strip instead.

--
Dmitry Shachnev


signature.asc
Description: PGP signature