# If you prefer the allow list template instead of the deny list, see community template:
# https://github.com/github/gitignore/blob/main/community/Golang/Go.AllowList.gitignore
#
# Binaries for programs and plugins
*.exe
*.exe~
*.dll
*.so
*.dylib

# Test binary, built with `go test -c`
*.test

# Code coverage profiles and other test artifacts
*.out
coverage.*
*.coverprofile
profile.cov

# Dependency directories (remove the comment below to include it)
# vendor/

# Go workspace file
go.work
go.work.sum

# env file
.env

# Editor/IDE
# .idea/
# .vscode/

.DS_Store

# Local-only working notes — never share via git.
# TODO.md is the personal punch-list; treated like a scratchpad,
# not a docs artifact. Use issues / PR descriptions for anything
# meant for other contributors.
TODO.md

# bench harnesses: commit the code + Makefiles, ignore generated data,
# reports, CSVs, and corpora. Each bench/corpora/<NAME>/data/ is
# populated by `make -C bench data` (or per-corpus `make data`).
bench/corpora/**/data/
bench/corpora/**/REPORT*.md
bench/corpora/**/results*.csv
bench/corpora/**/*.jsonl
bench/REPORT_MATRIX.md
bench/results_matrix.csv

.venv*
bench-go-lib/*

# Developer-only shared libraries (libonnxruntime, libtokenizers etc.)
# staged for test invocation. See ner_gliner_test.go for how it's used.
.tokenlib/

# GLiNER debug log (set via recognizers.GLiNERDebug = true).
gliner_debug.log

# Per-session Claude memory: cross-session findings kept local, not shared
# via git. CLAUDE.md (committed) points at this dir for the local session
# to load; populate via .claude/sync_memory.sh (also committed).
.claude/memory/
.claude/worktrees/
.claude/scheduled_tasks.lock
.claude/settings.local.json

# Python bytecode caches
__pycache__/
*.pyc
