[arch-commits] Commit in python-moto/repos/community-any (5 files)

Chih-Hsuan Yen yan12125 at archlinux.org
Sat Jan 9 06:59:17 UTC 2021


    Date: Saturday, January 9, 2021 @ 06:59:17
  Author: yan12125
Revision: 815049

archrelease: copy trunk to community-any

Added:
  python-moto/repos/community-any/PKGBUILD
    (from rev 815047, python-moto/trunk/PKGBUILD)
  python-moto/repos/community-any/python-moto-botocore-1.19.41.patch
    (from rev 815048, python-moto/trunk/python-moto-botocore-1.19.41.patch)
  python-moto/repos/community-any/sdist-no-pyc.diff
    (from rev 815048, python-moto/trunk/sdist-no-pyc.diff)
Deleted:
  python-moto/repos/community-any/PKGBUILD
  python-moto/repos/community-any/sdist-no-pyc.diff

------------------------------------+
 PKGBUILD                           |  167 ++++++++++++++++++-----------------
 python-moto-botocore-1.19.41.patch |  149 +++++++++++++++++++++++++++++++
 sdist-no-pyc.diff                  |   18 +--
 3 files changed, 244 insertions(+), 90 deletions(-)

Deleted: PKGBUILD
===================================================================
--- PKGBUILD	2021-01-09 06:59:08 UTC (rev 815048)
+++ PKGBUILD	2021-01-09 06:59:17 UTC (rev 815049)
@@ -1,81 +0,0 @@
-# Maintainer: Chih-Hsuan Yen <yan12125 at archlinux.org>
-# Contributor: Guillaume Horel <guillaume.horel at gmail.com>
-
-pkgname=python-moto
-_pkgname=moto
-pkgver=1.3.16
-pkgrel=4
-pkgdesc='Moto is a library to mock out the boto library.'
-arch=(any)
-url='https://github.com/spulec/moto'
-license=(Apache)
-depends=(python-aws-xray-sdk python-boto python-boto3
-         python-cryptography python-dateutil python-docker python-jinja
-         python-jsondiff python-jose python-mock python-yaml
-         python-pytz python-requests python-responses python-xmltodict
-         python-werkzeug python-cfn-lint python-setuptools python-sshpubkeys)
-checkdepends=(python-flask python-freezegun python-nose python-parameterized
-              python-sure tk)
-optdepends=(
-  'python-flask: for moto_server'
-)
-source=("https://files.pythonhosted.org/packages/source/m/moto/moto-${pkgver}.tar.gz"
-        "$pkgname-cfn-lint-0.39.patch::https://github.com/spulec/moto/commit/403b06d9c5d9fda4d9c51f44d5213cf584d7dc11.patch"
-        "$pkgname-boto3-1.14.59.patch::https://github.com/spulec/moto/commit/9f0f230d130a839fb2de6bfc97af4182360fbcdb.patch"
-        "$pkgname-responses-0.12.1.patch::https://github.com/spulec/moto/commit/7749c1f75781cd5fb2367b089c31a92e127b07b1.patch"
-        sdist-no-pyc.diff)
-sha256sums=('6c686b1f117563391957ce47c2106bc3868783d59d0e004d2446dce875bec07f'
-            'afb3a13ccfe1646403e5727c812e26ab88106c212b735d5ab9a55879fcb34e43'
-            'f902d1b01c12e8a1b8e87109a984ab1463b60b04e1dbdeaa94550276d2580a11'
-            'cca3d8749c07eac50a17cff7b6dffdb9aa8d5ce9ca974453a63516d35cb2025a'
-            '4193bd88380f6ab8dac49be37d940993dee4e31351ffd60c8167b7c8e5ec3208')
-
-prepare() {
-  cd $_pkgname-$pkgver
-
-  patch -Np1 -i ../sdist-no-pyc.diff
-
-  # https://github.com/spulec/moto/pull/3412
-  patch -Np1 -i ../$pkgname-cfn-lint-0.39.patch
-  # https://github.com/spulec/moto/pull/3308
-  patch -Np1 -i ../$pkgname-boto3-1.14.59.patch
-  # https://github.com/spulec/moto/pull/3466
-  patch -Np1 -i ../$pkgname-responses-0.12.1.patch
-
-  # Remove upper bounds of dependencies
-  sed --in-place=.orig -r 's#,?<[0-9.]+,?##;s#==([0-9.]+)#>=\1#' setup.py
-  diff -u setup.py{.orig,} || true
-}
-
-build() {
-  cd $_pkgname-$pkgver
-
-  python setup.py build
-}
-
-check() {
-  cd $_pkgname-$pkgver
-
-  # * test_lambda tests moto.awslambda, which requires a running docker.service
-  # * test_submit_job_by_name calls batch_client.submit_job, and the latter
-  #   creates a Job object, which requires docker
-  # * In test_create_stack_lambda_and_dynamodb, the CloudFormation template
-  #   contain AWS::Lambda resources and thus uses moto.awslambda
-  TZ=UTC nosetests -s ./tests/ \
-    --exclude='test_lambda' \
-    --exclude='test_list_jobs' \
-    --exclude='test_submit_job' \
-    --exclude='test_submit_job_by_name' \
-    --exclude='test_terminate_job' \
-    --exclude='test_create_stack_lambda_and_dynamodb' \
-    --exclude='test_delete_subscription_filter_errors' \
-    --exclude='test_put_subscription_filter_update' \
-    --exclude='test_put_subscription_filter_with_lambda'
-}
-
-package() {
-  cd $_pkgname-$pkgver
-
-  # use PYTHONHASHSEED=0 work around https://bugs.python.org/issue34722
-  PYTHONHASHSEED=0 python setup.py install --root="$pkgdir" --optimize=1 --skip-build
-}

Copied: python-moto/repos/community-any/PKGBUILD (from rev 815047, python-moto/trunk/PKGBUILD)
===================================================================
--- PKGBUILD	                        (rev 0)
+++ PKGBUILD	2021-01-09 06:59:17 UTC (rev 815049)
@@ -0,0 +1,86 @@
+# Maintainer: Chih-Hsuan Yen <yan12125 at archlinux.org>
+# Contributor: Guillaume Horel <guillaume.horel at gmail.com>
+
+pkgname=python-moto
+_pkgname=moto
+pkgver=1.3.16
+pkgrel=5
+pkgdesc='Moto is a library to mock out the boto library.'
+arch=(any)
+url='https://github.com/spulec/moto'
+license=(Apache)
+depends=(python-aws-xray-sdk python-boto python-boto3
+         python-cryptography python-dateutil python-docker python-jinja
+         python-jsondiff python-jose python-mock python-yaml
+         python-pytz python-requests python-responses python-xmltodict
+         python-werkzeug python-cfn-lint python-setuptools python-sshpubkeys)
+checkdepends=(python-flask python-freezegun python-nose python-parameterized
+              python-sure tk)
+optdepends=(
+  'python-flask: for moto_server'
+)
+source=("https://files.pythonhosted.org/packages/source/m/moto/moto-${pkgver}.tar.gz"
+        "$pkgname-cfn-lint-0.39.patch::https://github.com/spulec/moto/commit/403b06d9c5d9fda4d9c51f44d5213cf584d7dc11.patch"
+        "$pkgname-boto3-1.14.59.patch::https://github.com/spulec/moto/commit/9f0f230d130a839fb2de6bfc97af4182360fbcdb.patch"
+        "$pkgname-responses-0.12.1.patch::https://github.com/spulec/moto/commit/7749c1f75781cd5fb2367b089c31a92e127b07b1.patch"
+        # Rebased from https://github.com/spulec/moto/commit/9ecea2012a19cf929f03271dddf5ce3e17943f48
+        "$pkgname-botocore-1.19.41.patch"
+        sdist-no-pyc.diff)
+sha256sums=('6c686b1f117563391957ce47c2106bc3868783d59d0e004d2446dce875bec07f'
+            'afb3a13ccfe1646403e5727c812e26ab88106c212b735d5ab9a55879fcb34e43'
+            'f902d1b01c12e8a1b8e87109a984ab1463b60b04e1dbdeaa94550276d2580a11'
+            'cca3d8749c07eac50a17cff7b6dffdb9aa8d5ce9ca974453a63516d35cb2025a'
+            'af4505592277c795d2abdf8418c528c7ef3669282077654954307c9d1ab321ad'
+            '4193bd88380f6ab8dac49be37d940993dee4e31351ffd60c8167b7c8e5ec3208')
+
+prepare() {
+  cd $_pkgname-$pkgver
+
+  patch -Np1 -i ../sdist-no-pyc.diff
+
+  # https://github.com/spulec/moto/pull/3412
+  patch -Np1 -i ../$pkgname-cfn-lint-0.39.patch
+  # https://github.com/spulec/moto/pull/3308
+  patch -Np1 -i ../$pkgname-boto3-1.14.59.patch
+  # https://github.com/spulec/moto/pull/3466
+  patch -Np1 -i ../$pkgname-responses-0.12.1.patch
+  # https://github.com/spulec/moto/pull/3575
+  patch -Np1 -i ../$pkgname-botocore-1.19.41.patch
+
+  # Remove upper bounds of dependencies
+  sed --in-place=.orig -r 's#,?<[0-9.]+,?##;s#==([0-9.]+)#>=\1#' setup.py
+  diff -u setup.py{.orig,} || true
+}
+
+build() {
+  cd $_pkgname-$pkgver
+
+  python setup.py build
+}
+
+check() {
+  cd $_pkgname-$pkgver
+
+  # * test_lambda tests moto.awslambda, which requires a running docker.service
+  # * test_submit_job_by_name calls batch_client.submit_job, and the latter
+  #   creates a Job object, which requires docker
+  # * In test_create_stack_lambda_and_dynamodb, the CloudFormation template
+  #   contain AWS::Lambda resources and thus uses moto.awslambda
+  TZ=UTC nosetests -s ./tests/ \
+    --exclude='test_lambda' \
+    --exclude='test_list_jobs' \
+    --exclude='test_submit_job' \
+    --exclude='test_submit_job_by_name' \
+    --exclude='test_terminate_job' \
+    --exclude='test_create_stack_lambda_and_dynamodb' \
+    --exclude='test_delete_subscription_filter_errors' \
+    --exclude='test_put_subscription_filter_update' \
+    --exclude='test_put_subscription_filter_with_lambda'
+}
+
+package() {
+  cd $_pkgname-$pkgver
+
+  # use PYTHONHASHSEED=0 work around https://bugs.python.org/issue34722
+  PYTHONHASHSEED=0 python setup.py install --root="$pkgdir" --optimize=1 --skip-build
+}

Copied: python-moto/repos/community-any/python-moto-botocore-1.19.41.patch (from rev 815048, python-moto/trunk/python-moto-botocore-1.19.41.patch)
===================================================================
--- python-moto-botocore-1.19.41.patch	                        (rev 0)
+++ python-moto-botocore-1.19.41.patch	2021-01-09 06:59:17 UTC (rev 815049)
@@ -0,0 +1,149 @@
+From 9ecea2012a19cf929f03271dddf5ce3e17943f48 Mon Sep 17 00:00:00 2001
+From: Bert Blommers <bblommers at users.noreply.github.com>
+Date: Thu, 7 Jan 2021 03:18:50 -0800
+Subject: [PATCH] Fix Blockchain to work with new API (#3575)
+
+* Fix Blockchain to work with new API
+
+* Improve Lambda->SQS error handling
+---
+ moto/managedblockchain/responses.py |  8 ++++----
+ moto/managedblockchain/urls.py      |  3 +++
+ moto/managedblockchain/utils.py     | 14 ++++++++++++--
+ moto/sqs/models.py                  |  6 ++----
+ requirements-dev.txt                |  2 +-
+ setup.py                            |  2 +-
+ 6 files changed, 23 insertions(+), 12 deletions(-)
+
+diff --git a/moto/managedblockchain/responses.py b/moto/managedblockchain/responses.py
+index 7dd628eba..55252925d 100644
+--- a/moto/managedblockchain/responses.py
++++ b/moto/managedblockchain/responses.py
+@@ -10,7 +10,7 @@
+     networkid_from_managedblockchain_url,
+     proposalid_from_managedblockchain_url,
+     invitationid_from_managedblockchain_url,
+-    memberid_from_managedblockchain_url,
++    memberid_from_managedblockchain_request,
+     nodeid_from_managedblockchain_url,
+ )
+ 
+@@ -297,7 +297,7 @@ def _memberid_response(self, request, full_url, headers):
+         else:
+             body = request.data
+         network_id = networkid_from_managedblockchain_url(full_url)
+-        member_id = memberid_from_managedblockchain_url(full_url)
++        member_id = memberid_from_managedblockchain_request(full_url, body)
+         if method == "GET":
+             return self._memberid_response_get(network_id, member_id, headers)
+         elif method == "PATCH":
+@@ -343,7 +343,7 @@ def _node_response(self, request, full_url, headers):
+         parsed_url = urlparse(full_url)
+         querystring = parse_qs(parsed_url.query, keep_blank_values=True)
+         network_id = networkid_from_managedblockchain_url(full_url)
+-        member_id = memberid_from_managedblockchain_url(full_url)
++        member_id = memberid_from_managedblockchain_request(full_url, body)
+         if method == "GET":
+             status = None
+             if "status" in querystring:
+@@ -394,7 +394,7 @@ def _nodeid_response(self, request, full_url, headers):
+         else:
+             body = request.data
+         network_id = networkid_from_managedblockchain_url(full_url)
+-        member_id = memberid_from_managedblockchain_url(full_url)
++        member_id = memberid_from_managedblockchain_request(full_url, body)
+         node_id = nodeid_from_managedblockchain_url(full_url)
+         if method == "GET":
+             return self._nodeid_response_get(network_id, member_id, node_id, headers)
+diff --git a/moto/managedblockchain/urls.py b/moto/managedblockchain/urls.py
+index 442a73233..9bc2491f5 100644
+--- a/moto/managedblockchain/urls.py
++++ b/moto/managedblockchain/urls.py
+@@ -16,4 +16,7 @@
+     "{0}/networks/(?P<networkid>[^/.]+)/members/(?P<memberid>[^/.]+)/nodes$": ManagedBlockchainResponse.node_response,
+     "{0}/networks/(?P<networkid>[^/.]+)/members/(?P<memberid>[^/.]+)/nodes?(?P<querys>[^/.]+)$": ManagedBlockchainResponse.node_response,
+     "{0}/networks/(?P<networkid>[^/.]+)/members/(?P<memberid>[^/.]+)/nodes/(?P<nodeid>[^/.]+)$": ManagedBlockchainResponse.nodeid_response,
++    # >= botocore 1.19.41 (API change - memberId is now part of query-string or body)
++    "{0}/networks/(?P<networkid>[^/.]+)/nodes$": ManagedBlockchainResponse.node_response,
++    "{0}/networks/(?P<networkid>[^/.]+)/nodes/(?P<nodeid>[^/.]+)$": ManagedBlockchainResponse.nodeid_response,
+ }
+diff --git a/moto/managedblockchain/utils.py b/moto/managedblockchain/utils.py
+index d0485829b..84d5137a8 100644
+--- a/moto/managedblockchain/utils.py
++++ b/moto/managedblockchain/utils.py
+@@ -1,8 +1,9 @@
++import json
+ import random
+ import re
+ import string
+ 
+-from six.moves.urllib.parse import urlparse
++from six.moves.urllib.parse import parse_qs, urlparse
+ 
+ 
+ def region_from_managedblckchain_url(url):
+@@ -27,11 +28,20 @@ def get_network_id():
+     )
+ 
+ 
+-def memberid_from_managedblockchain_url(full_url):
++def memberid_from_managedblockchain_request(full_url, body):
+     id_search = re.search("\/m-[A-Z0-9]{26}", full_url, re.IGNORECASE)
+     return_id = None
+     if id_search:
+         return_id = id_search.group(0).replace("/", "")
++    else:
++        # >= botocore 1.19.41 can add the memberId as a query parameter, or in the body
++        parsed_url = urlparse(full_url)
++        qs = parse_qs(parsed_url.query)
++        if "memberId" in qs:
++            return_id = qs.get("memberId")[0]
++        elif body:
++            body = json.loads(body)
++            return_id = body["MemberId"]
+     return return_id
+ 
+ 
+diff --git a/moto/sqs/models.py b/moto/sqs/models.py
+index 421a1e5c7..a493c9428 100644
+--- a/moto/sqs/models.py
++++ b/moto/sqs/models.py
+@@ -518,10 +518,8 @@ def add_message(self, message):
+             if result:
+                 [backend.delete_message(self.name, m.receipt_handle) for m in messages]
+             else:
+-                [
+-                    backend.change_message_visibility(self.name, m.receipt_handle, 0)
+-                    for m in messages
+-                ]
++                # Make messages visible again
++                [m.change_visibility(visibility_timeout=0) for m in messages]
+ 
+     def get_cfn_attribute(self, attribute_name):
+         from moto.cloudformation.exceptions import UnformattedGetAttTemplateException
+diff --git a/requirements-dev.txt b/requirements-dev.txt
+index 692a1cbf3..2df056d85 100644
+--- a/requirements-dev.txt
++++ b/requirements-dev.txt
+@@ -21,7 +21,7 @@ beautifulsoup4==4.6.0
+ # The below pins mirror the Python version-conditional pins in setup.py
+ #
+ Jinja2>=2.10.1; python_version >= '3.6'
+-mock; python_version >= '3.6'
++mock<=4.0.2; python_version >= '3.6'
+ more-itertools; python_version >= '3.6'
+ setuptools; python_version >= '3.6'
+ sshpubkeys>=3.1.0; python_version >= '3.6'
+diff --git a/setup.py b/setup.py
+index 913565eb4..0aab0bcff 100755
+--- a/setup.py
++++ b/setup.py
+@@ -70,7 +70,7 @@ def get_version():
+ else:
+     install_requires += [
+         "Jinja2>=2.10.1",
+-        "mock",
++        "mock<=4.0.2",
+         "more-itertools",
+         "setuptools",
+         "zipp",

Deleted: sdist-no-pyc.diff
===================================================================
--- sdist-no-pyc.diff	2021-01-09 06:59:08 UTC (rev 815048)
+++ sdist-no-pyc.diff	2021-01-09 06:59:17 UTC (rev 815049)
@@ -1,9 +0,0 @@
-diff --git a/MANIFEST.in b/MANIFEST.in
-index 51d1b223..30ca14c0 100644
---- a/MANIFEST.in
-+++ b/MANIFEST.in
-@@ -6,3 +6,4 @@ include moto/cognitoidp/resources/*.json
- include moto/dynamodb2/parsing/reserved_keywords.txt
- recursive-include moto/templates *
- recursive-include tests *
-+global-exclude *.py[cod]

Copied: python-moto/repos/community-any/sdist-no-pyc.diff (from rev 815048, python-moto/trunk/sdist-no-pyc.diff)
===================================================================
--- sdist-no-pyc.diff	                        (rev 0)
+++ sdist-no-pyc.diff	2021-01-09 06:59:17 UTC (rev 815049)
@@ -0,0 +1,9 @@
+diff --git a/MANIFEST.in b/MANIFEST.in
+index 51d1b223..30ca14c0 100644
+--- a/MANIFEST.in
++++ b/MANIFEST.in
+@@ -6,3 +6,4 @@ include moto/cognitoidp/resources/*.json
+ include moto/dynamodb2/parsing/reserved_keywords.txt
+ recursive-include moto/templates *
+ recursive-include tests *
++global-exclude *.py[cod]



More information about the arch-commits mailing list