# ==================================
# ====== General Python Files ======
# ==================================
**/__pycache__/
**/*.py[cod]
**/*$py.class
**/*.so
**/.Python

# ==================================
# ===== Virtual Environments =======
# ==================================
**/env/
**/.venv/

# ==================================
# == Build/Distribution Artifacts ==
# ==================================
**/build/
**/develop-eggs/
**/dist/
**/downloads/
**/eggs/
**/.eggs/
**/lib64/
**/parts/
**/sdist/
**/var/
**/*.egg-info/
**/.installed.cfg
**/*.egg

# ==================================
# ========= Secrets/Env ============
# ==================================
# Ensure all .env files are ignored globally
**/.env
**/.env.*
# But allow example environment files
!**/.env.example

# ==================================
# ============= Caches =============
# ==================================
**/.ruff_cache/
**/.pytest_cache/
**/.mypy_cache/

# ==================================
# ============== PDM ===============
# ==================================
# pdm.lock should typically be committed, so it's not listed here.
**/.pdm-python
**/.pdm-build/
**/__pypackages__/

# ==================================
# ============= Logs ===============
# ==================================
**/logs/
**/*.log

# ==================================
# =========== Testing ==============
# ==================================
**/.coverage
**/htmlcov/

# ==================================
# ============== IDE ===============
# ==================================
.idea/
.vscode/
*.swp
*.swo

# ==================================
# =============== OS ===============
# ==================================
.DS_Store
Thumbs.db

# ==================================
# ========= Debug Output ==========
# ==================================
**/debug_output/
**/test_output/
**/.test_output/
**/.jentic/

# ==================================
# ==== Ignore Original Files ====
# ==================================
# Ignore the .gitignore files in subdirectories now that we have a top-level one.
/python/.gitignore
/mcp/.gitignore
