gitextract_02e0wlec/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ └── feature_request.yml │ ├── PULL_REQUEST_TEMPLATE.md │ ├── dependabot.yml │ └── workflows/ │ ├── ci.yml │ ├── claude.yml │ └── release.yml ├── .gitignore ├── .pre-commit-config.yaml ├── .pre-commit-hooks.yaml ├── .readthedocs.yaml ├── AGENTS.md ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── README_zh.md ├── SECURITY.md ├── codecov.yml ├── docs/ │ ├── assets/ │ │ ├── extra.css │ │ └── extra.js │ ├── dev/ │ │ ├── benchmark.md │ │ ├── changelog.md │ │ ├── contributing.md │ │ ├── fixtures.md │ │ └── write.md │ ├── index.md │ ├── overrides/ │ │ └── main.html │ ├── reference/ │ │ ├── api.md │ │ ├── build.md │ │ ├── cli.md │ │ ├── configuration.md │ │ └── pep621.md │ └── usage/ │ ├── advanced.md │ ├── config.md │ ├── dependency.md │ ├── hooks.md │ ├── lock-targets.md │ ├── lockfile.md │ ├── pep582.md │ ├── project.md │ ├── publish.md │ ├── scripts.md │ ├── template.md │ ├── uv.md │ └── venv.md ├── install-pdm.ps1 ├── install-pdm.py ├── install-pdm.py.sha256 ├── install-pdm.sh ├── mkdocs.yml ├── news/ │ ├── .gitkeep │ └── 3541.misc.md ├── pyproject.toml ├── src/ │ └── pdm/ │ ├── __init__.py │ ├── __main__.py │ ├── __version__.py │ ├── _types.py │ ├── builders/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── editable.py │ │ ├── sdist.py │ │ └── wheel.py │ ├── cli/ │ │ ├── __init__.py │ │ ├── actions.py │ │ ├── commands/ │ │ │ ├── __init__.py │ │ │ ├── add.py │ │ │ ├── base.py │ │ │ ├── build.py │ │ │ ├── cache.py │ │ │ ├── completion.py │ │ │ ├── config.py │ │ │ ├── export.py │ │ │ ├── fix/ │ │ │ │ ├── __init__.py │ │ │ │ └── fixers.py │ │ │ ├── import_cmd.py │ │ │ ├── info.py │ │ │ ├── init.py │ │ │ ├── install.py │ │ │ ├── list.py │ │ │ ├── lock.py │ │ │ ├── new.py │ │ │ ├── outdated.py │ │ │ ├── publish/ │ │ │ │ ├── __init__.py │ │ │ │ ├── package.py │ │ │ │ └── repository.py │ │ │ ├── python.py │ │ │ ├── remove.py │ │ │ ├── run.py │ │ │ ├── search.py │ │ │ ├── self_cmd.py │ │ │ ├── show.py │ │ │ ├── sync.py │ │ │ ├── update.py │ │ │ ├── use.py │ │ │ └── venv/ │ │ │ ├── __init__.py │ │ │ ├── activate.py │ │ │ ├── backends.py │ │ │ ├── create.py │ │ │ ├── list.py │ │ │ ├── purge.py │ │ │ ├── remove.py │ │ │ └── utils.py │ │ ├── completions/ │ │ │ ├── __init__.py │ │ │ ├── pdm.bash │ │ │ ├── pdm.fish │ │ │ ├── pdm.ps1 │ │ │ └── pdm.zsh │ │ ├── filters.py │ │ ├── hooks.py │ │ ├── options.py │ │ ├── templates/ │ │ │ ├── __init__.py │ │ │ ├── default/ │ │ │ │ ├── .gitignore │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── pyproject.toml │ │ │ │ ├── src/ │ │ │ │ │ └── example_package/ │ │ │ │ │ └── __init__.py │ │ │ │ └── tests/ │ │ │ │ └── __init__.py │ │ │ └── minimal/ │ │ │ ├── .gitignore │ │ │ ├── __init__.py │ │ │ └── pyproject.toml │ │ └── utils.py │ ├── compat.py │ ├── core.py │ ├── environments/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── local.py │ │ └── python.py │ ├── exceptions.py │ ├── formats/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── flit.py │ │ ├── pipfile.py │ │ ├── poetry.py │ │ ├── pylock.py │ │ ├── requirements.py │ │ ├── setup_py.py │ │ └── uv.py │ ├── installers/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── core.py │ │ ├── installers.py │ │ ├── manager.py │ │ ├── synchronizers.py │ │ ├── uninstallers.py │ │ └── uv.py │ ├── misc/ │ │ ├── __init__.py │ │ └── sysconfig_patcher.py │ ├── models/ │ │ ├── __init__.py │ │ ├── auth.py │ │ ├── backends.py │ │ ├── cached_package.py │ │ ├── caches.py │ │ ├── candidates.py │ │ ├── finder.py │ │ ├── in_process/ │ │ │ ├── __init__.py │ │ │ ├── env_spec.py │ │ │ ├── parse_setup.py │ │ │ └── sysconfig_get_paths.py │ │ ├── markers.py │ │ ├── project_info.py │ │ ├── python.py │ │ ├── python_max_versions.json │ │ ├── reporter.py │ │ ├── repositories/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── lock.py │ │ │ └── pypi.py │ │ ├── requirements.py │ │ ├── search.py │ │ ├── session.py │ │ ├── setup.py │ │ ├── specifiers.py │ │ ├── venv.py │ │ ├── versions.py │ │ └── working_set.py │ ├── pep582/ │ │ ├── __init__.py │ │ └── sitecustomize.py │ ├── project/ │ │ ├── __init__.py │ │ ├── config.py │ │ ├── core.py │ │ ├── lockfile/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── pdmlock.py │ │ │ └── pylock.py │ │ ├── project_file.py │ │ └── toml_file.py │ ├── py.typed │ ├── pytest.py │ ├── resolver/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── graph.py │ │ ├── providers.py │ │ ├── python.py │ │ ├── reporters.py │ │ ├── resolvelib.py │ │ └── uv.py │ ├── signals.py │ ├── termui.py │ └── utils.py ├── tasks/ │ ├── complete.py │ ├── max_versions.py │ └── release.py ├── tests/ │ ├── __init__.py │ ├── cli/ │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_add.py │ │ ├── test_build.py │ │ ├── test_cache.py │ │ ├── test_completion.py │ │ ├── test_config.py │ │ ├── test_fix.py │ │ ├── test_hooks.py │ │ ├── test_info.py │ │ ├── test_init.py │ │ ├── test_install.py │ │ ├── test_list.py │ │ ├── test_lock.py │ │ ├── test_others.py │ │ ├── test_outdated.py │ │ ├── test_publish.py │ │ ├── test_python.py │ │ ├── test_remove.py │ │ ├── test_run.py │ │ ├── test_search.py │ │ ├── test_self_command.py │ │ ├── test_show.py │ │ ├── test_template.py │ │ ├── test_update.py │ │ ├── test_use.py │ │ ├── test_utils.py │ │ └── test_venv.py │ ├── conftest.py │ ├── environments/ │ │ ├── test_environment.py │ │ └── test_shebangs.py │ ├── fixtures/ │ │ ├── Pipfile │ │ ├── __init__.py │ │ ├── artifacts/ │ │ │ ├── PyFunctional-1.4.3-py3-none-any.whl │ │ │ ├── celery-4.4.2-py2.py3-none-any.whl │ │ │ ├── demo-0.0.1-cp36-cp36m-win_amd64.whl │ │ │ ├── demo-0.0.1-py2.py3-none-any.whl │ │ │ ├── editables-0.2-py3-none-any.whl │ │ │ ├── first-2.0.2-py2.py3-none-any.whl │ │ │ ├── flit_core-3.6.0-py3-none-any.whl │ │ │ ├── future_fstrings-1.2.0-py2.py3-none-any.whl │ │ │ ├── importlib_metadata-4.8.3-py3-none-any.whl │ │ │ ├── jmespath-0.10.0-py2.py3-none-any.whl │ │ │ ├── pdm_backend-2.1.4-py3-none-any.whl │ │ │ ├── pdm_hello-0.1.0-py3-none-any.whl │ │ │ ├── pdm_hello-0.1.0-py3-none-win_amd64.whl │ │ │ ├── pdm_pep517-1.0.0-py3-none-any.whl │ │ │ ├── poetry_core-1.3.2-py3-none-any.whl │ │ │ ├── setuptools-68.0.0-py3-none-any.whl │ │ │ ├── typing_extensions-4.4.0-py3-none-any.whl │ │ │ ├── wheel-0.37.1-py2.py3-none-any.whl │ │ │ ├── zipp-3.6.0-py3-none-any.whl │ │ │ └── zipp-3.7.0-py3-none-any.whl │ │ ├── constraints.txt │ │ ├── index/ │ │ │ ├── demo.html │ │ │ ├── future-fstrings.html │ │ │ ├── pep345-legacy.html │ │ │ └── wheel.html │ │ ├── json/ │ │ │ └── zipp.json │ │ ├── poetry-error.toml │ │ ├── poetry-new.toml │ │ ├── projects/ │ │ │ ├── __init__.py │ │ │ ├── demo/ │ │ │ │ ├── demo.py │ │ │ │ ├── pylock.toml │ │ │ │ └── pyproject.toml │ │ │ ├── demo-#-with-hash/ │ │ │ │ ├── demo.py │ │ │ │ └── setup.py │ │ │ ├── demo-combined-extras/ │ │ │ │ ├── demo.py │ │ │ │ └── pyproject.toml │ │ │ ├── demo-failure/ │ │ │ │ ├── demo.py │ │ │ │ └── setup.py │ │ │ ├── demo-failure-no-dep/ │ │ │ │ ├── demo.py │ │ │ │ └── setup.py │ │ │ ├── demo-module/ │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── bar_module.py │ │ │ │ ├── foo_module.py │ │ │ │ └── pyproject.toml │ │ │ ├── demo-package/ │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── data_out.json │ │ │ │ ├── my_package/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── data.json │ │ │ │ ├── pyproject.toml │ │ │ │ ├── requirements.ini │ │ │ │ ├── requirements.txt │ │ │ │ ├── requirements_simple.txt │ │ │ │ ├── setup.txt │ │ │ │ └── single_module.py │ │ │ ├── demo-package-has-dep-with-extras/ │ │ │ │ ├── pyproject.toml │ │ │ │ └── requirements.txt │ │ │ ├── demo-parent-package/ │ │ │ │ ├── README.md │ │ │ │ ├── package-a/ │ │ │ │ │ ├── foo.py │ │ │ │ │ └── setup.py │ │ │ │ └── package-b/ │ │ │ │ ├── bar.py │ │ │ │ └── pyproject.toml │ │ │ ├── demo-prerelease/ │ │ │ │ ├── demo.py │ │ │ │ └── setup.py │ │ │ ├── demo-src-package/ │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── data_out.json │ │ │ │ ├── pyproject.toml │ │ │ │ ├── single_module.py │ │ │ │ └── src/ │ │ │ │ └── my_package/ │ │ │ │ ├── __init__.py │ │ │ │ └── data.json │ │ │ ├── demo_extras/ │ │ │ │ ├── demo.py │ │ │ │ └── setup.py │ │ │ ├── flit-demo/ │ │ │ │ ├── README.rst │ │ │ │ ├── doc/ │ │ │ │ │ └── index.html │ │ │ │ ├── flit.py │ │ │ │ └── pyproject.toml │ │ │ ├── poetry-demo/ │ │ │ │ ├── mylib.py │ │ │ │ └── pyproject.toml │ │ │ ├── poetry-with-circular-dep/ │ │ │ │ ├── packages/ │ │ │ │ │ └── child/ │ │ │ │ │ ├── child/ │ │ │ │ │ │ └── __init__.py │ │ │ │ │ └── pyproject.toml │ │ │ │ ├── parent/ │ │ │ │ │ └── __init__.py │ │ │ │ └── pyproject.toml │ │ │ ├── test-hatch-static/ │ │ │ │ ├── README.md │ │ │ │ └── pyproject.toml │ │ │ ├── test-monorepo/ │ │ │ │ ├── README.md │ │ │ │ ├── core/ │ │ │ │ │ ├── core.py │ │ │ │ │ └── pyproject.toml │ │ │ │ ├── package_a/ │ │ │ │ │ ├── alice.py │ │ │ │ │ └── pyproject.toml │ │ │ │ ├── package_b/ │ │ │ │ │ ├── bob.py │ │ │ │ │ └── pyproject.toml │ │ │ │ └── pyproject.toml │ │ │ ├── test-package-type-fixer/ │ │ │ │ ├── pyproject.toml │ │ │ │ └── src/ │ │ │ │ └── test_package_type_fixer/ │ │ │ │ └── __init__.py │ │ │ ├── test-plugin/ │ │ │ │ ├── hello.py │ │ │ │ └── setup.py │ │ │ ├── test-plugin-pdm/ │ │ │ │ ├── hello.py │ │ │ │ └── pyproject.toml │ │ │ ├── test-removal/ │ │ │ │ ├── __init__.py │ │ │ │ ├── bar.py │ │ │ │ ├── foo.py │ │ │ │ └── subdir/ │ │ │ │ └── __init__.py │ │ │ └── test-setuptools/ │ │ │ ├── AUTHORS │ │ │ ├── README.md │ │ │ ├── mymodule.py │ │ │ ├── setup.cfg │ │ │ └── setup.py │ │ ├── pypi.json │ │ ├── pyproject.toml │ │ ├── requirements-include.txt │ │ └── requirements.txt │ ├── models/ │ │ ├── __init__.py │ │ ├── test_backends.py │ │ ├── test_candidates.py │ │ ├── test_marker.py │ │ ├── test_requirements.py │ │ ├── test_session.py │ │ ├── test_setup_parsing.py │ │ ├── test_setup_parsing_extra.py │ │ ├── test_specifiers.py │ │ └── test_versions.py │ ├── resolver/ │ │ ├── __init__.py │ │ ├── test_graph.py │ │ ├── test_resolve.py │ │ └── test_uv_resolver.py │ ├── test_formats.py │ ├── test_installer.py │ ├── test_integration.py │ ├── test_plugin.py │ ├── test_project.py │ ├── test_signals.py │ └── test_utils.py ├── tox.ini └── typings/ └── shellingham.pyi