###############################################################################
#  Licensed to the Apache Software Foundation (ASF) under one
#  or more contributor license agreements.  See the NOTICE file
#  distributed with this work for additional information
#  regarding copyright ownership.  The ASF licenses this file
#  to you 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.
###############################################################################

# These are packages needed by the Apache Beam Python SDK. Their versions need
# to be compatible with the requirements in sdks/python/setup.py.
# Specifying the versions manually helps to resolve dependency conflicts
# with other packages installed in the container.
# Any SDK dependencies not listed here will be installed when SDK is installed
# into the container.

# TODO(AVRO-2429): Upgrade to >= 1.9.0 only after resolved
avro-python3==1.8.2
fastavro==1.0.0.post1
crcmod==1.7
dill==0.3.1.1
future==0.18.2
grpcio==1.34.0
hdfs==2.5.8
httplib2==0.19.1
oauth2client==4.1.3
protobuf==3.12.2
pyarrow==3.0.0
pydot==1.4.1
pymongo==3.10.1
pytz==2020.1
pyyaml==5.4
typing-extensions==3.7.4.3

# GCP extra features
google-auth==1.31.0
google-api-core==1.22.2
google-apitools==0.5.31
google-cloud-pubsub==1.0.2
google-cloud-bigquery==1.26.1
google-cloud-bigtable==1.0.0
google-cloud-core==1.4.1
google-cloud-datastore==1.15.3
google-cloud-dlp==0.13.0
google-cloud-language==1.3.0
google-cloud-spanner==1.13.0
google-cloud-videointelligence==1.13.0
google-cloud-vision==0.42.0
google-python-cloud-debugger == 2.15
grpcio-gcp==0.2.2

## These are additional optional packages likely to be used by customers.
beautifulsoup4 == 4.9.1
bs4 == 0.0.1
cython==0.29.21
cachetools == 3.1.1
dataclasses == 0.8 ; python_version=="3.6"
guppy3==3.0.10
mmh3==2.5.1
python-dateutil == 2.8.1
requests == 2.24.0
freezegun == 0.3.15
pillow == 7.2.0
python-snappy == 0.5.4
numpy==1.19.5
scipy==1.4.1
scikit-learn==0.24.1
pandas==1.1.5 ; python_version<"3.7"
pandas==1.2.4 ; python_version>="3.7"
protorpc==0.12.0
python-gflags==3.1.2
tensorflow==2.5.0

# Packages needed for testing.
tenacity>=5.0.2
pyhamcrest<2.0,>=1.9
pytest==4.6.11
# TODO(BEAM-3713): Remove once nose is no longer in use.
nose==1.3.7
