## We use this file both as .gitignore and .dockerignore,
## which have different semantics.

/dist
/local
/logs
/upstream
/sagemath.egg-info

# Autotools generated files
/aclocal.m4
/autom4te.cache/
/config/install-sh
/config/compile
/config/config.guess
/config/config.sub
/config/install-sh
/config/missing
/config.log
/config.status
/configure
/real_configure
/confdefs.h

/m4/sage_spkg_configures.m4
/m4/sage_spkg_versions*.m4

# no longer generated, but may still be in user worktrees
/src/lib/pkgconfig

# Conda environment files (auto-generated)
/environment-3.[0-9].yml
/environment-3.[0-9][0-9].yml
# The following files are no longer generated but may still be in users' directories
/environment.yml
/environment-dev-3.9.yml
/environment-dev-3.10.yml
/environment-dev-3.11.yml
/environment-optional.yml
/environment-optional-3.9.yml
/environment-optional-3.10.yml
/environment-optional-3.11.yml
/src/environment.yml
/src/environment-3.9.yml
/src/environment-3.10.yml
/src/environment-3.11.yml
/src/environment-dev.yml
/src/environment-dev-3.9.yml
/src/environment-dev-3.10.yml
/src/environment-dev-3.11.yml
/src/environment-optional.yml
/src/environment-optional-3.9.yml
/src/environment-optional-3.10.yml
/src/environment-optional-3.11.yml


# Various editors
*~
**/*~

# Emacs
\#*\#
**/\#*\#
.\#*
**/.\#*

# Vim
*.swp
**/*.swp
*.swo
**/*.swo
*.swn
**/*.swn
*.un~
.netrwhist

# PyCharm
.idea
.iml

# VSCode
**/.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
**/*.code-workspace
**/.history

# XCode
xcuserdata/

# Eclipse
*.pydevproject
.project
.metadata
*.tmp
*.bak
**/*.bak
*.swp
*~.nib
.classpath
.settings/
.loadpath
.externalToolBuilders/
.cproject
.buildpath

# OSX specific temporary files
.DS_Store
**/.DS_Store
._*
.AppleDouble
.LSOverride
.Spotlight-V100
.Trashes

# Windows
$RECYCLE.BIN/

# SublimeText
*.sublime-workspace

# SageMathCloud
*.sage-chat
*.sage-history
*.syncdoc*

# Jupyter
.ipynb_checkpoints
Untitled*.ipynb

# GitLab CI generated files
gitlab-build-docker.log

# Byte-compiled / optimized / DLL files
__pycache__/
**/__pycache__
*.py[cod]
**/*.py[cod]
*$py.class

# Generated by sage_setup.autogen
/src/sage/ext/interpreters
!/src/sage/ext/interpreters/meson.build
!/src/sage/ext/interpreters/README

# Generated Cython files
*.so
**/*.so
**/*.so.old
/src/cython_debug
# Most C and C++ files are generated by Cython and should not
# be included in the sdist.
/src/sage/**/*.c
/src/sage/**/*.cpp
# C header generated by Cython
/src/sage/modular/arithgroup/farey_symbol.h
# List of C and C++ files that are actual source files,
# NOT generated by Cython
!/src/sage/graphs/base/boost_interface.cpp
!/src/sage/graphs/cliquer/cl.c
!/src/sage/graphs/graph_decompositions/sage_tdlib.cpp
!/src/sage/libs/eclib/wrap.cpp
!/src/sage/libs/linkages/padics/relaxed/flint_helper.c
!/src/sage/misc/inherit_comparison_impl.c
!/src/sage/modular/arithgroup/farey.cpp
!/src/sage/modular/arithgroup/sl2z.cpp
!/src/sage/rings/bernmm/bern_modp.cpp
!/src/sage/rings/bernmm/bern_modp_util.cpp
!/src/sage/rings/bernmm/bern_rat.cpp
!/src/sage/rings/bernmm/bernmm-test.cpp
!/src/sage/rings/padics/transcendental.c
!/src/sage/rings/polynomial/weil/power_sums.c
!/src/sage/schemes/hyperelliptic_curves/hypellfrob/hypellfrob.cpp
!/src/sage/schemes/hyperelliptic_curves/hypellfrob/recurrences_ntl.cpp
!/src/sage/stats/distributions/dgs_bern.c
!/src/sage/stats/distributions/dgs_gauss_dp.c
!/src/sage/stats/distributions/dgs_gauss_mp.c
!/src/sage/symbolic/ginac/*.cpp

# Temporary build files
build/temp.*/
build/bin/sage-build-env-config

# Generated files in build
build/pkgs/cypari/version_requirements.txt
build/pkgs/cysignals/version_requirements.txt
build/pkgs/cython/version_requirements.txt
build/pkgs/gmpy2/version_requirements.txt
build/pkgs/jupyter_core/version_requirements.txt
build/pkgs/memory_allocator/version_requirements.txt
build/pkgs/numpy/version_requirements.txt
build/pkgs/pkgconfig/version_requirements.txt
build/pkgs/pplpy/version_requirements.txt
build/pkgs/setuptools/version_requirements.txt
build/pkgs/wheel/version_requirements.txt

# Generated files in the top-level source trees
/pkgs/*/build
/pkgs/*/dist
/pkgs/*/MANIFEST
/pkgs/*/*.egg-info
/pkgs/*/.tox
/pkgs/*/venv*
/pkgs/*/.venv*

/pkgs/sagemath-objects/setup.cfg
/pkgs/sagemath-bliss/setup.cfg
/pkgs/sagemath-coxeter3/setup.cfg
/pkgs/sagemath-mcqd/setup.cfg
/pkgs/sagemath-meataxe/setup.cfg
/pkgs/sagemath-sirocco/setup.cfg
/pkgs/sagemath-tdlib/setup.cfg
/pkgs/sagemath-categories/setup.cfg
/pkgs/sagemath-environment/setup.cfg
/pkgs/sagemath-repl/setup.cfg
/pkgs/sagemath-objects/pyproject.toml
/pkgs/sagemath-bliss/pyproject.toml
/pkgs/sagemath-coxeter3/pyproject.toml
/pkgs/sagemath-mcqd/pyproject.toml
/pkgs/sagemath-meataxe/pyproject.toml
/pkgs/sagemath-sirocco/pyproject.toml
/pkgs/sagemath-tdlib/pyproject.toml
/pkgs/sagemath-categories/pyproject.toml
/pkgs/sagemath-environment/pyproject.toml
/pkgs/sagemath-repl/pyproject.toml
/pkgs/sagemath-objects/requirements*.txt
/pkgs/sagemath-bliss/requirements*.txt
/pkgs/sagemath-coxeter3/requirements*.txt
/pkgs/sagemath-mcqd/requirements*.txt
/pkgs/sagemath-meataxe/requirements*.txt
/pkgs/sagemath-sirocco/requirements*.txt
/pkgs/sagemath-tdlib/requirements*.txt
/pkgs/sagemath-categories/requirements*.txt
/pkgs/sagemath-environment/requirements*.txt
/pkgs/sagemath-repl/requirements*.txt
/pkgs/sagemath-categories/MANIFEST.in

# same for old locations - before Issue #31577
/build/pkgs/*/src/build
/build/pkgs/*/src/dist
/build/pkgs/*/src/MANIFEST
/build/pkgs/*/src/*.egg-info
/build/pkgs/*/src/.tox

# Generated by docbuild
/src/doc/en/reference/*/sage
/src/doc/en/reference/*/sage_docbuild
/src/doc/en/reference/sage
/src/doc/en/reference/spkg/*.rst
!/src/doc/en/reference/spkg/index.rst
/src/doc/output
/src/doc/en/installation/*.txt
/src/doc/en/reference/repl/*.txt

# Distribution / packaging
src/*.egg-info/
/src/.cython_version
/src/build
/src/Makefile
/src/bin/sage-env-config
/src/bin/sage-src-env-config

# Virtual environments
/venv
src/.env
src/.venv
src/env/
src/venv/
src/ENV/
src/env.bak/
src/venv.bak/

# mypy
**/.mypy_cache/

# tox generated files
/.tox
/build/.tox
**/.tox
/prefix

# code coverage generated files
src/.coverage/

# git worktree
worktree*
**/worktree*

# Meson build directory
builddir
builddir-*
build-install
build/cp*

# Meson subprojects
/subprojects/*
!/subprojects/*.wrap
!/subprojects/packagefiles
!/subprojects/README.md

# Meson temporary files
subprojects/wrapdb.json
subprojects/maxima-5.47.0
subprojects/packagecache
src/sage/interfaces/__init__.py
src/sage/crypto/block_cipher/__init__.py
src/sage/crypto/public_key/__init__.py
src/sage/logic/__init__.py
src/sage/parallel/__init__.py
src/sage/dynamics/cellular_automata/__init__.py
src/sage/dynamics/arithmetic_dynamics/__init__.py
src/sage/dynamics/__init__.py
src/sage/dynamics/complex_dynamics/__init__.py
src/sage/knots/__init__.py
src/sage/topology/__init__.py
src/sage/functions/__init__.py
src/sage/manifolds/subsets/__init__.py
src/sage/manifolds/__init__.py
src/sage/manifolds/differentiable/examples/__init__.py
src/sage/manifolds/differentiable/__init__.py
src/sage/coding/source_coding/__init__.py
src/sage/coding/guruswami_sudan/__init__.py
src/sage/coding/__init__.py
src/sage/coding/codecan/__init__.py
src/sage/games/__init__.py
src/sage/quivers/__init__.py
src/sage/schemes/cyclic_covers/__init__.py
src/sage/schemes/plane_conics/__init__.py
src/sage/schemes/curves/__init__.py
src/sage/schemes/plane_quartics/__init__.py
src/sage/schemes/jacobians/__init__.py
src/sage/schemes/toric/sheaf/__init__.py
src/sage/schemes/toric/__init__.py
src/sage/schemes/product_projective/__init__.py
src/sage/schemes/elliptic_curves/__init__.py
src/sage/schemes/riemann_surfaces/__init__.py
src/sage/schemes/hyperelliptic_curves/__init__.py
src/sage/schemes/berkovich/__init__.py
src/sage/schemes/generic/__init__.py
src/sage/schemes/projective/__init__.py
src/sage/schemes/__init__.py
src/sage/schemes/affine/__init__.py
src/sage/modular/hecke/__init__.py
src/sage/modular/pollack_stevens/__init__.py
src/sage/modular/overconvergent/__init__.py
src/sage/modular/modform/__init__.py
src/sage/modular/quasimodform/__init__.py
src/sage/modular/modsym/__init__.py
src/sage/modular/local_comp/__init__.py
src/sage/modular/quatalg/__init__.py
src/sage/modular/ssmod/__init__.py
src/sage/modular/abvar/__init__.py
src/sage/modular/__init__.py
src/sage/modular/btquotients/__init__.py
src/sage/modular/arithgroup/__init__.py
src/sage/modular/modform_hecketriangle/__init__.py
src/sage/combinat/cluster_algebra_quiver/__init__.py
src/sage/combinat/root_system/__init__.py
src/sage/combinat/species/__init__.py
src/sage/combinat/designs/__init__.py
src/sage/combinat/posets/__init__.py
src/sage/combinat/matrices/__init__.py
src/sage/combinat/rigged_configurations/__init__.py
src/sage/combinat/ncsf_qsym/__init__.py
src/sage/combinat/path_tableaux/__init__.py
src/sage/combinat/sf/__init__.py
src/sage/combinat/__init__.py
src/sage/combinat/chas/__init__.py
src/sage/combinat/ncsym/__init__.py
src/sage/combinat/words/__init__.py
src/sage/combinat/crystals/__init__.py
src/sage/tensor/modules/__init__.py
src/sage/tensor/__init__.py
src/sage/groups/matrix_gps/__init__.py
src/sage/groups/semimonomial_transformations/__init__.py
src/sage/groups/perm_gps/partn_ref2/__init__.py
src/sage/groups/perm_gps/partn_ref/__init__.py
src/sage/groups/perm_gps/__init__.py
src/sage/groups/__init__.py
src/sage/groups/affine_gps/__init__.py
src/sage/groups/abelian_gps/__init__.py
src/sage/groups/additive_abelian/__init__.py
src/sage/groups/lie_gps/__init__.py
src/sage/groups/misc_gps/__init__.py
src/sage/symbolic/__init__.py
src/sage/symbolic/integration/__init__.py
src/sage/lfunctions/__init__.py
src/sage/arith/__init__.py
src/sage/ext/__init__.py
src/sage/categories/examples/__init__.py
src/sage/categories/__init__.py
src/sage/modules/fg_pid/__init__.py
src/sage/modules/__init__.py
src/sage/modules/with_basis/__init__.py
src/sage/modules/fp_graded/steenrod/__init__.py
src/sage/modules/fp_graded/__init__.py
src/sage/misc/__init__.py
src/sage/rings/convert/__init__.py
src/sage/rings/invariants/__init__.py
src/sage/rings/finite_rings/__init__.py
src/sage/rings/function_field/__init__.py
src/sage/rings/function_field/drinfeld_modules/__init__.py
src/sage/rings/semirings/__init__.py
src/sage/rings/number_field/__init__.py
src/sage/rings/__init__.py
src/sage/rings/padics/__init__.py
src/sage/rings/valuation/__init__.py
src/sage/rings/asymptotic/__init__.py
src/sage/rings/polynomial/weil/__init__.py
src/sage/rings/polynomial/__init__.py
src/sage/rings/polynomial/padics/__init__.py
src/sage/monoids/__init__.py
src/sage/matrix/__init__.py
src/sage/matroids/__init__.py
src/sage/interacts/__init__.py
src/sage/__init__.py
src/sage/plot/__init__.py
src/sage/plot/plot3d/__init__.py
src/sage/typeset/__init__.py
src/sage/algebras/lie_conformal_algebras/__init__.py
src/sage/algebras/fusion_rings/__init__.py
src/sage/algebras/letterplace/__init__.py
src/sage/algebras/quatalg/__init__.py
src/sage/algebras/steenrod/__init__.py
src/sage/algebras/finite_dimensional_algebras/__init__.py
src/sage/algebras/__init__.py
src/sage/algebras/hecke_algebras/__init__.py
src/sage/algebras/lie_algebras/__init__.py
src/sage/algebras/quantum_groups/__init__.py
src/sage/quadratic_forms/genera/__init__.py
src/sage/quadratic_forms/__init__.py
src/sage/game_theory/__init__.py
src/sage/sandpiles/__init__.py
src/sage/sat/__init__.py
src/sage/homology/__init__.py
src/sage/geometry/riemannian_manifolds/__init__.py
src/sage/geometry/hyperplane_arrangement/__init__.py
src/sage/geometry/triangulation/__init__.py
src/sage/geometry/polyhedron/modules/__init__.py
src/sage/geometry/polyhedron/__init__.py
src/sage/geometry/polyhedron/combinatorial_polyhedron/__init__.py
src/sage/geometry/__init__.py
src/sage/geometry/hyperbolic_space/__init__.py
src/sage/sets/__init__.py
src/sage/probability/__init__.py
src/sage/numerical/backends/__init__.py
src/sage/numerical/__init__.py
src/sage/data_structures/__init__.py
src/sage/graphs/graph_decompositions/__init__.py
src/sage/graphs/generators/__init__.py
src/sage/graphs/__init__.py
src/sage/graphs/base/__init__.py
src/sage/graphs/tests/__init__.py
src/sage/databases/__init__.py
src/sage/stats/hmm/__init__.py
src/sage/stats/__init__.py
src/sage/stats/distributions/__init__.py
src/sage/libs/gap/__init__.py
src/sage/libs/mpfi/__init__.py
src/sage/libs/__init__.py
src/sage/libs/polybori/__init__.py
src/sage/libs/mpfr/__init__.py
src/sage/libs/mpc/__init__.py
src/sage/calculus/transforms/__init__.py
src/sage/calculus/__init__.py

# Temporary files generated by Meson CI (needed to make test pass because
# ci-meson.yml runs a `./tools/test-git-no-uncommitted-changes` step)
/.ccache
/setup-miniconda-patched-environment-*.yml
