# NB: Last matching rule takes precedence in CODEOWNERS.

# Fall-through to community maintainers.
* @thundergolfer

# Core Python rules belong to the Bazel team.
/python/ @brandjon @lberki
# But not everything under python/ is the core Python rules.
/python/pip.bzl @thundergolfer
/python/requirements.txt @thundergolfer

# Directory containing the Gazelle extension and Go code.
/gazelle/ @f0rmiga

# The proposals dir corresponds to the Bazel proposals process, documented
# here: https://bazel.build/designs/index.html
/proposals/ @brandjon @lberki

# Certain repo metadata files should stay as-is, particularly these.
/LICENSE @brandjon @lberki
/CONTRIBUTING.md @brandjon @lberki
