Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 611590 - dev-python/dnspython-1.16.0: stablereq (was: support dev-python/pycryptodome)
Summary: dev-python/dnspython-1.16.0: stablereq (was: support dev-python/pycryptodome)
Status: IN_PROGRESS
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Stabilization (show other bugs)
Hardware: All Linux
: Normal normal with 1 vote (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on: 673166
Blocks: pycryptodome-tracker
  Show dependency tree
 
Reported: 2017-03-03 23:15 UTC by Michał Górny
Modified: 2019-08-09 04:40 UTC (History)
11 users (show)

See Also:
Package list:
dev-python/dnspython-1.16.0
Runtime testing required: No
stable-bot: sanity-check+


Attachments
ebuild updated for cryptodome. (dnspython-1.15.0-r2.ebuild,934 bytes, text/plain)
2017-12-21 19:07 UTC, Daniel Robbins
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-03-03 23:15:37 UTC
See tracker.
Comment 1 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-03-26 15:43:03 UTC
  File "/tmp/portage/dev-python/dnspython-1.15.0/work/dnspython-1.15.0-python2_7/dns/dnssec.py", line 371, in _validate_rrsig
    if pubkey.verify(digest, sig):
  File "/usr/lib64/python2.7/site-packages/Crypto/PublicKey/DSA.py", line 385, in verify
    raise NotImplementedError("Use module Crypto.Signature.DSS instead")
NotImplementedError: Use module Crypto.Signature.DSS instead

etc.

-- i.e. this one needs porting to non-deprecated APIs.
Comment 2 Daniel Robbins 2017-12-21 18:54:10 UTC
I've gone ahead and submitted a pull request upstream to add cryptodome support. This can be incorporated into the dnspython ebuild to migrate away from pycrypto. See: https://github.com/rthalley/dnspython/pull/290
Comment 3 Daniel Robbins 2017-12-21 19:07:36 UTC
Created attachment 511418 [details]
ebuild updated for cryptodome.
Comment 4 Anton Bolshakov 2018-01-16 02:22:10 UTC
dnspython is the only package in my system which holds the migration to pycryptodome so I would really appreciate some progress here.

Python team: can you push this unofficial (https://github.com/rthalley/dnspython/pull/290.patch) patch and mask the ebuild perhaps?

P.S. Thank you Daniel! I'm testing it locally for now
Comment 5 Zhixu Liu 2018-07-13 17:16:57 UTC
(In reply to Anton Bolshakov from comment #4)
> dnspython is the only package in my system which holds the migration to
> pycryptodome so I would really appreciate some progress here.

The same case for me.

Following is the patch I used for dnspython-1.15.0-r1.ebuild:

--- a/dnspython-1.15.0-r1.ebuild  2018-04-27 03:39:30.000000000 +0800
+++ b/dnspython-1.15.0-r1.ebuild  2018-07-14 01:10:00.467357512 +0800
@@ -16,7 +16,8 @@ SLOT="0"
 KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-solaris"
 IUSE="examples test"

-RDEPEND="dev-python/pycrypto[${PYTHON_USEDEP}]
+RDEPEND="( || ( dev-python/pycrypto[${PYTHON_USEDEP}]
+                dev-python/pycryptodome[${PYTHON_USEDEP}] ) )
        !dev-python/dnspython:py2
        !dev-python/dnspython:py3"
 DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
Comment 6 Marc Schiffbauer gentoo-dev 2018-07-16 13:30:31 UTC
Same here.

@Zhixu Liu: you patch make emerge work in normal cases. but if oyu enable FEATURES=test you will notice that dnspython is broken then.

We really need the mentioned patch for dnspython.
Comment 7 Zhixu Liu 2018-07-18 10:35:19 UTC
(In reply to Marc Schiffbauer from comment #6)
> Same here.
> 
> @Zhixu Liu: you patch make emerge work in normal cases. but if oyu enable
> FEATURES=test you will notice that dnspython is broken then.
> 
> We really need the mentioned patch for dnspython.

Yes, I didn't use dnssec yet, so didn't find the problem. It seems we need to push upstream accept the merge request first.

The other dns module is pydns, but it didn't support CHAOS class query yet, so we can't simply move to pydns.
Comment 8 Ian Whyman (thev00d00) gentoo-dev 2018-08-03 20:15:58 UTC
This has been merged upstream now[1].

Can we get this into the tree ASAP?

1.https://github.com/rthalley/dnspython/pull/319/files
Comment 9 Anton Bolshakov 2018-08-03 23:40:43 UTC
(In reply to Ian Whyman (thev00d00) from comment #8)
> This has been merged upstream now[1].
> 
> Can we get this into the tree ASAP?
> 
> 1.https://github.com/rthalley/dnspython/pull/319/files

the current release is too far behind of this commit.
It may be easier to push the latest snapshot instead

https://github.com/pentoo/pentoo-overlay/tree/master/dev-python/dnspython
Comment 10 Zac Medico gentoo-dev 2019-04-11 01:42:28 UTC
The bug has been referenced in the following commit(s):

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

commit 3acbd46386aa68f85dfe8d50667680703a5703eb
Author:     Manuel Rüger <mrueg@gentoo.org>
AuthorDate: 2018-08-05 13:05:34 +0200
Commit:     Manuel Rüger <mrueg@gentoo.org>
CommitDate: 2018-08-05 13:05:34 +0200

    dev-python/dnspython: Snapshot that supports pycryptodome
    
    Package-Manager: Portage-2.3.43, Repoman-2.3.10

 dev-python/dnspython/Manifest                      |  1 +
 .../dnspython/dnspython-1.16.0_pre20180731.ebuild  | 43 ++++++++++++++++++++++
 2 files changed, 44 insertions(+)
Comment 11 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-07-30 05:33:34 UTC
Let's reuse this to stabilize the new version.
Comment 12 Agostino Sarubbo gentoo-dev 2019-07-31 10:54:16 UTC
ppc stable
Comment 13 Agostino Sarubbo gentoo-dev 2019-07-31 10:56:05 UTC
ppc64 stable
Comment 14 Agostino Sarubbo gentoo-dev 2019-07-31 10:59:55 UTC
amd64 stable
Comment 15 Agostino Sarubbo gentoo-dev 2019-07-31 11:05:36 UTC
x86 stable
Comment 16 Agostino Sarubbo gentoo-dev 2019-07-31 12:10:09 UTC
alpha stable
Comment 17 Agostino Sarubbo gentoo-dev 2019-07-31 13:11:29 UTC
sparc stable
Comment 18 Agostino Sarubbo gentoo-dev 2019-07-31 13:13:29 UTC
ia64 stable
Comment 19 Markus Meier gentoo-dev 2019-08-09 04:38:50 UTC
arm stable