# Copyright (c) Meta Platforms, Inc. and affiliates.
#
# Requirements file for CUTracer Python package.
#
# NOTE: This file mirrors pyproject.toml [project.dependencies] and
# [project.optional-dependencies]; pyproject.toml is the canonical source.
# When updating any dependency in either file, update the other in the
# same change. This file intentionally flattens core + clp + dev into one
# install, unlike `pip install .`, which installs core dependencies only.
# The section headers below are parsed by tests/test_dependency_sync.py;
# do not rename them without updating that test.
#
# To install: pip install -r requirements.txt

# Core dependencies (synced from pyproject.toml [project.dependencies])
click>=8.0.0
jsonschema>=4.0.0
zstandard>=0.20.0
tabulate>=0.9.0
importlib_resources>=5.0.0; python_version < '3.11'
tritonparse>=0.4.3

# CLP support (synced from pyproject.toml [project.optional-dependencies.clp]).
# yscope_clp_core ships only x86_64 wheels, so it must never be a core dependency.
yscope_clp_core>=0.7.1b2; platform_machine == "x86_64"

# Development dependencies (synced from pyproject.toml [project.optional-dependencies.dev])
mypy>=1.0.0
ufmt==2.9.0
usort==1.1.0
ruff-api==0.2.0
ruff>=0.4.0
