Merge pull request #2947 from Netflix/qcc_q2_2020
Updated Python requirements and non-breaking node packages.
This commit is contained in:
commit
5122e0e375
|
@ -1,11 +1,10 @@
|
||||||
import unittest
|
import unittest
|
||||||
|
from unittest.mock import patch, Mock
|
||||||
|
|
||||||
from cryptography.x509 import DNSName
|
from cryptography.x509 import DNSName
|
||||||
from requests.models import Response
|
|
||||||
|
|
||||||
from mock import MagicMock, Mock, patch
|
|
||||||
|
|
||||||
from lemur.plugins.lemur_acme import plugin, ultradns
|
from lemur.plugins.lemur_acme import plugin, ultradns
|
||||||
|
from mock import MagicMock
|
||||||
|
from requests.models import Response
|
||||||
|
|
||||||
|
|
||||||
class TestAcme(unittest.TestCase):
|
class TestAcme(unittest.TestCase):
|
||||||
|
@ -57,7 +56,7 @@ class TestAcme(unittest.TestCase):
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.len", return_value=1)
|
@patch("lemur.plugins.lemur_acme.plugin.len", return_value=1)
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.get_dns_challenges")
|
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.get_dns_challenges")
|
||||||
def test_start_dns_challenge(
|
def test_start_dns_challenge(
|
||||||
self, mock_get_dns_challenges, mock_len, mock_app, mock_acme
|
self, mock_get_dns_challenges, mock_len, mock_app, mock_acme
|
||||||
):
|
):
|
||||||
assert mock_len
|
assert mock_len
|
||||||
mock_order = Mock()
|
mock_order = Mock()
|
||||||
|
@ -88,7 +87,7 @@ class TestAcme(unittest.TestCase):
|
||||||
@patch("lemur.plugins.lemur_acme.cloudflare.wait_for_dns_change")
|
@patch("lemur.plugins.lemur_acme.cloudflare.wait_for_dns_change")
|
||||||
@patch("time.sleep")
|
@patch("time.sleep")
|
||||||
def test_complete_dns_challenge_success(
|
def test_complete_dns_challenge_success(
|
||||||
self, mock_sleep, mock_wait_for_dns_change, mock_current_app, mock_acme
|
self, mock_sleep, mock_wait_for_dns_change, mock_current_app, mock_acme
|
||||||
):
|
):
|
||||||
mock_dns_provider = Mock()
|
mock_dns_provider = Mock()
|
||||||
mock_dns_provider.wait_for_dns_change = Mock(return_value=True)
|
mock_dns_provider.wait_for_dns_change = Mock(return_value=True)
|
||||||
|
@ -112,7 +111,7 @@ class TestAcme(unittest.TestCase):
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.current_app")
|
@patch("lemur.plugins.lemur_acme.plugin.current_app")
|
||||||
@patch("lemur.plugins.lemur_acme.cloudflare.wait_for_dns_change")
|
@patch("lemur.plugins.lemur_acme.cloudflare.wait_for_dns_change")
|
||||||
def test_complete_dns_challenge_fail(
|
def test_complete_dns_challenge_fail(
|
||||||
self, mock_wait_for_dns_change, mock_current_app, mock_acme
|
self, mock_wait_for_dns_change, mock_current_app, mock_acme
|
||||||
):
|
):
|
||||||
mock_dns_provider = Mock()
|
mock_dns_provider = Mock()
|
||||||
mock_dns_provider.wait_for_dns_change = Mock(return_value=True)
|
mock_dns_provider.wait_for_dns_change = Mock(return_value=True)
|
||||||
|
@ -140,12 +139,12 @@ class TestAcme(unittest.TestCase):
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.get_dns_challenges")
|
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.get_dns_challenges")
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.current_app")
|
@patch("lemur.plugins.lemur_acme.plugin.current_app")
|
||||||
def test_request_certificate(
|
def test_request_certificate(
|
||||||
self,
|
self,
|
||||||
mock_current_app,
|
mock_current_app,
|
||||||
mock_get_dns_challenges,
|
mock_get_dns_challenges,
|
||||||
mock_jose,
|
mock_jose,
|
||||||
mock_crypto,
|
mock_crypto,
|
||||||
mock_acme,
|
mock_acme,
|
||||||
):
|
):
|
||||||
mock_cert_response = Mock()
|
mock_cert_response = Mock()
|
||||||
mock_cert_response.body = "123"
|
mock_cert_response.body = "123"
|
||||||
|
@ -182,7 +181,7 @@ class TestAcme(unittest.TestCase):
|
||||||
assert result_client
|
assert result_client
|
||||||
assert result_registration
|
assert result_registration
|
||||||
|
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.current_app")
|
@patch('lemur.plugins.lemur_acme.plugin.current_app')
|
||||||
def test_get_domains_single(self, mock_current_app):
|
def test_get_domains_single(self, mock_current_app):
|
||||||
options = {"common_name": "test.netflix.net"}
|
options = {"common_name": "test.netflix.net"}
|
||||||
result = self.acme.get_domains(options)
|
result = self.acme.get_domains(options)
|
||||||
|
@ -288,14 +287,14 @@ class TestAcme(unittest.TestCase):
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.finalize_authorizations")
|
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.finalize_authorizations")
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.request_certificate")
|
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.request_certificate")
|
||||||
def test_get_ordered_certificate(
|
def test_get_ordered_certificate(
|
||||||
self,
|
self,
|
||||||
mock_request_certificate,
|
mock_request_certificate,
|
||||||
mock_finalize_authorizations,
|
mock_finalize_authorizations,
|
||||||
mock_get_authorizations,
|
mock_get_authorizations,
|
||||||
mock_dns_provider_service,
|
mock_dns_provider_service,
|
||||||
mock_authorization_service,
|
mock_authorization_service,
|
||||||
mock_current_app,
|
mock_current_app,
|
||||||
mock_acme,
|
mock_acme,
|
||||||
):
|
):
|
||||||
mock_client = Mock()
|
mock_client = Mock()
|
||||||
mock_acme.return_value = (mock_client, "")
|
mock_acme.return_value = (mock_client, "")
|
||||||
|
@ -319,14 +318,14 @@ class TestAcme(unittest.TestCase):
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.finalize_authorizations")
|
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.finalize_authorizations")
|
||||||
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.request_certificate")
|
@patch("lemur.plugins.lemur_acme.plugin.AcmeHandler.request_certificate")
|
||||||
def test_get_ordered_certificates(
|
def test_get_ordered_certificates(
|
||||||
self,
|
self,
|
||||||
mock_request_certificate,
|
mock_request_certificate,
|
||||||
mock_finalize_authorizations,
|
mock_finalize_authorizations,
|
||||||
mock_get_authorizations,
|
mock_get_authorizations,
|
||||||
mock_dns_provider_service,
|
mock_dns_provider_service,
|
||||||
mock_authorization_service,
|
mock_authorization_service,
|
||||||
mock_current_app,
|
mock_current_app,
|
||||||
mock_acme,
|
mock_acme,
|
||||||
):
|
):
|
||||||
mock_client = Mock()
|
mock_client = Mock()
|
||||||
mock_acme.return_value = (mock_client, "")
|
mock_acme.return_value = (mock_client, "")
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import unittest
|
import unittest
|
||||||
from mock import Mock, patch
|
from unittest.mock import patch, Mock
|
||||||
from lemur.plugins.lemur_acme import plugin, powerdns
|
from lemur.plugins.lemur_acme import plugin, powerdns
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import json
|
import json
|
||||||
|
from unittest.mock import patch, Mock
|
||||||
|
|
||||||
import arrow
|
import arrow
|
||||||
import pytest
|
import pytest
|
||||||
|
@ -6,7 +7,6 @@ from cryptography import x509
|
||||||
from freezegun import freeze_time
|
from freezegun import freeze_time
|
||||||
from lemur.plugins.lemur_digicert import plugin
|
from lemur.plugins.lemur_digicert import plugin
|
||||||
from lemur.tests.vectors import CSR_STR
|
from lemur.tests.vectors import CSR_STR
|
||||||
from mock import Mock, patch
|
|
||||||
|
|
||||||
|
|
||||||
def config_mock(*args):
|
def config_mock(*args):
|
||||||
|
|
|
@ -9,7 +9,8 @@ from cryptography import x509
|
||||||
from cryptography.hazmat.backends import default_backend
|
from cryptography.hazmat.backends import default_backend
|
||||||
from marshmallow import ValidationError
|
from marshmallow import ValidationError
|
||||||
from freezegun import freeze_time
|
from freezegun import freeze_time
|
||||||
from mock import patch
|
# from mock import patch
|
||||||
|
from unittest.mock import patch
|
||||||
|
|
||||||
from lemur.certificates.service import create_csr
|
from lemur.certificates.service import create_csr
|
||||||
from lemur.certificates.views import * # noqa
|
from lemur.certificates.views import * # noqa
|
||||||
|
@ -906,12 +907,12 @@ def test_certificate_get_body(client):
|
||||||
assert response_body["serial"] == "211983098819107449768450703123665283596"
|
assert response_body["serial"] == "211983098819107449768450703123665283596"
|
||||||
assert response_body["serialHex"] == "9F7A75B39DAE4C3F9524C68B06DA6A0C"
|
assert response_body["serialHex"] == "9F7A75B39DAE4C3F9524C68B06DA6A0C"
|
||||||
assert response_body["distinguishedName"] == (
|
assert response_body["distinguishedName"] == (
|
||||||
"CN=LemurTrust Unittests Class 1 CA 2018,"
|
"L=Earth,"
|
||||||
"O=LemurTrust Enterprises Ltd,"
|
|
||||||
"OU=Unittesting Operations Center,"
|
|
||||||
"C=EE,"
|
|
||||||
"ST=N/A,"
|
"ST=N/A,"
|
||||||
"L=Earth"
|
"C=EE,"
|
||||||
|
"OU=Unittesting Operations Center,"
|
||||||
|
"O=LemurTrust Enterprises Ltd,"
|
||||||
|
"CN=LemurTrust Unittests Class 1 CA 2018"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,7 @@
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"gulp": "^3.9.1",
|
"gulp": "^3.9.1",
|
||||||
"jshint": "^2.8.0",
|
"jshint": "^2.11.0",
|
||||||
"karma-chrome-launcher": "^2.0.0"
|
"karma-chrome-launcher": "^2.0.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,40 +4,44 @@
|
||||||
#
|
#
|
||||||
# pip-compile --no-index --output-file=requirements-dev.txt requirements-dev.in
|
# pip-compile --no-index --output-file=requirements-dev.txt requirements-dev.in
|
||||||
#
|
#
|
||||||
aspy.yaml==1.3.0 # via pre-commit
|
appdirs==1.4.3 # via virtualenv
|
||||||
bleach==3.1.4 # via readme-renderer
|
bleach==3.1.4 # via readme-renderer
|
||||||
certifi==2019.11.28 # via requests
|
certifi==2020.4.5.1 # via requests
|
||||||
cffi==1.14.0 # via cryptography
|
cffi==1.14.0 # via cryptography
|
||||||
cfgv==2.0.1 # via pre-commit
|
cfgv==3.1.0 # via pre-commit
|
||||||
chardet==3.0.4 # via requests
|
chardet==3.0.4 # via requests
|
||||||
cryptography==2.8 # via secretstorage
|
cryptography==2.9 # via secretstorage
|
||||||
docutils==0.15.2 # via readme-renderer
|
distlib==0.3.0 # via virtualenv
|
||||||
|
docutils==0.16 # via readme-renderer
|
||||||
|
filelock==3.0.12 # via virtualenv
|
||||||
flake8==3.5.0 # via -r requirements-dev.in
|
flake8==3.5.0 # via -r requirements-dev.in
|
||||||
identify==1.4.9 # via pre-commit
|
identify==1.4.14 # via pre-commit
|
||||||
idna==2.8 # via requests
|
idna==2.9 # via requests
|
||||||
invoke==1.3.0 # via -r requirements-dev.in
|
importlib-metadata==1.6.0 # via keyring, pre-commit, twine, virtualenv
|
||||||
jeepney==0.4.2 # via secretstorage
|
invoke==1.4.1 # via -r requirements-dev.in
|
||||||
keyring==21.0.0 # via twine
|
jeepney==0.4.3 # via keyring, secretstorage
|
||||||
|
keyring==21.2.0 # via twine
|
||||||
mccabe==0.6.1 # via flake8
|
mccabe==0.6.1 # via flake8
|
||||||
nodeenv==1.3.3 # via -r requirements-dev.in, pre-commit
|
nodeenv==1.3.5 # via -r requirements-dev.in, pre-commit
|
||||||
pkginfo==1.5.0.1 # via twine
|
pkginfo==1.5.0.1 # via twine
|
||||||
pre-commit==1.21.0 # via -r requirements-dev.in
|
pre-commit==2.2.0 # via -r requirements-dev.in
|
||||||
pycodestyle==2.3.1 # via flake8
|
pycodestyle==2.3.1 # via flake8
|
||||||
pycparser==2.19 # via cffi
|
pycparser==2.20 # via cffi
|
||||||
pyflakes==1.6.0 # via flake8
|
pyflakes==1.6.0 # via flake8
|
||||||
pygments==2.5.2 # via readme-renderer
|
pygments==2.6.1 # via readme-renderer
|
||||||
pyyaml==5.2 # via -r requirements-dev.in, aspy.yaml, pre-commit
|
pyyaml==5.3.1 # via -r requirements-dev.in, pre-commit
|
||||||
readme-renderer==24.0 # via twine
|
readme-renderer==25.0 # via twine
|
||||||
requests-toolbelt==0.9.1 # via twine
|
requests-toolbelt==0.9.1 # via twine
|
||||||
requests==2.22.0 # via requests-toolbelt, twine
|
requests==2.23.0 # via requests-toolbelt, twine
|
||||||
secretstorage==3.1.2 # via keyring
|
secretstorage==3.1.2 # via keyring
|
||||||
six==1.13.0 # via bleach, cfgv, cryptography, pre-commit, readme-renderer
|
six==1.14.0 # via bleach, cryptography, readme-renderer, virtualenv
|
||||||
toml==0.10.0 # via pre-commit
|
toml==0.10.0 # via pre-commit
|
||||||
tqdm==4.41.1 # via twine
|
tqdm==4.45.0 # via twine
|
||||||
twine==3.1.1 # via -r requirements-dev.in
|
twine==3.1.1 # via -r requirements-dev.in
|
||||||
urllib3==1.25.7 # via requests
|
urllib3==1.25.8 # via requests
|
||||||
virtualenv==16.7.9 # via pre-commit
|
virtualenv==20.0.17 # via pre-commit
|
||||||
webencodings==0.5.1 # via bleach
|
webencodings==0.5.1 # via bleach
|
||||||
|
zipp==3.1.0 # via importlib-metadata
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
# setuptools
|
# setuptools
|
||||||
|
|
|
@ -4,111 +4,108 @@
|
||||||
#
|
#
|
||||||
# pip-compile --no-index --output-file=requirements-docs.txt requirements-docs.in
|
# pip-compile --no-index --output-file=requirements-docs.txt requirements-docs.in
|
||||||
#
|
#
|
||||||
acme==1.0.0
|
acme==1.3.0 # via -r requirements.txt
|
||||||
alabaster==0.7.12 # via sphinx
|
alabaster==0.7.12 # via sphinx
|
||||||
alembic-autogenerate-enums==0.0.2
|
alembic-autogenerate-enums==0.0.2 # via -r requirements.txt
|
||||||
alembic==1.3.2
|
alembic==1.4.2 # via -r requirements.txt, flask-migrate
|
||||||
amqp==2.5.2
|
amqp==2.5.2 # via -r requirements.txt, kombu
|
||||||
aniso8601==8.0.0
|
aniso8601==8.0.0 # via -r requirements.txt, flask-restful
|
||||||
arrow==0.15.5
|
arrow==0.15.5 # via -r requirements.txt
|
||||||
asyncpool==1.0
|
asyncpool==1.0 # via -r requirements.txt
|
||||||
babel==2.8.0 # via sphinx
|
babel==2.8.0 # via sphinx
|
||||||
bcrypt==3.1.7
|
bcrypt==3.1.7 # via -r requirements.txt, flask-bcrypt, paramiko
|
||||||
billiard==3.6.1.0
|
billiard==3.6.3.0 # via -r requirements.txt, celery
|
||||||
blinker==1.4
|
blinker==1.4 # via -r requirements.txt, flask-mail, flask-principal, raven
|
||||||
boto3==1.10.46
|
boto3==1.12.39 # via -r requirements.txt
|
||||||
botocore==1.13.46
|
botocore==1.15.39 # via -r requirements.txt, boto3, s3transfer
|
||||||
celery[redis]==4.4.0
|
celery[redis]==4.4.2 # via -r requirements.txt
|
||||||
certifi==2019.11.28
|
certifi==2020.4.5.1 # via -r requirements.txt, requests
|
||||||
certsrv==2.1.1
|
certsrv==2.1.1 # via -r requirements.txt
|
||||||
cffi==1.13.2
|
cffi==1.14.0 # via -r requirements.txt, bcrypt, cryptography, pynacl
|
||||||
chardet==3.0.4
|
chardet==3.0.4 # via -r requirements.txt, requests
|
||||||
click==7.0
|
click==7.1.1 # via -r requirements.txt, flask
|
||||||
cloudflare==2.3.1
|
cloudflare==2.6.5 # via -r requirements.txt
|
||||||
cryptography==2.8
|
cryptography==2.9 # via -r requirements.txt, acme, josepy, paramiko, pyopenssl, requests
|
||||||
dnspython3==1.15.0
|
dnspython3==1.15.0 # via -r requirements.txt
|
||||||
dnspython==1.15.0
|
dnspython==1.15.0 # via -r requirements.txt, dnspython3
|
||||||
docutils==0.15.2
|
docutils==0.15.2 # via -r requirements.txt, botocore, sphinx
|
||||||
dyn==1.8.1
|
dyn==1.8.1 # via -r requirements.txt
|
||||||
flask-bcrypt==0.7.1
|
flask-bcrypt==0.7.1 # via -r requirements.txt
|
||||||
flask-cors==3.0.8
|
flask-cors==3.0.8 # via -r requirements.txt
|
||||||
flask-mail==0.9.1
|
flask-mail==0.9.1 # via -r requirements.txt
|
||||||
flask-migrate==2.5.2
|
flask-migrate==2.5.3 # via -r requirements.txt
|
||||||
flask-principal==0.4.0
|
flask-principal==0.4.0 # via -r requirements.txt
|
||||||
flask-replicated==1.3
|
flask-replicated==1.3 # via -r requirements.txt
|
||||||
flask-restful==0.3.7
|
flask-restful==0.3.8 # via -r requirements.txt
|
||||||
flask-script==2.0.6
|
flask-script==2.0.6 # via -r requirements.txt
|
||||||
flask-sqlalchemy==2.4.1
|
flask-sqlalchemy==2.4.1 # via -r requirements.txt, flask-migrate
|
||||||
flask==1.1.1
|
flask==1.1.2 # via -r requirements.txt, flask-bcrypt, flask-cors, flask-mail, flask-migrate, flask-principal, flask-restful, flask-script, flask-sqlalchemy, raven
|
||||||
future==0.18.2
|
future==0.18.2 # via -r requirements.txt, cloudflare
|
||||||
gunicorn==20.0.4
|
gunicorn==20.0.4 # via -r requirements.txt
|
||||||
hvac==0.9.6
|
hvac==0.10.1 # via -r requirements.txt
|
||||||
idna==2.8
|
idna==2.9 # via -r requirements.txt, requests
|
||||||
imagesize==1.2.0 # via sphinx
|
imagesize==1.2.0 # via sphinx
|
||||||
importlib-metadata==1.3.0
|
importlib-metadata==1.6.0 # via -r requirements.txt, kombu
|
||||||
inflection==0.3.1
|
inflection==0.4.0 # via -r requirements.txt
|
||||||
itsdangerous==1.1.0
|
itsdangerous==1.1.0 # via -r requirements.txt, flask
|
||||||
javaobj-py3==0.4.0.1
|
javaobj-py3==0.4.0.1 # via -r requirements.txt, pyjks
|
||||||
jinja2==2.10.3
|
jinja2==2.11.2 # via -r requirements.txt, flask, sphinx
|
||||||
jmespath==0.9.4
|
jmespath==0.9.5 # via -r requirements.txt, boto3, botocore
|
||||||
josepy==1.2.0
|
josepy==1.3.0 # via -r requirements.txt, acme
|
||||||
jsonlines==1.2.0
|
jsonlines==1.2.0 # via -r requirements.txt, cloudflare
|
||||||
kombu==4.6.7
|
kombu==4.6.8 # via -r requirements.txt, celery
|
||||||
lockfile==0.12.2
|
lockfile==0.12.2 # via -r requirements.txt
|
||||||
logmatic-python==0.1.7
|
logmatic-python==0.1.7 # via -r requirements.txt
|
||||||
mako==1.1.0
|
mako==1.1.2 # via -r requirements.txt, alembic
|
||||||
markupsafe==1.1.1
|
markupsafe==1.1.1 # via -r requirements.txt, jinja2, mako
|
||||||
marshmallow-sqlalchemy==0.21.0
|
marshmallow-sqlalchemy==0.22.3 # via -r requirements.txt
|
||||||
marshmallow==2.20.4
|
marshmallow==2.20.4 # via -r requirements.txt, marshmallow-sqlalchemy
|
||||||
mock==3.0.5
|
mock==4.0.2 # via -r requirements.txt, acme
|
||||||
more-itertools==8.0.2
|
ndg-httpsclient==0.5.1 # via -r requirements.txt
|
||||||
ndg-httpsclient==0.5.1
|
packaging==20.3 # via sphinx
|
||||||
packaging==19.2 # via sphinx
|
paramiko==2.7.1 # via -r requirements.txt
|
||||||
paramiko==2.7.1
|
pem==20.1.0 # via -r requirements.txt
|
||||||
pem==19.3.0
|
psycopg2==2.8.5 # via -r requirements.txt
|
||||||
psycopg2==2.8.4
|
pycparser==2.20 # via -r requirements.txt, cffi
|
||||||
pyasn1-modules==0.2.7
|
pycryptodomex==3.9.7 # via -r requirements.txt, pyjks
|
||||||
pyasn1==0.4.8
|
pygments==2.6.1 # via sphinx
|
||||||
pycparser==2.19
|
pyjks==19.0.0 # via -r requirements.txt
|
||||||
pycryptodomex==3.9.4
|
pyjwt==1.7.1 # via -r requirements.txt
|
||||||
pygments==2.5.2 # via sphinx
|
pynacl==1.3.0 # via -r requirements.txt, paramiko
|
||||||
pyjks==19.0.0
|
pyopenssl==19.1.0 # via -r requirements.txt, acme, josepy, ndg-httpsclient, requests
|
||||||
pyjwt==1.7.1
|
pyparsing==2.4.7 # via packaging
|
||||||
pynacl==1.3.0
|
pyrfc3339==1.1 # via -r requirements.txt, acme
|
||||||
pyopenssl==19.1.0
|
python-dateutil==2.8.1 # via -r requirements.txt, alembic, arrow, botocore
|
||||||
pyparsing==2.4.6 # via packaging
|
python-editor==1.0.4 # via -r requirements.txt, alembic
|
||||||
pyrfc3339==1.1
|
python-json-logger==0.1.11 # via -r requirements.txt, logmatic-python
|
||||||
python-dateutil==2.8.1
|
pytz==2019.3 # via -r requirements.txt, acme, babel, celery, flask-restful, pyrfc3339
|
||||||
python-editor==1.0.4
|
pyyaml==5.3.1 # via -r requirements.txt, cloudflare
|
||||||
python-json-logger==0.1.11
|
raven[flask]==6.10.0 # via -r requirements.txt
|
||||||
pytz==2019.3
|
redis==3.4.1 # via -r requirements.txt, celery
|
||||||
pyyaml==5.2
|
requests-toolbelt==0.9.1 # via -r requirements.txt, acme
|
||||||
raven[flask]==6.10.0
|
requests[security]==2.23.0 # via -r requirements.txt, acme, certsrv, cloudflare, hvac, requests-toolbelt, sphinx
|
||||||
redis==3.3.11
|
retrying==1.3.3 # via -r requirements.txt
|
||||||
requests-toolbelt==0.9.1
|
s3transfer==0.3.3 # via -r requirements.txt, boto3
|
||||||
requests[security]==2.22.0
|
six==1.14.0 # via -r requirements.txt, acme, bcrypt, cryptography, flask-cors, flask-restful, hvac, josepy, jsonlines, packaging, pynacl, pyopenssl, python-dateutil, retrying, sphinxcontrib-httpdomain, sqlalchemy-utils
|
||||||
retrying==1.3.3
|
|
||||||
s3transfer==0.2.1
|
|
||||||
six==1.13.0
|
|
||||||
snowballstemmer==2.0.0 # via sphinx
|
snowballstemmer==2.0.0 # via sphinx
|
||||||
sphinx-rtd-theme==0.4.3
|
sphinx-rtd-theme==0.4.3 # via -r requirements-docs.in
|
||||||
sphinx==2.3.1
|
sphinx==3.0.1 # via -r requirements-docs.in, sphinx-rtd-theme, sphinxcontrib-httpdomain
|
||||||
sphinxcontrib-applehelp==1.0.1 # via sphinx
|
sphinxcontrib-applehelp==1.0.2 # via sphinx
|
||||||
sphinxcontrib-devhelp==1.0.1 # via sphinx
|
sphinxcontrib-devhelp==1.0.2 # via sphinx
|
||||||
sphinxcontrib-htmlhelp==1.0.2 # via sphinx
|
sphinxcontrib-htmlhelp==1.0.3 # via sphinx
|
||||||
sphinxcontrib-httpdomain==1.7.0
|
sphinxcontrib-httpdomain==1.7.0 # via -r requirements-docs.in
|
||||||
sphinxcontrib-jsmath==1.0.1 # via sphinx
|
sphinxcontrib-jsmath==1.0.1 # via sphinx
|
||||||
sphinxcontrib-qthelp==1.0.2 # via sphinx
|
sphinxcontrib-qthelp==1.0.3 # via sphinx
|
||||||
sphinxcontrib-serializinghtml==1.1.3 # via sphinx
|
sphinxcontrib-serializinghtml==1.1.4 # via sphinx
|
||||||
sqlalchemy-utils==0.36.1
|
sqlalchemy-utils==0.36.3 # via -r requirements.txt
|
||||||
sqlalchemy==1.3.12
|
sqlalchemy==1.3.16 # via -r requirements.txt, alembic, flask-sqlalchemy, marshmallow-sqlalchemy, sqlalchemy-utils
|
||||||
tabulate==0.8.6
|
tabulate==0.8.7 # via -r requirements.txt
|
||||||
twofish==0.3.0
|
twofish==0.3.0 # via -r requirements.txt, pyjks
|
||||||
urllib3==1.25.7
|
urllib3==1.25.8 # via -r requirements.txt, botocore, requests
|
||||||
vine==1.3.0
|
vine==1.3.0 # via -r requirements.txt, amqp, celery
|
||||||
werkzeug==0.16.0
|
werkzeug==1.0.1 # via -r requirements.txt, flask
|
||||||
xmltodict==0.12.0
|
xmltodict==0.12.0 # via -r requirements.txt
|
||||||
zipp==0.6.0
|
zipp==3.1.0 # via -r requirements.txt, importlib-metadata
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
# setuptools
|
# setuptools
|
||||||
|
|
|
@ -6,85 +6,87 @@
|
||||||
#
|
#
|
||||||
appdirs==1.4.3 # via black
|
appdirs==1.4.3 # via black
|
||||||
attrs==19.3.0 # via black, jsonschema, pytest
|
attrs==19.3.0 # via black, jsonschema, pytest
|
||||||
aws-sam-translator==1.19.1 # via cfn-lint
|
aws-sam-translator==1.22.0 # via cfn-lint
|
||||||
aws-xray-sdk==2.4.3 # via moto
|
aws-xray-sdk==2.5.0 # via moto
|
||||||
bandit==1.6.2
|
bandit==1.6.2 # via -r requirements-tests.in
|
||||||
black==19.10b0
|
black==19.10b0 # via -r requirements-tests.in
|
||||||
boto3==1.10.46 # via aws-sam-translator, moto
|
boto3==1.12.39 # via aws-sam-translator, moto
|
||||||
boto==2.49.0 # via moto
|
boto==2.49.0 # via moto
|
||||||
botocore==1.13.46 # via aws-xray-sdk, boto3, moto, s3transfer
|
botocore==1.15.39 # via aws-xray-sdk, boto3, moto, s3transfer
|
||||||
certifi==2019.11.28 # via requests
|
certifi==2020.4.5.1 # via requests
|
||||||
cffi==1.13.2 # via cryptography
|
cffi==1.14.0 # via cryptography
|
||||||
cfn-lint==0.26.2 # via moto
|
cfn-lint==0.29.5 # via moto
|
||||||
chardet==3.0.4 # via requests
|
chardet==3.0.4 # via requests
|
||||||
click==7.0 # via black, flask
|
click==7.1.1 # via black, flask
|
||||||
coverage==5.0.1
|
coverage==5.1 # via -r requirements-tests.in
|
||||||
cryptography==2.8 # via moto, sshpubkeys
|
cryptography==2.9 # via moto, sshpubkeys
|
||||||
docker==4.1.0 # via moto
|
decorator==4.4.2 # via networkx
|
||||||
|
docker==4.2.0 # via moto
|
||||||
docutils==0.15.2 # via botocore
|
docutils==0.15.2 # via botocore
|
||||||
ecdsa==0.15 # via python-jose, sshpubkeys
|
ecdsa==0.15 # via python-jose, sshpubkeys
|
||||||
factory-boy==2.12.0
|
factory-boy==2.12.0 # via -r requirements-tests.in
|
||||||
faker==3.0.0
|
faker==4.0.3 # via -r requirements-tests.in, factory-boy
|
||||||
fakeredis==1.1.0
|
fakeredis==1.4.0 # via -r requirements-tests.in
|
||||||
flask==1.1.1 # via pytest-flask
|
flask==1.1.2 # via pytest-flask
|
||||||
freezegun==0.3.12
|
freezegun==0.3.15 # via -r requirements-tests.in
|
||||||
future==0.18.2 # via aws-xray-sdk
|
future==0.18.2 # via aws-xray-sdk
|
||||||
gitdb2==2.0.6 # via gitpython
|
gitdb==4.0.4 # via gitpython
|
||||||
gitpython==3.0.5 # via bandit
|
gitpython==3.1.1 # via bandit
|
||||||
idna==2.8 # via moto, requests
|
idna==2.8 # via moto, requests
|
||||||
importlib-metadata==1.3.0 # via jsonschema, pluggy, pytest
|
importlib-metadata==1.6.0 # via jsonpickle, jsonschema, pluggy, pytest
|
||||||
itsdangerous==1.1.0 # via flask
|
itsdangerous==1.1.0 # via flask
|
||||||
jinja2==2.10.3 # via flask, moto
|
jinja2==2.11.2 # via flask, moto
|
||||||
jmespath==0.9.4 # via boto3, botocore
|
jmespath==0.9.5 # via boto3, botocore
|
||||||
jsondiff==1.1.2 # via moto
|
jsondiff==1.1.2 # via moto
|
||||||
jsonpatch==1.24 # via cfn-lint
|
jsonpatch==1.25 # via cfn-lint
|
||||||
jsonpickle==1.2 # via aws-xray-sdk
|
jsonpickle==1.4 # via aws-xray-sdk
|
||||||
jsonpointer==2.0 # via jsonpatch
|
jsonpointer==2.0 # via jsonpatch
|
||||||
jsonschema==3.2.0 # via aws-sam-translator, cfn-lint
|
jsonschema==3.2.0 # via aws-sam-translator, cfn-lint
|
||||||
markupsafe==1.1.1 # via jinja2
|
markupsafe==1.1.1 # via jinja2
|
||||||
mock==3.0.5 # via moto
|
mock==4.0.2 # via moto
|
||||||
more-itertools==8.0.2 # via pytest, zipp
|
more-itertools==8.2.0 # via pytest
|
||||||
moto==1.3.14
|
moto==1.3.14 # via -r requirements-tests.in
|
||||||
nose==1.3.7
|
networkx==2.4 # via cfn-lint
|
||||||
packaging==19.2 # via pytest
|
nose==1.3.7 # via -r requirements-tests.in
|
||||||
pathspec==0.7.0 # via black
|
packaging==20.3 # via pytest
|
||||||
pbr==5.4.4 # via stevedore
|
pathspec==0.8.0 # via black
|
||||||
|
pbr==5.4.5 # via stevedore
|
||||||
pluggy==0.13.1 # via pytest
|
pluggy==0.13.1 # via pytest
|
||||||
py==1.8.1 # via pytest
|
py==1.8.1 # via pytest
|
||||||
pyasn1==0.4.8 # via python-jose, rsa
|
pyasn1==0.4.8 # via python-jose, rsa
|
||||||
pycparser==2.19 # via cffi
|
pycparser==2.20 # via cffi
|
||||||
pyflakes==2.1.1
|
pyflakes==2.2.0 # via -r requirements-tests.in
|
||||||
pyparsing==2.4.6 # via packaging
|
pyparsing==2.4.7 # via packaging
|
||||||
pyrsistent==0.15.6 # via jsonschema
|
pyrsistent==0.16.0 # via jsonschema
|
||||||
pytest-flask==0.15.0
|
pytest-flask==1.0.0 # via -r requirements-tests.in
|
||||||
pytest-mock==1.13.0
|
pytest-mock==3.0.0 # via -r requirements-tests.in
|
||||||
pytest==5.3.2
|
pytest==5.4.1 # via -r requirements-tests.in, pytest-flask, pytest-mock
|
||||||
python-dateutil==2.8.1 # via botocore, faker, freezegun, moto
|
python-dateutil==2.8.1 # via botocore, faker, freezegun, moto
|
||||||
python-jose==3.1.0 # via moto
|
python-jose==3.1.0 # via moto
|
||||||
pytz==2019.3 # via moto
|
pytz==2019.3 # via moto
|
||||||
pyyaml==5.2
|
pyyaml==5.3.1 # via -r requirements-tests.in, bandit, cfn-lint, moto
|
||||||
redis==3.3.11 # via fakeredis
|
redis==3.4.1 # via fakeredis
|
||||||
regex==2019.12.20 # via black
|
regex==2020.4.4 # via black
|
||||||
requests-mock==1.7.0
|
requests-mock==1.7.0 # via -r requirements-tests.in
|
||||||
requests==2.22.0 # via docker, moto, requests-mock, responses
|
requests==2.23.0 # via docker, moto, requests-mock, responses
|
||||||
responses==0.10.9 # via moto
|
responses==0.10.12 # via moto
|
||||||
rsa==4.0 # via python-jose
|
rsa==4.0 # via python-jose
|
||||||
s3transfer==0.2.1 # via boto3
|
s3transfer==0.3.3 # via boto3
|
||||||
six==1.13.0 # via aws-sam-translator, bandit, cfn-lint, cryptography, docker, ecdsa, faker, fakeredis, freezegun, jsonschema, mock, moto, packaging, pyrsistent, python-dateutil, python-jose, requests-mock, responses, stevedore, websocket-client
|
six==1.14.0 # via aws-sam-translator, bandit, cfn-lint, cryptography, docker, ecdsa, fakeredis, freezegun, jsonschema, moto, packaging, python-dateutil, python-jose, requests-mock, responses, stevedore, websocket-client
|
||||||
smmap2==2.0.5 # via gitdb2
|
smmap==3.0.2 # via gitdb
|
||||||
sortedcontainers==2.1.0 # via fakeredis
|
sortedcontainers==2.1.0 # via fakeredis
|
||||||
sshpubkeys==3.1.0 # via moto
|
sshpubkeys==3.1.0 # via moto
|
||||||
stevedore==1.31.0 # via bandit
|
stevedore==1.32.0 # via bandit
|
||||||
text-unidecode==1.3 # via faker
|
text-unidecode==1.3 # via faker
|
||||||
toml==0.10.0 # via black
|
toml==0.10.0 # via black
|
||||||
typed-ast==1.4.0 # via black
|
typed-ast==1.4.1 # via black
|
||||||
urllib3==1.25.7 # via botocore, requests
|
urllib3==1.25.8 # via botocore, requests
|
||||||
wcwidth==0.1.8 # via pytest
|
wcwidth==0.1.9 # via pytest
|
||||||
websocket-client==0.57.0 # via docker
|
websocket-client==0.57.0 # via docker
|
||||||
werkzeug==0.16.0 # via flask, moto, pytest-flask
|
werkzeug==1.0.1 # via flask, moto, pytest-flask
|
||||||
wrapt==1.11.2 # via aws-xray-sdk
|
wrapt==1.12.1 # via aws-xray-sdk
|
||||||
xmltodict==0.12.0 # via moto
|
xmltodict==0.12.0 # via moto
|
||||||
zipp==0.6.0 # via importlib-metadata
|
zipp==3.1.0 # via importlib-metadata
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
# setuptools
|
# setuptools
|
||||||
|
|
137
requirements.txt
137
requirements.txt
|
@ -4,96 +4,95 @@
|
||||||
#
|
#
|
||||||
# pip-compile --no-index --output-file=requirements.txt requirements.in
|
# pip-compile --no-index --output-file=requirements.txt requirements.in
|
||||||
#
|
#
|
||||||
acme==1.0.0
|
acme==1.3.0 # via -r requirements.in
|
||||||
alembic-autogenerate-enums==0.0.2
|
alembic-autogenerate-enums==0.0.2 # via -r requirements.in
|
||||||
alembic==1.3.2 # via flask-migrate
|
alembic==1.4.2 # via flask-migrate
|
||||||
amqp==2.5.2 # via kombu
|
amqp==2.5.2 # via kombu
|
||||||
aniso8601==8.0.0 # via flask-restful
|
aniso8601==8.0.0 # via flask-restful
|
||||||
arrow==0.15.5
|
arrow==0.15.5 # via -r requirements.in
|
||||||
asyncpool==1.0
|
asyncpool==1.0 # via -r requirements.in
|
||||||
bcrypt==3.1.7 # via flask-bcrypt, paramiko
|
bcrypt==3.1.7 # via flask-bcrypt, paramiko
|
||||||
billiard==3.6.1.0 # via celery
|
billiard==3.6.3.0 # via celery
|
||||||
blinker==1.4 # via flask-mail, flask-principal, raven
|
blinker==1.4 # via flask-mail, flask-principal, raven
|
||||||
boto3==1.10.46
|
boto3==1.12.39 # via -r requirements.in
|
||||||
botocore==1.13.46
|
botocore==1.15.39 # via -r requirements.in, boto3, s3transfer
|
||||||
celery[redis]==4.4.0
|
celery[redis]==4.4.2 # via -r requirements.in
|
||||||
certifi==2019.11.28
|
certifi==2020.4.5.1 # via -r requirements.in, requests
|
||||||
certsrv==2.1.1
|
certsrv==2.1.1 # via -r requirements.in
|
||||||
cffi==1.13.2 # via bcrypt, cryptography, pynacl
|
cffi==1.14.0 # via bcrypt, cryptography, pynacl
|
||||||
chardet==3.0.4 # via requests
|
chardet==3.0.4 # via requests
|
||||||
click==7.0 # via flask
|
click==7.1.1 # via flask
|
||||||
cloudflare==2.3.1
|
cloudflare==2.6.5 # via -r requirements.in
|
||||||
cryptography==2.8
|
cryptography==2.9 # via -r requirements.in, acme, josepy, paramiko, pyopenssl, requests
|
||||||
dnspython3==1.15.0
|
dnspython3==1.15.0 # via -r requirements.in
|
||||||
dnspython==1.15.0 # via dnspython3
|
dnspython==1.15.0 # via dnspython3
|
||||||
docutils==0.15.2 # via botocore
|
docutils==0.15.2 # via botocore
|
||||||
dyn==1.8.1
|
dyn==1.8.1 # via -r requirements.in
|
||||||
flask-bcrypt==0.7.1
|
flask-bcrypt==0.7.1 # via -r requirements.in
|
||||||
flask-cors==3.0.8
|
flask-cors==3.0.8 # via -r requirements.in
|
||||||
flask-mail==0.9.1
|
flask-mail==0.9.1 # via -r requirements.in
|
||||||
flask-migrate==2.5.2
|
flask-migrate==2.5.3 # via -r requirements.in
|
||||||
flask-principal==0.4.0
|
flask-principal==0.4.0 # via -r requirements.in
|
||||||
flask-replicated==1.3
|
flask-replicated==1.3 # via -r requirements.in
|
||||||
flask-restful==0.3.7
|
flask-restful==0.3.8 # via -r requirements.in
|
||||||
flask-script==2.0.6
|
flask-script==2.0.6 # via -r requirements.in
|
||||||
flask-sqlalchemy==2.4.1
|
flask-sqlalchemy==2.4.1 # via -r requirements.in, flask-migrate
|
||||||
flask==1.1.1
|
flask==1.1.2 # via -r requirements.in, flask-bcrypt, flask-cors, flask-mail, flask-migrate, flask-principal, flask-restful, flask-script, flask-sqlalchemy, raven
|
||||||
future==0.18.2
|
future==0.18.2 # via -r requirements.in, cloudflare
|
||||||
gunicorn==20.0.4
|
gunicorn==20.0.4 # via -r requirements.in
|
||||||
hvac==0.9.6
|
hvac==0.10.1 # via -r requirements.in
|
||||||
idna==2.8 # via requests
|
idna==2.9 # via requests
|
||||||
importlib-metadata==1.3.0 # via kombu
|
importlib-metadata==1.6.0 # via kombu
|
||||||
inflection==0.3.1
|
inflection==0.4.0 # via -r requirements.in
|
||||||
itsdangerous==1.1.0 # via flask
|
itsdangerous==1.1.0 # via flask
|
||||||
javaobj-py3==0.4.0.1 # via pyjks
|
javaobj-py3==0.4.0.1 # via pyjks
|
||||||
jinja2==2.10.3
|
jinja2==2.11.2 # via -r requirements.in, flask
|
||||||
jmespath==0.9.4 # via boto3, botocore
|
jmespath==0.9.5 # via boto3, botocore
|
||||||
josepy==1.2.0 # via acme
|
josepy==1.3.0 # via acme
|
||||||
jsonlines==1.2.0 # via cloudflare
|
jsonlines==1.2.0 # via cloudflare
|
||||||
kombu==4.6.7 # via celery
|
kombu==4.6.8 # via celery
|
||||||
lockfile==0.12.2
|
lockfile==0.12.2 # via -r requirements.in
|
||||||
logmatic-python==0.1.7
|
logmatic-python==0.1.7 # via -r requirements.in
|
||||||
mako==1.1.0 # via alembic
|
mako==1.1.2 # via alembic
|
||||||
markupsafe==1.1.1 # via jinja2, mako
|
markupsafe==1.1.1 # via jinja2, mako
|
||||||
marshmallow-sqlalchemy==0.21.0
|
marshmallow-sqlalchemy==0.22.3 # via -r requirements.in
|
||||||
marshmallow==2.20.4
|
marshmallow==2.20.4 # via -r requirements.in, marshmallow-sqlalchemy
|
||||||
mock==3.0.5 # via acme
|
mock==4.0.2 # via acme
|
||||||
more-itertools==8.0.2 # via zipp
|
ndg-httpsclient==0.5.1 # via -r requirements.in
|
||||||
ndg-httpsclient==0.5.1
|
paramiko==2.7.1 # via -r requirements.in
|
||||||
paramiko==2.7.1
|
pem==20.1.0 # via -r requirements.in
|
||||||
pem==19.3.0
|
psycopg2==2.8.5 # via -r requirements.in
|
||||||
psycopg2==2.8.4
|
pyasn1-modules==0.2.8 # via pyjks, python-ldap
|
||||||
pyasn1-modules==0.2.7 # via pyjks, python-ldap
|
|
||||||
pyasn1==0.4.8 # via ndg-httpsclient, pyasn1-modules, pyjks, python-ldap
|
pyasn1==0.4.8 # via ndg-httpsclient, pyasn1-modules, pyjks, python-ldap
|
||||||
pycparser==2.19 # via cffi
|
pycparser==2.20 # via cffi
|
||||||
pycryptodomex==3.9.4 # via pyjks
|
pycryptodomex==3.9.7 # via pyjks
|
||||||
pyjks==19.0.0
|
pyjks==19.0.0 # via -r requirements.in
|
||||||
pyjwt==1.7.1
|
pyjwt==1.7.1 # via -r requirements.in
|
||||||
pynacl==1.3.0 # via paramiko
|
pynacl==1.3.0 # via paramiko
|
||||||
pyopenssl==19.1.0
|
pyopenssl==19.1.0 # via -r requirements.in, acme, josepy, ndg-httpsclient, requests
|
||||||
pyrfc3339==1.1 # via acme
|
pyrfc3339==1.1 # via acme
|
||||||
python-dateutil==2.8.1 # via alembic, arrow, botocore
|
python-dateutil==2.8.1 # via alembic, arrow, botocore
|
||||||
python-editor==1.0.4 # via alembic
|
python-editor==1.0.4 # via alembic
|
||||||
python-json-logger==0.1.11 # via logmatic-python
|
python-json-logger==0.1.11 # via logmatic-python
|
||||||
python-ldap==3.2.0
|
python-ldap==3.2.0 # via -r requirements.in
|
||||||
pytz==2019.3 # via acme, celery, flask-restful, pyrfc3339
|
pytz==2019.3 # via acme, celery, flask-restful, pyrfc3339
|
||||||
pyyaml==5.2
|
pyyaml==5.3.1 # via -r requirements.in, cloudflare
|
||||||
raven[flask]==6.10.0
|
raven[flask]==6.10.0 # via -r requirements.in
|
||||||
redis==3.3.11
|
redis==3.4.1 # via -r requirements.in, celery
|
||||||
requests-toolbelt==0.9.1 # via acme
|
requests-toolbelt==0.9.1 # via acme
|
||||||
requests[security]==2.22.0
|
requests[security]==2.23.0 # via -r requirements.in, acme, certsrv, cloudflare, hvac, requests-toolbelt
|
||||||
retrying==1.3.3
|
retrying==1.3.3 # via -r requirements.in
|
||||||
s3transfer==0.2.1 # via boto3
|
s3transfer==0.3.3 # via boto3
|
||||||
six==1.13.0
|
six==1.14.0 # via -r requirements.in, acme, bcrypt, cryptography, flask-cors, flask-restful, hvac, josepy, jsonlines, pynacl, pyopenssl, python-dateutil, retrying, sqlalchemy-utils
|
||||||
sqlalchemy-utils==0.36.1
|
sqlalchemy-utils==0.36.3 # via -r requirements.in
|
||||||
sqlalchemy==1.3.12 # via alembic, flask-sqlalchemy, marshmallow-sqlalchemy, sqlalchemy-utils
|
sqlalchemy==1.3.16 # via alembic, flask-sqlalchemy, marshmallow-sqlalchemy, sqlalchemy-utils
|
||||||
tabulate==0.8.6
|
tabulate==0.8.7 # via -r requirements.in
|
||||||
twofish==0.3.0 # via pyjks
|
twofish==0.3.0 # via pyjks
|
||||||
urllib3==1.25.7 # via botocore, requests
|
urllib3==1.25.8 # via botocore, requests
|
||||||
vine==1.3.0 # via amqp, celery
|
vine==1.3.0 # via amqp, celery
|
||||||
werkzeug==0.16.0 # via flask
|
werkzeug==1.0.1 # via flask
|
||||||
xmltodict==0.12.0
|
xmltodict==0.12.0 # via -r requirements.in
|
||||||
zipp==0.6.0 # via importlib-metadata
|
zipp==3.1.0 # via importlib-metadata
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
# setuptools
|
# setuptools
|
||||||
|
|
Loading…
Reference in New Issue