# Python
.env
*.pyc
**/.ipynb_checkpoints/
.pytype/
**/__pycache__/**

# Visual Studio files
.vs/
.vscode/
*.sdf
*.opensdf
*.VC.opendb
*.suo
*.user
*.code-workspace

# macOS files
.DS_Store

# CMake artifacts
build/
build-*/
Testing/
# Include iree.build package
!compiler/bindings/python/iree/compiler/build/

# Bazel artifacts
**/bazel-*

# Executables
*.exe
*.out

# Local-only config options
configured.bazelrc
user.bazelrc
version_info.json
version_local.json
CMakeUserPresets.json

# Dear ImGui Ini files
imgui.ini

# Emacs autosaves
*~
\#*\#

# Vim swap files
[._]*.sw[a-p]

# Source indexing files
compile_commands.json
.cache/clangd

# Language server configuration files
.clangd

# Pyenv files
.python-version
*.venv
.venv

# Python deployment artifacts
*.whl
*.egg-info

# Android Studio / Gradle files
.cxx
.gradle
gradlew
gradlew.bat
gradle/
local.properties

# Generated documentation files
mkdocs/site/
docs/website/site/

# Temporary files
iree/builtins/**/bin/*.ll
artifacts/

# Archive files
*.tar
*.tar.*

# VS Code DevContainer
.devcontainer/docker-compose.yml

# Local cache files
llvm-external-projects/iree-dialects/.cache

# pkgci artifacts
artifacts/

# Side effects of local patching/merging
*.orig
*.rej
