# Python-specific .gitignore
# Created by merging your project files and keeping only Python-relevant rules.
# Kept per-project entries: .autoheader_cache, _version.py, test env files.
#
# Notes:
# - Removed Node/JS, Composer/PHP, and other language-specific ignores.
# - DID NOT ignore data/ datasets/ raw_data/ processed_data/ output/ results/ archive/
#   (these are often used in Python projects and should be tracked unless you want them ignored).

# === Virtual environments ===
# common venv directories
venv/
.venv/
env/
myenv/
__pypackages__/

# === Python caches / bytecode / compiled ===
__pycache__/
*.py[cod]
*$py.class
*.pyc
*.pyo
*.pyd

# C extensions, wheels, build outputs
*.so
*.pyd
*.egg
*.whl

# pip / build metadata
pip-wheel-metadata/
*.egg-info/
build/
dist/
build/lib*/

# === Python env & local settings ===
.env
.env.*
.env.local
.env.test
.envrc
local.settings.json

# pyenv / python-version tooling
.python-version
.tool-versions
*.pyenv

# === Testing / coverage / CI artifacts ===
.pytest_cache/
.coverage
coverage/
coverage.xml
htmlcov/
.mypy_cache/
.tox/
.nox/
.cache/

# Keep explicit test env files from your project
tests/integration/test.env
tests/e2e/e2e.env

# === Notebooks / Jupyter ===
.ipynb_checkpoints/
*.ipynb_checkpoints
jupyter_runtime/
runtime/
.nbgrader/

# === IDE / Editor files & OS metadata ===
.vscode/
.idea/
.ropeproject/
.project
.classpath
.settings/
*.sublime-project
*.sublime-workspace

# Mac/Windows system files
.DS_Store
Thumbs.db
desktop.ini
.Spotlight-V100
.Trashes
ehthumbs.db

# Editor backup / swap
*~
.#*
*.swp

# === Secrets / credentials (DO NOT COMMIT) ===
secrets.json
credentials
credentials.json
.netrc
*.secret
*.key
*.pem
*.crt
*.der
*.p12
private.key
keys.json
token.json

# SSH / GPG / vault
.ssh/
.ssh/id_*
.gnupg/
.vault/

# Docker related (useful when projects include Dockerfiles)
.docker/
.docker/config.json
docker-compose.override.yml
.dockerignore

# Terraform / infra state (optional but common)
.terraform/
*.tfstate*
*.tfstate.backup

# === Logs / temp / local artifacts ===
*.log
*.log.*
*.tmp
*.bak
*.swp
*.sqlite
*.db
*.sqlite3
*.sqlite3-journal
*.lcov
*.gz

# === Archives / build artifacts you might not want in VCS ===
*.tar.gz
*.zip
*.tar
*.7z
*.msi

# === Package managers / metadata (Python only)
.pypirc

# === Project/tool-specific entries seen in your repos ===
.autoheader_cache
_version.py

# Special patterns used by your projects (kept because they were explicit in your repos)
safe_toolchain*.jso*
*_progress.json
*_all_code_dump_*.*
bot_platform_all_code_dump_*.*
*_all_create_dump_*.*
*_create_dump_*

# Optional lockfiles (uncomment if you want to ignore them)
# package-lock.json
# yarn.lock
# Pipfile.lock
# poetry.lock

# End with a newline