<#18381 Python generate-lockfiles not completing> ...
# github-notifications
q
#18381 Python generate-lockfiles not completing New discussion created by pranav-kunapuli Hey everyone, I'm moving my organization's python backends to a monorepo architecture and felt that Pants was the best build tool for our use case. I'm working through reorganizing our repository and setting up Pants, but I'm stuck at the
generate-lockfiles
step. The command seems to be going on forever with no end in sight. I ran the process overnight (8+ hours) and still no completion. I've generated BUILD files using
pants tailor ::
, but I can't proceed until my lockfiles are created. Any advice on how to proceed? For additional context, our repository currently uses poetry for dependency management and I have the following pants.toml file:
Copy code
[GLOBAL]
pants_version = "2.15.0"

# Packages needed for pants to run various goals
backend_packages = [
  "pants.backend.python",
  "pants.backend.python.lint.bandit",
  "pants.backend.python.lint.black",
  "pants.backend.python.lint.docformatter",
  "pants.backend.python.lint.flake8",
  "pants.backend.python.lint.isort",
  "pants.backend.python.typecheck.mypy",
]

[source]
# Directory structure rooted around a shared modules directory and various services
root_patterns = [
  "/shared",
  "/services",
  "/tests",
]

[python]
# The default interpreter constraints for code in this repo. Individual targets can override
#  this with the `interpreter_constraints` field. See
#  <https://www.pantsbuild.org/docs/python-interpreter-compatibility>.

# Modify this if you don't have Python 3.9 on your machine.
# This can be a range, such as [">=3.8,<3.11"], but it's usually recommended to restrict
# to a single minor version.
interpreter_constraints = [">=3.10.*"]

# Enable the "resolves" mechanism, which turns on lockfiles for user code. See
# <https://www.pantsbuild.org/docs/python-third-party-dependencies>. This also adds the
# `generate-lockfiles` goal for Pants to generate the lockfile for you.
enable_resolves = true

# [python.resolves]
# python-default = "python-default.lock"

[python-bootstrap]
# We search for interpreters both on the $PATH and in the `$(pyenv root)/versions` folder.
# If you're using macOS, you may want to leave off the <PATH> entry to avoid using the
# problematic system Pythons. See
# <https://www.pantsbuild.org/docs/python-interpreter-compatibility#changing-the-interpreter-search-path>.

# search_path = ["<PATH>", "<PYENV>"]
search_path = ["<PYENV>"]
pantsbuild/pants