# Build output. Everything in the repository is source; nothing generated is
# committed, so a fresh clone plus `tools/check.sh` is the whole story.

# --- C++
cpp/build/
*.o
*.a
*.so
*.dylib
*.dll
*.exe
# CMake, if you build that way instead of with the Makefile
cpp/cmake-build*/
CMakeCache.txt
CMakeFiles/
cmake_install.cmake
CTestTestfile.cmake
Testing/

# --- Common Lisp
# ASDF normally caches fasls under ~/.cache/common-lisp, but some setups keep
# them beside the source.
*.fasl
*.fas
*.lib
*.dx32fsl
*.dx64fsl
*.lx32fsl
*.lx64fsl
.cache/
# A saved core, if anyone builds one to speed the wrappers up
lisp/bin/*.core

# --- PHP and JS
# Neither implementation has runtime dependencies, but a consumer or a local
# `composer install` still produces these.
vendor/
node_modules/
composer.lock
package-lock.json
*.tgz

# --- Package manager build output
# Conan and vcpkg both build out of tree; these are their defaults.
cpp/test_package/build/
# Conan's CMakeToolchain writes this next to any conanfile it is run against,
# including the test package. Generated, not source.
CMakeUserPresets.json
conan.lock
CONAN_*
vcpkg_installed/

# --- Harness scratch
# tools/*.sh work in mktemp directories, so nothing should land here — these are
# for the times you run a tool by hand.
*.selc
oracle.txt
programs.json
/tmp-*

# --- Editors, tools and OS
.DS_Store
Thumbs.db
*.swp
*.swo
*~
\#*\#
.\#*
.idea/
.vscode/
*.sublime-workspace

# --- Rescue and patch debris
# An abandoned edit once left a zero-byte js/src/eval.mjs.orig behind, and
# `git add -A` committed it into a tagged release. npm happens to exclude *.orig
# by default, but Packagist, vcpkg and every GitHub source tarball ship the git
# tree verbatim, so it reached those. These patterns are the cheap insurance.
*.orig
*.bak
*.rej
*.tmp
*.old
*.save
*.patch
*.diff
*.log

# --- Generated JS bundle
# Built by `npm run build` and by prepublishOnly; never committed. A generated
# file in version control is a file that goes stale.
dist/

# Python
__pycache__/
*.py[cod]
*.egg-info/
python/.venv-wheel/
# `python -m build` writes here; dist/ itself already holds the JS bundle, so
# the Python artefacts are kept in their own subdirectory (see PACKAGING.md).
dist/python/
.pytest_cache/
