Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 793419 - dev-python/PyQt5: Version/PythonCompat bump request 5.15.4
Summary: dev-python/PyQt5: Version/PythonCompat bump request 5.15.4
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal minor
Assignee: Qt Bug Alias
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2021-06-01 06:51 UTC by Nowa Ammerlaan
Modified: 2021-06-02 20:05 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nowa Ammerlaan gentoo-dev 2021-06-01 06:51:17 UTC
Version 5.15.4 of PyQt5 was released on the 10th of March, it appears to work just fine with python3_10. If possible, please add this version and python3_10 support when you have time. 

Note that this release appears to have dropped support for dev-qt/qtnetworkauth.

See Also: https://github.com/gentoo/gentoo/pull/21037
Comment 1 Larry the Git Cow gentoo-dev 2021-06-01 17:07:19 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e02b7b1be30fe3f4ac90a1c2361ae9aa8805ef0d

commit e02b7b1be30fe3f4ac90a1c2361ae9aa8805ef0d
Author:     Andrew Ammerlaan <andrewammerlaan@gentoo.org>
AuthorDate: 2021-05-28 20:17:28 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan@gentoo.org>
CommitDate: 2021-06-01 17:06:48 +0000

    dev-python/PyQt5: add 5.15.4, add py3.10
    
    - Dropped webkit flag because deprecated, and the only consumer
    of this flag has been ported to webengine upstream
    
    - Dropped networkauth flag as these bindings are no longer
    included
    
    Closes: https://bugs.gentoo.org/793419
    Package-Manager: Portage-3.0.19, Repoman-3.0.3
    Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>

 dev-python/PyQt5/Manifest            |   1 +
 dev-python/PyQt5/PyQt5-5.15.4.ebuild | 183 +++++++++++++++++++++++++++++++++++
 2 files changed, 184 insertions(+)
Comment 2 Davide Pesavento (RETIRED) gentoo-dev 2021-06-01 17:38:49 UTC
Andrew, you went ahead and merged your changes just 10 hours after opening this bug... how about you wait a little longer next time, ideally for an ack from a maintainer?

There is a potential problem with the major version bump of sip... it's a delicate package and known to have incompatibilities. Did you actually check if the in-tree reverse dependencies still build? Also, my plan was to add sip v5 and v6 as separate SLOTs...
Comment 3 Nowa Ammerlaan gentoo-dev 2021-06-01 17:46:44 UTC
(In reply to Davide Pesavento from comment #2)
> Andrew, you went ahead and merged your changes just 10 hours after opening
> this bug... how about you wait a little longer next time, ideally for an ack
> from a maintainer?

I was gonna wait, but Sam asked me to merge my PR asap given the urgency of adding the new python_compat. 
 
> There is a potential problem with the major version bump of sip... it's a
> delicate package and known to have incompatibilities. Did you actually check
> if the in-tree reverse dependencies still build? Also, my plan was to add
> sip v5 and v6 as separate SLOTs...

I checked PyQt5 (which is what I was working on). I'll double-check the other reverse deps now.
Comment 4 Larry the Git Cow gentoo-dev 2021-06-01 17:54:09 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=61f9858743ebfb03f7bf445d98ae599a424c6cd5

commit 61f9858743ebfb03f7bf445d98ae599a424c6cd5
Author:     Andrew Ammerlaan <andrewammerlaan@gentoo.org>
AuthorDate: 2021-06-01 17:53:47 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan@gentoo.org>
CommitDate: 2021-06-01 17:54:06 +0000

    sci-visualization/scidavis: restrict <dev-python/sip-5
    
    Bug: https://bugs.gentoo.org/793419
    Package-Manager: Portage-3.0.19, Repoman-3.0.3
    Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>

 sci-visualization/scidavis/scidavis-2.4.0.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 5 Davide Pesavento (RETIRED) gentoo-dev 2021-06-01 17:56:29 UTC
(In reply to Andrew Ammerlaan from comment #3)
> (In reply to Davide Pesavento from comment #2)
> > Andrew, you went ahead and merged your changes just 10 hours after opening
> > this bug... how about you wait a little longer next time, ideally for an ack
> > from a maintainer?
> 
> I was gonna wait, but Sam asked me to merge my PR asap given the urgency of
> adding the new python_compat. 

Are you kidding me? Adding py3.10 support is *urgent* now? It just entered the beta phase... Moreover, I added py3.10 support to sip 4.x a couple of days ago.
Comment 6 Davide Pesavento (RETIRED) gentoo-dev 2021-06-01 17:57:01 UTC
Please mask sip-5 ASAP.
Comment 7 Larry the Git Cow gentoo-dev 2021-06-01 18:28:28 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee8c1050ec33a34b3134c2dc52addda9cb2c0695

commit ee8c1050ec33a34b3134c2dc52addda9cb2c0695
Author:     Andrew Ammerlaan <andrewammerlaan@gentoo.org>
AuthorDate: 2021-06-01 18:15:13 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan@gentoo.org>
CommitDate: 2021-06-01 18:28:25 +0000

    app-editors/qhexedit2: restrict to <dev-python/sip-5
    
    Bug: https://bugs.gentoo.org/793419
    Package-Manager: Portage-3.0.19, Repoman-3.0.3
    Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>

 app-editors/qhexedit2/qhexedit2-0.8.6_p20190316.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=102569342257c2ebaecc2df552a558c28bfeff1a

commit 102569342257c2ebaecc2df552a558c28bfeff1a
Author:     Andrew Ammerlaan <andrewammerlaan@gentoo.org>
AuthorDate: 2021-06-01 18:12:05 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan@gentoo.org>
CommitDate: 2021-06-01 18:28:25 +0000

    dev-python/pynest2d: restrict to <dev-python/sip-5
    
    Bug: https://bugs.gentoo.org/793419
    Package-Manager: Portage-3.0.19, Repoman-3.0.3
    Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>

 dev-python/pynest2d/pynest2d-4.8.0-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 8 Nowa Ammerlaan gentoo-dev 2021-06-01 18:30:42 UTC
> Moreover, I added py3.10 support to sip 4.x a couple of days ago.

Sorry, I was not aware of this, when I started working on this it was still stuck on python3.9.

> Please mask sip-5 ASAP.

I just checked all reverse dependencies, and added restrictions where necessary. Do you still want me to mask this?
Comment 9 Nowa Ammerlaan gentoo-dev 2021-06-01 18:48:53 UTC
And just for the record, I actually *did* check the ABI number of the new version beforehand, which is also 12, same as the 4.x.y series. Though it does indeed appear that some packages fail to build with the 5.x.y series regardless. I would have appreciated at least *some* comment about this when I asked on IRC, when I opened the PR, or when I opened this bug. Though I do understand that the short time span made this somewhat difficult, for which I apologize (though as I said, I was actually planning on waiting a bit more, but then Sam asked me to just merge it now). Anyway, things are fixed now, so I hope all is good again.
Comment 10 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-06-02 13:14:41 UTC
(In reply to Davide Pesavento from comment #2)
> Andrew, you went ahead and merged your changes just 10 hours after opening
> this bug... how about you wait a little longer next time, ideally for an ack
> from a maintainer?
> 
> There is a potential problem with the major version bump of sip... it's a
> delicate package and known to have incompatibilities. Did you actually check
> if the in-tree reverse dependencies still build? Also, my plan was to add
> sip v5 and v6 as separate SLOTs...

Let's try coordinate a bit more. qt@ is short staffed and Andrew is generally pretty happy to help with things. Not volunteering him to join necessarily, but it's not easy to read minds either.

It's way easier to talk about things like this on IRC if you're able to in future. (Note that we're on Libera now -- email me to set up a cloak if you haven't already).

He's also brand new (joined within the last week or two) and I asked him to merge this urgently given the below. I'm sorry we didn't wait longer for feedback and I take the blame here. If he hadn't merged it when he did, I would've about an hour later when I had my keys.

But Andrew (and of course myself) have an interest in things working too, not just bumping because "new and shiny version".

From my perspective: an important package lacked Python 3.9 by the deadline (which had been warned about for some time on the mailing lists) and there was an available PR to merge which fixed that (which included changes to some of its dependencies) by someone who had tested it out.

Options were to wait and get a large number of duplicate bug reports from very frustrated users or merge with best-effort testing.

(In reply to Davide Pesavento from comment #5)
> (In reply to Andrew Ammerlaan from comment #3)
> > (In reply to Davide Pesavento from comment #2)
> > I was gonna wait, but Sam asked me to merge my PR asap given the urgency of
> > adding the new python_compat. 
> 
> Are you kidding me? Adding py3.10 support is *urgent* now? It just entered
> the beta phase... Moreover, I added py3.10 support to sip 4.x a couple of
> days ago.

The critical part is Python 3.9. The default changed yesterday and the PR added various changes for pyside2 and friends to add support for it. Users get extremely confusing error messages if prominent packages aren't prepared at the point of change.
Comment 11 Davide Pesavento (RETIRED) gentoo-dev 2021-06-02 16:58:52 UTC
(In reply to Andrew Ammerlaan from comment #8)
> > Moreover, I added py3.10 support to sip 4.x a couple of days ago.
> 
> Sorry, I was not aware of this, when I started working on this it was still
> stuck on python3.9.

Not really a valid excuse. Moreover, if all you wanted was to add py3.10, you could have added it to the existing versions, a major version bump was completely orthogonal and unnecessary.

> 
> > Please mask sip-5 ASAP.
> 
> I just checked all reverse dependencies, and added restrictions where
> necessary. Do you still want me to mask this?

No, I guess that's no longer necessary. Thanks for reacting quickly and checking the reverse deps.

(In reply to Andrew Ammerlaan from comment #9)
> And just for the record, I actually *did* check the ABI number of the new
> version beforehand, which is also 12, same as the 4.x.y series. Though it
> does indeed appear that some packages fail to build with the 5.x.y series
> regardless.

Yeah the problem with this bump is not the ABI but the fact that the sip build system (which is used by some packages depending on sip) was completely rewritten. Moreover, >=dev-python/sip-5 no longer installs an extension module, now each sip-based binding has to provide its own (private) module.

> I would have appreciated at least *some* comment about this when
> I asked on IRC, when I opened the PR, or when I opened this bug.

I don't think many people are familiar with sip. I would've commented if you gave me a bit more time :)
Comment 12 Davide Pesavento (RETIRED) gentoo-dev 2021-06-02 17:20:24 UTC
(In reply to Sam James from comment #10)
> (In reply to Davide Pesavento from comment #2)
> > Andrew, you went ahead and merged your changes just 10 hours after opening
> > this bug... how about you wait a little longer next time, ideally for an ack
> > from a maintainer?
> > 
> > There is a potential problem with the major version bump of sip... it's a
> > delicate package and known to have incompatibilities. Did you actually check
> > if the in-tree reverse dependencies still build? Also, my plan was to add
> > sip v5 and v6 as separate SLOTs...
> 
> Let's try coordinate a bit more.

Agreed. To be clear, I don't mind the help and I'm generally not very "overprotective" over the packages I maintain. In fact, I wasn't even complaining about the whole PR, e.g., the PyQt5 bump was totally fine and Andrew did a good job overall. All I'm saying is that pushing through a major version bump (sip) within hours of the bug being opened was totally unnecessary. [1] recommends between 2 and 4 weeks of waiting time (and really, 2 weeks are more than enough IMHO).

[1] https://devmanual.gentoo.org/general-concepts/package-maintainers/index.html

> He's also brand new (joined within the last week or two)
Welcome Andrew! Hope I didn't scare you ;) as I said, I do appreciate the help.

> From my perspective: an important package lacked Python 3.9 by the deadline
What package are you referring to? python3_9 was added to sip about a year ago
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67d4af257befd590ce8c2964c18beb4bb35065fd

> (In reply to Davide Pesavento from comment #5)
> > (In reply to Andrew Ammerlaan from comment #3)
> > > (In reply to Davide Pesavento from comment #2)
> > > I was gonna wait, but Sam asked me to merge my PR asap given the urgency of
> > > adding the new python_compat. 
> > 
> > Are you kidding me? Adding py3.10 support is *urgent* now? It just entered
> > the beta phase... Moreover, I added py3.10 support to sip 4.x a couple of
> > days ago.
> 
> The critical part is Python 3.9. The default changed yesterday and the PR
> added various changes for pyside2 and friends to add support for it. Users
> get extremely confusing error messages if prominent packages aren't prepared
> at the point of change.
Again, sip and PyQt5 have supported py3.9 since a year ago, so I'm confused by your comment. I don't know anything about pyside2 since I don't maintain it, but what does it have to do with a sip version bump? FYI, PyQt and pyside are two completely separate and independent set of bindings.
Comment 13 Nowa Ammerlaan gentoo-dev 2021-06-02 20:05:42 UTC
> Moreover, if all you wanted was to add py3.10, you could have added it to the existing versions, a major version bump was completely orthogonal and unnecessary.

Yes, that would have been possible. And in hindsight this was the better option in this case. Usually I try to combine adding python_targets with a version bump, because that saves a rebuild, though had I know about the fragility of sip I would of course not have done that here.

> Hope I didn't scare you ;) 

Not at all, your reply was completely understandable given the amount of mess sip-5 created, for which I am sorry. 

> What package are you referring to? python3_9 was added to sip about a year ago

dev-python/pyside2 and Bug 780375 which had been open for about 2 months with no reply. It was causing a mess since py3.9 became the default target (and it is still causing a bit of a mess that could have been noticed and fixed earlier if the PYTHON_COMPAT had been bumped earlier: Bug 793962 )

> I don't know anything about pyside2 since I don't maintain it, but what does it have to do with a sip version bump? FYI, PyQt and pyside are two completely separate and independent set of bindings.

The link linking this and dev-python/pyside2 is dev-python/QtPy which is the abstraction layer for PySide2 and PyQt5. Differences in PYTHON_TARGETS and other USE flags between the ebuild for PyQt5 and PySide2 are causing difficulties in maintaining QtPy: Bug 792861 ). So I bumped all the things in one PR to make my life a lot easier.