pyagentic-core 2.3.0a4__tar.gz → 2.3.0a12__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. pyagentic_core-2.3.0a12/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
  2. pyagentic_core-2.3.0a12/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  3. pyagentic_core-2.3.0a12/.github/workflows/docs.yml +42 -0
  4. pyagentic_core-2.3.0a12/.github/workflows/release.yml +120 -0
  5. pyagentic_core-2.3.0a12/.github/workflows/testing.yml +37 -0
  6. pyagentic_core-2.3.0a12/.gitignore +172 -0
  7. pyagentic_core-2.3.0a12/CHANGELOG.md +361 -0
  8. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/PKG-INFO +9 -2
  9. pyagentic_core-2.3.0a12/docs/agent-linking.md +233 -0
  10. pyagentic_core-2.3.0a12/docs/deploy/building.md +166 -0
  11. pyagentic_core-2.3.0a12/docs/deploy/creating-a-project.md +169 -0
  12. pyagentic_core-2.3.0a12/docs/deploy/index.md +43 -0
  13. pyagentic_core-2.3.0a12/docs/deploy/running.md +155 -0
  14. pyagentic_core-2.3.0a12/docs/diagrams/declaration.svg +102 -0
  15. pyagentic_core-2.3.0a12/docs/diagrams/instantiation.svg +102 -0
  16. pyagentic_core-2.3.0a12/docs/diagrams/runtime.svg +111 -0
  17. pyagentic_core-2.3.0a12/docs/diagrams/source/README.md +49 -0
  18. pyagentic_core-2.3.0a12/docs/diagrams/source/declaration.d2 +369 -0
  19. pyagentic_core-2.3.0a12/docs/diagrams/source/instantiation.d2 +238 -0
  20. pyagentic_core-2.3.0a12/docs/diagrams/source/runtime.d2 +264 -0
  21. pyagentic_core-2.3.0a12/docs/execution-modes.md +221 -0
  22. pyagentic_core-2.3.0a12/docs/getting-started.md +589 -0
  23. pyagentic_core-2.3.0a12/docs/images/langfuse.png +0 -0
  24. pyagentic_core-2.3.0a12/docs/index.md +120 -0
  25. pyagentic_core-2.3.0a12/docs/inheritance.md +143 -0
  26. pyagentic_core-2.3.0a12/docs/observability.md +133 -0
  27. pyagentic_core-2.3.0a12/docs/phases.md +231 -0
  28. pyagentic_core-2.3.0a12/docs/policies.md +434 -0
  29. pyagentic_core-2.3.0a12/docs/reference/architecture.md +230 -0
  30. pyagentic_core-2.3.0a12/docs/reference/modules.md +50 -0
  31. pyagentic_core-2.3.0a12/docs/responses.md +90 -0
  32. pyagentic_core-2.3.0a12/docs/states.md +494 -0
  33. pyagentic_core-2.3.0a12/docs/structured-output.md +212 -0
  34. pyagentic_core-2.3.0a12/docs/tools.md +387 -0
  35. pyagentic_core-2.3.0a12/mkdocs.yml +87 -0
  36. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_agent/_agent.py +12 -28
  37. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_metaclasses.py +109 -1
  38. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_tool.py +5 -1
  39. pyagentic_core-2.3.0a12/pyagentic/_version_scheme.py +42 -0
  40. pyagentic_core-2.3.0a12/pyagentic/cli/__init__.py +28 -0
  41. pyagentic_core-2.3.0a12/pyagentic/cli/__main__.py +7 -0
  42. pyagentic_core-2.3.0a12/pyagentic/cli/_build.py +55 -0
  43. pyagentic_core-2.3.0a12/pyagentic/cli/_init.py +176 -0
  44. pyagentic_core-2.3.0a12/pyagentic/cli/_publish.py +100 -0
  45. pyagentic_core-2.3.0a12/pyagentic/cli/_run.py +102 -0
  46. pyagentic_core-2.3.0a12/pyagentic/cli/_templates.py +138 -0
  47. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/llm/_openai.py +2 -45
  48. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/llm/_provider.py +0 -4
  49. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/models/llm.py +1 -6
  50. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/models/response.py +2 -20
  51. pyagentic_core-2.3.0a12/pyagentic/serve/__init__.py +30 -0
  52. pyagentic_core-2.3.0a12/pyagentic/serve/_agent_ref.py +569 -0
  53. pyagentic_core-2.3.0a12/pyagentic/serve/_app.py +208 -0
  54. pyagentic_core-2.3.0a12/pyagentic/serve/_client_session.py +198 -0
  55. pyagentic_core-2.3.0a12/pyagentic/serve/_discovery.py +47 -0
  56. pyagentic_core-2.3.0a12/pyagentic/serve/_docker.py +123 -0
  57. pyagentic_core-2.3.0a12/pyagentic/serve/_exceptions.py +59 -0
  58. pyagentic_core-2.3.0a12/pyagentic/serve/_manifest.py +121 -0
  59. pyagentic_core-2.3.0a12/pyagentic/serve/_sessions.py +100 -0
  60. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic_core.egg-info/PKG-INFO +9 -2
  61. pyagentic_core-2.3.0a12/pyagentic_core.egg-info/SOURCES.txt +114 -0
  62. pyagentic_core-2.3.0a12/pyagentic_core.egg-info/entry_points.txt +2 -0
  63. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic_core.egg-info/requires.txt +9 -1
  64. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyproject.toml +21 -45
  65. pyagentic_core-2.3.0a12/setup.py +45 -0
  66. pyagentic_core-2.3.0a12/tests/__init__.py +0 -0
  67. pyagentic_core-2.3.0a12/tests/_base/__init__.py +0 -0
  68. pyagentic_core-2.3.0a12/tests/_base/test_agent.py +136 -0
  69. pyagentic_core-2.3.0a12/tests/_base/test_agent_inheritance.py +162 -0
  70. pyagentic_core-2.3.0a12/tests/_base/test_agent_linking.py +291 -0
  71. pyagentic_core-2.3.0a12/tests/_base/test_agent_provider.py +57 -0
  72. pyagentic_core-2.3.0a12/tests/_base/test_params.py +106 -0
  73. pyagentic_core-2.3.0a12/tests/_base/test_phases.py +724 -0
  74. pyagentic_core-2.3.0a12/tests/_base/test_state.py +201 -0
  75. pyagentic_core-2.3.0a12/tests/_base/test_tool.py +483 -0
  76. pyagentic_core-2.3.0a12/tests/_base/test_validator.py +82 -0
  77. pyagentic_core-2.3.0a12/tests/conftest.py +103 -0
  78. pyagentic_core-2.3.0a12/tests/models/test_responses.py +87 -0
  79. pyagentic_core-2.3.0a12/tests/tracing/__init__.py +0 -0
  80. pyagentic_core-2.3.0a12/tests/tracing/test_basic_tracer.py +289 -0
  81. pyagentic_core-2.3.0a12/tests/tracing/test_models.py +220 -0
  82. pyagentic_core-2.3.0a12/tests/tracing/test_tracer.py +338 -0
  83. pyagentic_core-2.3.0a12/uv.lock +2880 -0
  84. pyagentic_core-2.3.0a4/pyagentic/_utils/_image.py +0 -20
  85. pyagentic_core-2.3.0a4/pyagentic_core.egg-info/SOURCES.txt +0 -44
  86. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/LICENSE +0 -0
  87. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/README.md +0 -0
  88. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/__init__.py +0 -0
  89. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/__init__.py +0 -0
  90. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_agent/__init__.py +0 -0
  91. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_agent/_agent_linking.py +0 -0
  92. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_agent/_agent_state.py +0 -0
  93. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_exceptions.py +0 -0
  94. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_info.py +0 -0
  95. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_ref.py +0 -0
  96. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_spec.py +0 -0
  97. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_state.py +0 -0
  98. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_base/_validation.py +0 -0
  99. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_utils/_typing.py +0 -0
  100. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/_utils/_warnings.py +0 -0
  101. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/llm/__init__.py +0 -0
  102. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/llm/_anthropic.py +0 -0
  103. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/llm/_gemini.py +0 -0
  104. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/llm/_mock.py +0 -0
  105. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/llm/_openaiv1.py +0 -0
  106. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/logging.py +0 -0
  107. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/models/tracing.py +0 -0
  108. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/policies/__init__.py +0 -0
  109. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/policies/_events.py +0 -0
  110. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/policies/_policy.py +0 -0
  111. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/tracing/__init__.py +0 -0
  112. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/tracing/_basic.py +0 -0
  113. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/tracing/_langfuse.py +0 -0
  114. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/tracing/_tracer.py +0 -0
  115. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic/updates.py +0 -0
  116. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic_core.egg-info/dependency_links.txt +0 -0
  117. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/pyagentic_core.egg-info/top_level.txt +0 -0
  118. {pyagentic_core-2.3.0a4 → pyagentic_core-2.3.0a12}/setup.cfg +0 -0
@@ -0,0 +1,38 @@
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Describe the bug**
11
+ A clear and concise description of what the bug is.
12
+
13
+ **To Reproduce**
14
+ Steps to reproduce the behavior:
15
+ 1. Go to '...'
16
+ 2. Click on '....'
17
+ 3. Scroll down to '....'
18
+ 4. See error
19
+
20
+ **Expected behavior**
21
+ A clear and concise description of what you expected to happen.
22
+
23
+ **Screenshots**
24
+ If applicable, add screenshots to help explain your problem.
25
+
26
+ **Desktop (please complete the following information):**
27
+ - OS: [e.g. iOS]
28
+ - Browser [e.g. chrome, safari]
29
+ - Version [e.g. 22]
30
+
31
+ **Smartphone (please complete the following information):**
32
+ - Device: [e.g. iPhone6]
33
+ - OS: [e.g. iOS8.1]
34
+ - Browser [e.g. stock browser, safari]
35
+ - Version [e.g. 22]
36
+
37
+ **Additional context**
38
+ Add any other context about the problem here.
@@ -0,0 +1,20 @@
1
+ ---
2
+ name: Feature request
3
+ about: Suggest an idea for this project
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Is your feature request related to a problem? Please describe.**
11
+ A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12
+
13
+ **Describe the solution you'd like**
14
+ A clear and concise description of what you want to happen.
15
+
16
+ **Describe alternatives you've considered**
17
+ A clear and concise description of any alternative solutions or features you've considered.
18
+
19
+ **Additional context**
20
+ Add any other context or screenshots about the feature request here.
@@ -0,0 +1,42 @@
1
+ name: Build & Deploy Docs
2
+
3
+ on:
4
+ push:
5
+ branches: [ "main" ]
6
+
7
+ permissions:
8
+ contents: write # Allow push to repo
9
+
10
+ jobs:
11
+ docs:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - uses: actions/checkout@v4
15
+
16
+ - name: Setup Python
17
+ uses: actions/setup-python@v5
18
+ with:
19
+ python-version: "3.12"
20
+
21
+ - name: Install uv
22
+ run: python -m pip install --upgrade pip uv
23
+
24
+ - name: Install D2
25
+ run: curl -fsSL https://d2lang.com/install.sh | sh -s --
26
+
27
+ - name: Add D2 to PATH
28
+ run: echo "$HOME/.local/bin" >> $GITHUB_PATH
29
+
30
+ - name: Verify D2
31
+ run: d2 --version
32
+
33
+ - name: Install dependencies
34
+ run: uv sync --group docs
35
+
36
+ - name: Build docs
37
+ run: uv run task build-docs
38
+
39
+ - name: Deploy to GitHub Pages
40
+ run: uv run task deploy-docs
41
+ env:
42
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,120 @@
1
+ name: Continuous Delivery
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - 'main'
7
+ - 'dev'
8
+ - 'feat/**'
9
+ - 'bug/**'
10
+ - 'fix/**'
11
+
12
+
13
+ # default: least privileged permissions across all jobs
14
+ permissions:
15
+ contents: read
16
+
17
+ jobs:
18
+ release:
19
+ runs-on: ubuntu-latest
20
+ concurrency:
21
+ group: ${{ github.workflow }}-release-${{ github.ref_name }}
22
+ cancel-in-progress: false
23
+
24
+ outputs:
25
+ version: ${{ steps.version.outputs.version }}
26
+ released: ${{ steps.tag_check.outputs.exists == 'false' }}
27
+
28
+ permissions:
29
+ contents: write
30
+
31
+ steps:
32
+ - name: Setup | Checkout Repository
33
+ uses: actions/checkout@v4
34
+ with:
35
+ ref: ${{ github.ref_name }}
36
+ fetch-depth: 0
37
+ fetch-tags: true
38
+
39
+ - name: Setup | Force branch to workflow sha
40
+ run: git reset --hard ${{ github.sha }}
41
+
42
+ - name: Setup | Install Python
43
+ uses: actions/setup-python@v5
44
+ with:
45
+ python-version: '3.13'
46
+
47
+ - name: Setup | Install uv
48
+ uses: astral-sh/setup-uv@v6
49
+
50
+ - name: Setup | Install dependencies
51
+ run: uv sync --group dev
52
+
53
+ - name: Build | Create distribution
54
+ run: uv build
55
+
56
+ - name: Version | Extract version from build
57
+ id: version
58
+ run: |
59
+ VERSION=$(uv run python -c "from importlib.metadata import version; print(version('pyagentic-core'))")
60
+ echo "version=$VERSION" >> "$GITHUB_OUTPUT"
61
+ echo "Computed version: $VERSION"
62
+
63
+ - name: Tag | Check if tag exists
64
+ id: tag_check
65
+ run: |
66
+ if git rev-parse "${{ steps.version.outputs.version }}" >/dev/null 2>&1; then
67
+ echo "exists=true" >> "$GITHUB_OUTPUT"
68
+ else
69
+ echo "exists=false" >> "$GITHUB_OUTPUT"
70
+ fi
71
+
72
+ - name: Tag | Create and push git tag
73
+ if: steps.tag_check.outputs.exists == 'false'
74
+ run: |
75
+ git config user.name "github-actions"
76
+ git config user.email "actions@users.noreply.github.com"
77
+ git tag -a "${{ steps.version.outputs.version }}" -m "Release ${{ steps.version.outputs.version }}"
78
+ git push origin "${{ steps.version.outputs.version }}"
79
+
80
+ - name: Release | Create GitHub Release
81
+ if: steps.tag_check.outputs.exists == 'false'
82
+ uses: softprops/action-gh-release@v2
83
+ with:
84
+ tag_name: "${{ steps.version.outputs.version }}"
85
+ generate_release_notes: true
86
+ prerelease: ${{ github.ref_name != 'main' }}
87
+ files: dist/*
88
+
89
+ - name: Upload | Distribution Artifacts
90
+ if: steps.tag_check.outputs.exists == 'false'
91
+ uses: actions/upload-artifact@v4
92
+ with:
93
+ name: distribution-artifacts
94
+ path: dist
95
+ if-no-files-found: error
96
+
97
+ deploy:
98
+ runs-on: ubuntu-latest
99
+ needs: release
100
+ if: ${{ needs.release.outputs.released == 'true' }}
101
+
102
+ permissions:
103
+ contents: read
104
+ id-token: write
105
+
106
+ steps:
107
+ - name: Setup | Download Build Artifacts
108
+ uses: actions/download-artifact@v4
109
+ id: artifact-download
110
+ with:
111
+ name: distribution-artifacts
112
+ path: dist
113
+
114
+ # see https://docs.pypi.org/trusted-publishers/
115
+ - name: Publish | Upload to PyPI
116
+ uses: pypa/gh-action-pypi-publish@v1.12.4
117
+ with:
118
+ packages-dir: dist
119
+ print-hash: true
120
+ verbose: true
@@ -0,0 +1,37 @@
1
+ name: Tests
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ test:
7
+ runs-on: ubuntu-latest
8
+ strategy:
9
+ matrix:
10
+ python-version: ["3.13"]
11
+
12
+ steps:
13
+ - uses: actions/checkout@v4
14
+
15
+ - name: Setup Python
16
+ uses: actions/setup-python@v5
17
+ with:
18
+ python-version: ${{ matrix.python-version }}
19
+
20
+ - name: Install uv
21
+ run: python -m pip install --upgrade pip uv
22
+
23
+ - name: Install dependencies
24
+ # uv sync installs everything from pyproject.toml/uv.lock;
25
+ # --all-groups pulls in both main and dev deps
26
+ run: uv sync
27
+
28
+ - name: Test with pytest
29
+ # run pytest inside uv’s managed environment
30
+ run: uv run pytest ./tests
31
+
32
+ - name: Upload pytest test results
33
+ uses: actions/upload-artifact@v4
34
+ if: ${{ always() }}
35
+ with:
36
+ name: pytest-results-${{ matrix.python-version }}
37
+ path: junit/test-results-${{ matrix.python-version }}.xml
@@ -0,0 +1,172 @@
1
+ # Any DB or Notebooks
2
+ *.db
3
+ *.ipynb
4
+
5
+ # uv.lock - This will be handled by semantic-release
6
+ ./uv.lock
7
+
8
+ # Byte-compiled / optimized / DLL files
9
+ __pycache__/
10
+ *.py[cod]
11
+ *$py.class
12
+
13
+ # C extensions
14
+ *.so
15
+
16
+ # Distribution / packaging
17
+ .Python
18
+ build/
19
+ develop-eggs/
20
+ dist/
21
+ downloads/
22
+ eggs/
23
+ .eggs/
24
+ lib/
25
+ lib64/
26
+ parts/
27
+ sdist/
28
+ var/
29
+ wheels/
30
+ share/python-wheels/
31
+ *.egg-info/
32
+ .installed.cfg
33
+ *.egg
34
+ MANIFEST
35
+
36
+ # PyInstaller
37
+ # Usually these files are written by a python script from a template
38
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
39
+ *.manifest
40
+ *.spec
41
+
42
+ # Installer logs
43
+ pip-log.txt
44
+ pip-delete-this-directory.txt
45
+
46
+ # Unit test / coverage reports
47
+ htmlcov/
48
+ .tox/
49
+ .nox/
50
+ .coverage
51
+ .coverage.*
52
+ .cache
53
+ nosetests.xml
54
+ coverage.xml
55
+ *.cover
56
+ *.py,cover
57
+ .hypothesis/
58
+ .pytest_cache/
59
+ cover/
60
+
61
+ # Translations
62
+ *.mo
63
+ *.pot
64
+
65
+ # Django stuff:
66
+ *.log
67
+ local_settings.py
68
+ db.sqlite3
69
+ db.sqlite3-journal
70
+
71
+ # Flask stuff:
72
+ instance/
73
+ .webassets-cache
74
+
75
+ # Scrapy stuff:
76
+ .scrapy
77
+
78
+ # Sphinx documentation
79
+ docs/_build/
80
+
81
+ # PyBuilder
82
+ .pybuilder/
83
+ target/
84
+
85
+ # Jupyter Notebook
86
+ .ipynb_checkpoints
87
+
88
+ # IPython
89
+ profile_default/
90
+ ipython_config.py
91
+
92
+ # pyenv
93
+ # For a library or package, you might want to ignore these files since the code is
94
+ # intended to run in multiple environments; otherwise, check them in:
95
+ # .python-version
96
+
97
+ # pipenv
98
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
99
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
100
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
101
+ # install all needed dependencies.
102
+ #Pipfile.lock
103
+
104
+ # poetry
105
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
106
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
107
+ # commonly ignored for libraries.
108
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
109
+ #poetry.lock
110
+
111
+ # pdm
112
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
113
+ #pdm.lock
114
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
115
+ # in version control.
116
+ # https://pdm.fming.dev/latest/usage/project/#working-with-version-control
117
+ .pdm.toml
118
+ .pdm-python
119
+ .pdm-build/
120
+
121
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
122
+ __pypackages__/
123
+
124
+ # Celery stuff
125
+ celerybeat-schedule
126
+ celerybeat.pid
127
+
128
+ # SageMath parsed files
129
+ *.sage.py
130
+
131
+ # Environments
132
+ .env
133
+ .venv
134
+ env/
135
+ venv/
136
+ ENV/
137
+ env.bak/
138
+ venv.bak/
139
+
140
+ # Spyder project settings
141
+ .spyderproject
142
+ .spyproject
143
+
144
+ # Rope project settings
145
+ .ropeproject
146
+
147
+ # mkdocs documentation
148
+ /site
149
+
150
+ # Generated diagrams (compiled from .d2 sources)
151
+ docs/diagrams/*.svg
152
+
153
+ # mypy
154
+ .mypy_cache/
155
+ .dmypy.json
156
+ dmypy.json
157
+
158
+ # Pyre type checker
159
+ .pyre/
160
+
161
+ # pytype static type analyzer
162
+ .pytype/
163
+
164
+ # Cython debug symbols
165
+ cython_debug/
166
+
167
+ # PyCharm
168
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
169
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
170
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
171
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
172
+ #.idea/