# Version constraints for pip-installation.
#
# This file doesn't install any packages. It specifies version constraints
# that will be applied if a package is needed.
#
# When pinning something here, please provide an explanation of why.  Ideally,
# link to other information that will help people in the future to remove the
# pin when possible.  Writing an issue against the offending project and
# linking to it here is good.

# NOTE: We intentionally do NOT include the org-wide common_constraints.txt
# from edx-lint. This repo tests against the exact package versions used in
# production by openedx-platform (see edx-platform-constraints.txt).

# Pin factory-boy major version for stability purposes.
factory-boy<4.0

# pinning Sphinx 8.x version
# Sphinx 9.x introduces significant changes and removals compared to Sphinx 8.x,
# particularly in internal APIs and default behaviors, including a substantial rewrite of the autodoc extension.
# https://github.com/openedx/edx-enterprise/issues/2494
Sphinx>=8.0,<9.0

# pylint 4 throws all sorts of errors and warnings at us
pylint<4
