-e git+https://osm.etsi.org/gerrit/osm/N2VC.git@master#egg=n2vc
    # via -r requirements-dev.in
-e git+https://osm.etsi.org/gerrit/osm/common.git@master#egg=osm-common
    # via -r requirements-dev.in
aiokafka==0.7.0
    # via osm-common
bcrypt==3.2.0
    # via paramiko
cachetools==4.2.1
    # via google-auth
certifi==2020.12.5
    # via
    #   kubernetes
    #   requests
cffi==1.14.5
    # via
    #   bcrypt
    #   cryptography
    #   pynacl
chardet==4.0.0
    # via requests
cryptography==3.4.7
    # via paramiko
dataclasses==0.6
    # via osm-common
google-auth==1.28.0
    # via kubernetes
idna==2.10
    # via requests
juju==2.8.4
    # via n2vc
jujubundlelib==0.5.6
    # via theblues
kafka-python==2.0.2
    # via aiokafka
kubernetes==10.0.1
    # via n2vc
macaroonbakery==1.3.1
    # via
    #   juju
    #   theblues
mypy-extensions==0.4.3
    # via typing-inspect
oauthlib==3.1.0
    # via requests-oauthlib
paramiko==2.7.2
    # via juju
protobuf==3.15.6
    # via macaroonbakery
pyasn1-modules==0.2.8
    # via google-auth
pyasn1==0.4.8
    # via
    #   juju
    #   n2vc
    #   pyasn1-modules
    #   rsa
pycparser==2.20
    # via cffi
pycrypto==2.6.1
    # via osm-common
pymacaroons==0.13.0
    # via macaroonbakery
pymongo==3.11.3
    # via osm-common
pynacl==1.4.0
    # via
    #   macaroonbakery
    #   paramiko
    #   pymacaroons
pyrfc3339==1.1
    # via
    #   juju
    #   macaroonbakery
python-dateutil==2.8.1
    # via kubernetes
pytz==2021.1
    # via pyrfc3339
pyyaml==5.4.1
    # via
    #   juju
    #   jujubundlelib
    #   kubernetes
    #   osm-common
requests-oauthlib==1.3.0
    # via kubernetes
requests==2.25.1
    # via
    #   kubernetes
    #   macaroonbakery
    #   requests-oauthlib
    #   theblues
rsa==4.7.2
    # via google-auth
six==1.15.0
    # via
    #   bcrypt
    #   google-auth
    #   kubernetes
    #   macaroonbakery
    #   protobuf
    #   pymacaroons
    #   pynacl
    #   python-dateutil
    #   websocket-client
theblues==0.5.2
    # via juju
toposort==1.6
    # via juju
typing-extensions==3.7.4.3
    # via typing-inspect
typing-inspect==0.6.0
    # via juju
urllib3==1.26.4
    # via
    #   kubernetes
    #   requests
websocket-client==0.58.0
    # via kubernetes
websockets==7.0
    # via juju

# The following packages are considered to be unsafe in a requirements file:
# setuptools
#######################################################################################
# Copyright ETSI Contributors and Others.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################
