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

Bug#926685: marked as done (unblock: python3-lexicon/3.0.8-2)



Your message dated Tue, 9 Apr 2019 10:36:15 +0200
with message-id <20190409083613.uvinq575o2tquq5s@debian.org>
and subject line Re: unblock: python3-lexicon/3.0.8-2
has caused the Debian Bug report #926685,
regarding unblock: python3-lexicon/3.0.8-2
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
926685: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=926685
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Hello release team,

I was recently made aware of a bug in python3-lexicon that causes the
certbot dnsimple plugin to be completely broken.  I've spoken to the
upstreams of both certbot and lexicon, and we've worked out a plan
forward.

A single backported patch for python3-lexicon will fix the issue for
certbot and anything else that's using the DNSimple API.  The
functional change is a single line, though the patch is slightly
bigger to correct the tests as well.

Could I get it unblocked for migration into buster?  A debdiff is
attached.

Thanks!

unblock python3-lexicon/3.0.8-2

-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (900, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.19.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
diff -Nru lexicon-3.0.8/debian/changelog lexicon-3.0.8/debian/changelog
--- lexicon-3.0.8/debian/changelog	2019-01-06 09:24:20.000000000 -0500
+++ lexicon-3.0.8/debian/changelog	2019-04-08 18:07:45.000000000 -0400
@@ -1,3 +1,10 @@
+lexicon (3.0.8-2) unstable; urgency=high
+
+  * Team upload.
+  * Import dnsimple create fix from upstream (Closes: #926682)
+
+ -- Harlan Lieberman-Berg <hlieberman@debian.org>  Mon, 08 Apr 2019 18:07:45 -0400
+
 lexicon (3.0.8-1) unstable; urgency=medium
 
   [ Ana Custura ]
diff -Nru lexicon-3.0.8/debian/patches/0004-fix-dnsimple-creates.patch lexicon-3.0.8/debian/patches/0004-fix-dnsimple-creates.patch
--- lexicon-3.0.8/debian/patches/0004-fix-dnsimple-creates.patch	1969-12-31 19:00:00.000000000 -0500
+++ lexicon-3.0.8/debian/patches/0004-fix-dnsimple-creates.patch	2019-04-08 18:02:42.000000000 -0400
@@ -0,0 +1,143 @@
+From d0bf4939d49c63026411a306615b6fb13ed0cc22 Mon Sep 17 00:00:00 2001
+From: Adrien Ferrand <adferrand@users.noreply.github.com>
+Date: Wed, 3 Apr 2019 23:43:24 +0200
+Subject: [PATCH] Fix create record on dnsimple (#389)
+
+---
+ lexicon/providers/dnsimple.py                                 | 2 +-
+ ..._calling_delete_record_by_filter_should_remove_record.yaml | 2 +-
+ ..._record_by_filter_with_fqdn_name_should_remove_record.yaml | 2 +-
+ ..._record_by_filter_with_full_name_should_remove_record.yaml | 2 +-
+ ...ling_delete_record_by_identifier_should_remove_record.yaml | 2 +-
+ ...h_record_set_by_content_should_leave_others_untouched.yaml | 2 +-
+ ...calling_delete_record_with_record_set_name_remove_all.yaml | 4 ++--
+ ...ing_update_record_with_fqdn_name_should_modify_record.yaml | 2 +-
+ ...ing_update_record_with_full_name_should_modify_record.yaml | 2 +-
+ 9 files changed, 10 insertions(+), 10 deletions(-)
+
+Index: python-lexicon/lexicon/providers/dnsimple.py
+===================================================================
+--- python-lexicon.orig/lexicon/providers/dnsimple.py
++++ python-lexicon/lexicon/providers/dnsimple.py
+@@ -69,7 +69,7 @@ class Provider(BaseProvider):
+             record['regions'] = self._get_provider_option('regions')
+ 
+         payload = self._post(
+-            '{0}/zones/{1}/records'.format(self.account_id, self.domain), record)
++            '/{0}/zones/{1}/records'.format(self.account_id, self.domain), record)
+ 
+         LOGGER.debug('create_record: %s', 'id' in payload)
+         return 'id' in payload
+Index: python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_filter_should_remove_record.yaml
+===================================================================
+--- python-lexicon.orig/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_filter_should_remove_record.yaml
++++ python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_filter_should_remove_record.yaml
+@@ -112,7 +112,7 @@ interactions:
+       Content-Type: [application/json]
+       User-Agent: [python-requests/2.19.1]
+     method: POST
+-    uri: https://api.sandbox.dnsimple.com/v2731/zones/lexicontest.us/records
++    uri: https://api.sandbox.dnsimple.com/v2/731/zones/lexicontest.us/records
+   response:
+     body: {string: '{"data":{"id":502887,"zone_id":"lexicontest.us","parent_id":null,"name":"delete.testfilt","content":"challengetoken","ttl":3600,"priority":null,"type":"TXT","regions":["global"],"system_record":false,"created_at":"2018-07-09T05:38:19Z","updated_at":"2018-07-09T05:38:19Z"}}'}
+     headers:
+Index: python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_filter_with_fqdn_name_should_remove_record.yaml
+===================================================================
+--- python-lexicon.orig/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_filter_with_fqdn_name_should_remove_record.yaml
++++ python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_filter_with_fqdn_name_should_remove_record.yaml
+@@ -112,7 +112,7 @@ interactions:
+       Content-Type: [application/json]
+       User-Agent: [python-requests/2.19.1]
+     method: POST
+-    uri: https://api.sandbox.dnsimple.com/v2731/zones/lexicontest.us/records
++    uri: https://api.sandbox.dnsimple.com/v2/731/zones/lexicontest.us/records
+   response:
+     body: {string: '{"data":{"id":502888,"zone_id":"lexicontest.us","parent_id":null,"name":"delete.testfqdn","content":"challengetoken","ttl":3600,"priority":null,"type":"TXT","regions":["global"],"system_record":false,"created_at":"2018-07-09T05:38:24Z","updated_at":"2018-07-09T05:38:24Z"}}'}
+     headers:
+Index: python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_filter_with_full_name_should_remove_record.yaml
+===================================================================
+--- python-lexicon.orig/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_filter_with_full_name_should_remove_record.yaml
++++ python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_filter_with_full_name_should_remove_record.yaml
+@@ -112,7 +112,7 @@ interactions:
+       Content-Type: [application/json]
+       User-Agent: [python-requests/2.19.1]
+     method: POST
+-    uri: https://api.sandbox.dnsimple.com/v2731/zones/lexicontest.us/records
++    uri: https://api.sandbox.dnsimple.com/v2/731/zones/lexicontest.us/records
+   response:
+     body: {string: '{"data":{"id":502889,"zone_id":"lexicontest.us","parent_id":null,"name":"delete.testfull","content":"challengetoken","ttl":3600,"priority":null,"type":"TXT","regions":["global"],"system_record":false,"created_at":"2018-07-09T05:38:30Z","updated_at":"2018-07-09T05:38:30Z"}}'}
+     headers:
+Index: python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_identifier_should_remove_record.yaml
+===================================================================
+--- python-lexicon.orig/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_identifier_should_remove_record.yaml
++++ python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_by_identifier_should_remove_record.yaml
+@@ -112,7 +112,7 @@ interactions:
+       Content-Type: [application/json]
+       User-Agent: [python-requests/2.19.1]
+     method: POST
+-    uri: https://api.sandbox.dnsimple.com/v2731/zones/lexicontest.us/records
++    uri: https://api.sandbox.dnsimple.com/v2/731/zones/lexicontest.us/records
+   response:
+     body: {string: '{"data":{"id":502890,"zone_id":"lexicontest.us","parent_id":null,"name":"delete.testid","content":"challengetoken","ttl":3600,"priority":null,"type":"TXT","regions":["global"],"system_record":false,"created_at":"2018-07-09T05:38:35Z","updated_at":"2018-07-09T05:38:35Z"}}'}
+     headers:
+Index: python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_with_record_set_by_content_should_leave_others_untouched.yaml
+===================================================================
+--- python-lexicon.orig/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_with_record_set_by_content_should_leave_others_untouched.yaml
++++ python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_with_record_set_by_content_should_leave_others_untouched.yaml
+@@ -113,7 +113,7 @@ interactions:
+       Content-Type: [application/json]
+       User-Agent: [python-requests/2.19.1]
+     method: POST
+-    uri: https://api.sandbox.dnsimple.com/v2731/zones/lexicontest.us/records
++    uri: https://api.sandbox.dnsimple.com/v2/731/zones/lexicontest.us/records
+   response:
+     body: {string: '{"data":{"id":502891,"zone_id":"lexicontest.us","parent_id":null,"name":"_acme-challenge.deleterecordinset","content":"challengetoken1","ttl":3600,"priority":null,"type":"TXT","regions":["global"],"system_record":false,"created_at":"2018-07-09T05:38:40Z","updated_at":"2018-07-09T05:38:40Z"}}'}
+     headers:
+Index: python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_with_record_set_name_remove_all.yaml
+===================================================================
+--- python-lexicon.orig/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_with_record_set_name_remove_all.yaml
++++ python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_delete_record_with_record_set_name_remove_all.yaml
+@@ -112,7 +112,7 @@ interactions:
+       Content-Type: [application/json]
+       User-Agent: [python-requests/2.19.1]
+     method: POST
+-    uri: https://api.sandbox.dnsimple.com/v2731/zones/lexicontest.us/records
++    uri: https://api.sandbox.dnsimple.com/v2/731/zones/lexicontest.us/records
+   response:
+     body: {string: '{"data":{"id":502892,"zone_id":"lexicontest.us","parent_id":null,"name":"_acme-challenge.deleterecordset","content":"challengetoken1","ttl":3600,"priority":null,"type":"TXT","regions":["global"],"system_record":false,"created_at":"2018-07-09T05:38:46Z","updated_at":"2018-07-09T05:38:46Z"}}'}
+     headers:
+@@ -180,7 +180,7 @@ interactions:
+       Content-Type: [application/json]
+       User-Agent: [python-requests/2.19.1]
+     method: POST
+-    uri: https://api.sandbox.dnsimple.com/v2731/zones/lexicontest.us/records
++    uri: https://api.sandbox.dnsimple.com/v2/731/zones/lexicontest.us/records
+   response:
+     body: {string: '{"data":{"id":502893,"zone_id":"lexicontest.us","parent_id":null,"name":"_acme-challenge.deleterecordset","content":"challengetoken2","ttl":3600,"priority":null,"type":"TXT","regions":["global"],"system_record":false,"created_at":"2018-07-09T05:38:48Z","updated_at":"2018-07-09T05:38:48Z"}}'}
+     headers:
+Index: python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_update_record_with_fqdn_name_should_modify_record.yaml
+===================================================================
+--- python-lexicon.orig/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_update_record_with_fqdn_name_should_modify_record.yaml
++++ python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_update_record_with_fqdn_name_should_modify_record.yaml
+@@ -112,7 +112,7 @@ interactions:
+       Content-Type: [application/json]
+       User-Agent: [python-requests/2.19.1]
+     method: POST
+-    uri: https://api.sandbox.dnsimple.com/v2731/zones/lexicontest.us/records
++    uri: https://api.sandbox.dnsimple.com/v2/731/zones/lexicontest.us/records
+   response:
+     body: {string: '{"data":{"id":502895,"zone_id":"lexicontest.us","parent_id":null,"name":"orig.testfqdn","content":"challengetoken","ttl":3600,"priority":null,"type":"TXT","regions":["global"],"system_record":false,"created_at":"2018-07-09T05:46:57Z","updated_at":"2018-07-09T05:46:57Z"}}'}
+     headers:
+Index: python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_update_record_with_full_name_should_modify_record.yaml
+===================================================================
+--- python-lexicon.orig/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_update_record_with_full_name_should_modify_record.yaml
++++ python-lexicon/tests/fixtures/cassettes/dnsimple/IntegrationTests/test_Provider_when_calling_update_record_with_full_name_should_modify_record.yaml
+@@ -112,7 +112,7 @@ interactions:
+       Content-Type: [application/json]
+       User-Agent: [python-requests/2.19.1]
+     method: POST
+-    uri: https://api.sandbox.dnsimple.com/v2731/zones/lexicontest.us/records
++    uri: https://api.sandbox.dnsimple.com/v2/731/zones/lexicontest.us/records
+   response:
+     body: {string: '{"data":{"id":502896,"zone_id":"lexicontest.us","parent_id":null,"name":"orig.testfull","content":"challengetoken","ttl":3600,"priority":null,"type":"TXT","regions":["global"],"system_record":false,"created_at":"2018-07-09T05:47:01Z","updated_at":"2018-07-09T05:47:01Z"}}'}
+     headers:
diff -Nru lexicon-3.0.8/debian/patches/series lexicon-3.0.8/debian/patches/series
--- lexicon-3.0.8/debian/patches/series	2019-01-06 09:24:20.000000000 -0500
+++ lexicon-3.0.8/debian/patches/series	2019-04-08 18:02:36.000000000 -0400
@@ -1,3 +1,4 @@
 0001-disable-easyname.patch
 0002-disable-hetzner.patch
 0003-disable-localzone.patch
+0004-fix-dnsimple-creates.patch

--- End Message ---
--- Begin Message ---
Hi,

On Mon, Apr 08, 2019 at 06:20:10PM -0400, Harlan Lieberman-Berg wrote:
> Subject: unblock: python3-lexicon/3.0.8-2

Unblocked.

Thanks,

Ivo

--- End Message ---

Reply to: