# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg

# PyInstaller
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/

# Translations
*.mo
*.pot

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

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

# macOS
.DS_Store
.AppleDouble
.LSOverride

# Telegram Forwarder specific
# Session files (contain auth tokens - DO NOT COMMIT)
*.session
*.session-journal

# Config with credentials
config.json

# Route configs (except example)
# Scoped to the repo root: blanket `*.yaml` also swallowed
# .github/workflows/*.yml siblings, docs/**/*.yaml and YAML test fixtures
# (PKG-04), which is how CI config kept failing to be committed.
/*.yaml
!/routes.example.yaml
!/jobs.example.yaml

# Job state and logs
jobs.json
logs/

# Local config directory (if created in project)
.telegram-forwarder/
.tlgr/

# TOML configs with secrets
webhook.toml
jobs.toml

.cursor/