# 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/
wheelhouse/
*.egg-info/
.installed.cfg
*.egg

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

# PyInstaller
#  Usually these files are written by a python script from a template
#  before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

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

# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
target/

# Jupyter Notebook
.ipynb_checkpoints

# python
.python-version

# celery beat schedule file
celerybeat-schedule

# SageMath parsed files
*.sage.py

# dotenv
.env

# virtualenv. `.venv*/` and not `.venv`: a suffix makes a different name,
# and `UV_PROJECT_ENVIRONMENT=.venv-3.10 uv run --python 3.10 --no-cache
# pytest` -- CONTRIBUTING.md's other-interpreter run, kept from replacing
# the default environment -- creates one. Nothing downstream catches it: uv
# writes a `.gitignore` holding `*` inside the environment, so `git status`
# is clean, while hatchling reads this file alone and ships the directory in
# the sdist, where `bin/python` is a link to an absolute path that `pyroma`
# refuses to extract
.venv*/
venv*/
ENV/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/

# vscode: the workspace files are tracked, and the rest of what the editor
# writes there is not. The directory itself cannot be the pattern -- git does
# not descend into an excluded directory, so a negation under `.vscode/` never
# matches -- which is why this excludes the contents and re-admits two names
.vscode/*
!.vscode/settings.json
!.vscode/extensions.json

# PyCharm
.idea/

# MACOS
.DS_Store
btclib.prof

_site/
.sass-cache/
Gemfile.lock
~*.docx

**/_btclib_secp256k1.*
# ... but the hand-written type stub of the extension is source
!stubs/_btclib_secp256k1.pyi
*.o
*.dll
*.so
*.dylib

.pytest_cache/
# ruff drops a .gitignore of its own inside .ruff_cache: that only hides
# the cache once ruff has created it, and says nothing to a tree where
# the directory does not exist yet
.ruff_cache/
