| ##### | |
| # First, rules intended to apply in all subdirectories. | |
| # These contain no slash, or only a trailing slash. | |
| *.cover | |
| *.iml | |
| *.o | |
| *.o.tmp | |
| *.lto | |
| *.a | |
| *.so | |
| *.so.* | |
| *.dylib | |
| *.dSYM | |
| *.dll | |
| *.wasm | |
| *.orig | |
| *.pyc | |
| *.pyd | |
| *.pyo | |
| *.rej | |
| *.swp | |
| *~ | |
| *.gc?? | |
| *.profclang? | |
| *.profraw | |
| # Copies of binaries before BOLT optimizations. | |
| *.prebolt | |
| # BOLT profile data. | |
| *.fdata | |
| *.dyn | |
| .gdb_history | |
| .purify | |
| __pycache__ | |
| .hg/ | |
| .svn/ | |
| .idea/ | |
| tags | |
| TAGS | |
| .vs/ | |
| .vscode/ | |
| .cache/ | |
| gmon.out | |
| .coverage | |
| .mypy_cache/ | |
| .pytest_cache/ | |
| .ruff_cache/ | |
| .DS_Store | |
| .pixi/ | |
| *.exe | |
| # Ignore core dumps... but not .../core/ subdirectories | |
| core | |
| !core/ | |
| ##### | |
| # Then, rules meant for a specific location relative to the repo root. | |
| # These must contain a non-trailing slash (and may also have a trailing slash.) | |
| Doc/build/ | |
| Doc/venv/ | |
| Doc/.venv/ | |
| Doc/env/ | |
| Doc/.env/ | |
| Include/pydtrace_probes.h | |
| Lib/site-packages/* | |
| !Lib/site-packages/README.txt | |
| Lib/test/data/* | |
| !Lib/test/data/README | |
| /_bootstrap_python | |
| /Makefile | |
| /Makefile.pre | |
| /iOSTestbed.* | |
| Apple/iOS/Frameworks/ | |
| Apple/iOS/Resources/Info.plist | |
| Apple/testbed/build | |
| Apple/testbed/Python.xcframework/*/bin | |
| Apple/testbed/Python.xcframework/*/include | |
| Apple/testbed/Python.xcframework/*/lib | |
| Apple/testbed/Python.xcframework/*/Python.framework | |
| Apple/testbed/*Testbed.xcodeproj/project.xcworkspace | |
| Apple/testbed/*Testbed.xcodeproj/xcuserdata | |
| Mac/Makefile | |
| Mac/PythonLauncher/Info.plist | |
| Mac/PythonLauncher/Makefile | |
| Mac/PythonLauncher/Python Launcher | |
| Mac/PythonLauncher/Python Launcher.app/* | |
| Mac/Resources/app/Info.plist | |
| Mac/Resources/framework/Info.plist | |
| Mac/pythonw | |
| /*.framework/ | |
| Misc/python.pc | |
| Misc/python-embed.pc | |
| Misc/python-config.sh | |
| Modules/Setup.bootstrap | |
| Modules/Setup.config | |
| Modules/Setup.local | |
| Modules/Setup.stdlib | |
| Modules/config.c | |
| Modules/ld_so_aix | |
| Programs/_freeze_module | |
| Programs/_testembed | |
| PC/python_nt*.h | |
| PC/pythonnt_rc*.h | |
| Modules/python.exp | |
| PC/*/*.exp | |
| PC/*/*.lib | |
| PC/*/*.bsc | |
| PC/*/*.dll | |
| PC/*/*.pdb | |
| PC/*/*.user | |
| PC/*/*.ncb | |
| PC/*/*.suo | |
| PC/*/Win32-temp-* | |
| PC/*/x64-temp-* | |
| PC/*/amd64 | |
| PCbuild/*.user | |
| PCbuild/*.suo | |
| PCbuild/*.*sdf | |
| PCbuild/*-pgi | |
| PCbuild/*-pgo | |
| PCbuild/*.VC.db | |
| PCbuild/*.VC.opendb | |
| PCbuild/amd64/ | |
| PCbuild/amd64t/ | |
| PCbuild/arm32/ | |
| PCbuild/arm32t/ | |
| PCbuild/arm64/ | |
| PCbuild/arm64t/ | |
| PCbuild/obj/ | |
| PCbuild/win32/ | |
| PCbuild/win32t/ | |
| Tools/unicode/data/ | |
| /autom4te.cache | |
| /build/ | |
| /builddir/ | |
| /compile_commands.json | |
| /config.cache | |
| /config.log | |
| /config.status | |
| /config.status.lineno | |
| /.ccache | |
| /cross-build*/ | |
| /dist/ | |
| /jit_stencils*.h | |
| /jit_unwind_info*.h | |
| .jit-stamp | |
| /platform | |
| /profile-clean-stamp | |
| /profile-run-stamp | |
| /profile-bolt-stamp | |
| /profile-gen-stamp | |
| /pybuilddir.txt | |
| /pyconfig.h | |
| /python-config | |
| /python-config.py | |
| /python.bat | |
| /python-gdb.py | |
| /python.exe-gdb.py | |
| /reflog.txt | |
| /coverage/ | |
| /externals/ | |
| /htmlcov/ | |
| Tools/ssl/amd64 | |
| Tools/ssl/win32 | |
| Tools/freeze/test/outdir | |
| # The frozen modules are always generated by the build so we don't | |
| # keep them in the repo. Also see Tools/build/freeze_modules.py. | |
| Python/frozen_modules/*.h | |
| # The manifest can be generated at any time with "make regen-frozen". | |
| Python/frozen_modules/MANIFEST | |
| # Two-trick pony for OSX and other case insensitive file systems: | |
| # Ignore ./python binary on Unix but still look into ./Python/ directory. | |
| /python | |
| !/Python/ | |
| # Local AI agent scratch state (per-PR and per-branch notebooks, sandbox | |
| # experiments) and personal agent overrides, none of which are committed. | |
| /.claude/pr-* | |
| /.claude/branch-* | |
| /.claude/sandbox/ | |
| AGENTS.local.md | |
| CLAUDE.local.md | |
| #### main branch only stuff below this line, things to backport go above. #### | |
| # main branch only: ABI files are not checked/maintained. | |
| Doc/data/python*.abi |