# Copyright 2025 gRPC authors.
#
# 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.
#
# This file provides the source for generating requirements.bazel.lock.
# Instructions for generation follow:
# Use the oldest supported version of Python
#
#   $ docker run -it --rm -v $(pwd):/grpc python:3.9 /bin/bash
#   # cd grpc
#   # pip install pip-tools
#   # pip-compile --allow-unsafe requirements.bazel.txt -o requirements.bazel.lock
#   # exit
#   $ sudo chown $USER requirements.bazel.lock
#
# When installing a new package, sometimes it's desirable to avoid unnecessary
# package upgrades. In such case, consider the following flow instead.
#
#   $ python3.9 -m venv .venv-bazel
#   $ source .venv-bazel/bin/activate
#   $ pip install pip-tools
#   $ pip install -r requirements.bazel.lock
#
#   Add the new package to requirements.bazel.txt
#   $ pip-compile --no-upgrade --allow-unsafe requirements.bazel.txt -o requirements.bazel.lock
#
#   To update a single package, change its version spec requirements.bazel.txt
#   $ pip-compile --no-upgrade --allow-unsafe requirements.bazel.txt -o requirements.bazel.lock -P package_name

absl-py
certifi
chardet
gevent~=25.8
google-auth
googleapis-common-protos
idna
opentelemetry-api
opentelemetry-exporter-prometheus
opentelemetry-resourcedetector-gcp
opentelemetry-sdk
protobuf
pyyaml  # for DNS test
requests
setuptools>=77.0.1
typeguard~=4.2
typing-extensions==4.12.2
twisted  # for DNS test
urllib3
