content: [build-system]
  requires = [
      "setuptools",
      "cython>=0.15.1; implementation_name!='pypy'",
      # For mathics-generate-json-table
      "Mathics-Scanner >= 1.4.0",
      # "packaging" is needed for testing the SymPy Version
      # in PartionsP
      "packaging",
  ]
  build-backend = "setuptools.build_meta"
  
  [project]
  description = "A general-purpose computer algebra system."
  dependencies = [
      "Mathics-Scanner > 1.4.1",
      "mpmath>=1.2.0",
      "numpy",
      "palettable",
      # Pillow 9.1.0 supports BigTIFF with big-endian byte order.
      # ExampleData image hedy.tif is in this format.
      # Pillow 9.2 handles sunflowers.jpg
      "pillow >= 9.2",
      "pint",
      "python-dateutil",
      # Pympler is used in ByteCount[] and MemoryInUse[].
      "Pympler",
      "requests",
      "scipy",
      "setuptools",
      # stopit is needed in TimeRemaining[]
      "stopit; platform_system != 'Emscripten'",
      "sympy>=1.13",
  ]
  license = "GPL-3.0-or-later"
  name = "Mathics3"
  requires-python = ">=3.10" # bisect.insort_left with key parameter starts in 3.10
  readme = "README.rst"
  keywords = ["Mathematica", "Wolfram", "Interpreter", "Shell", "Math", "CAS"]
  maintainers = [
      {name = "Mathics Group", email = "mathics-devel@googlegroups.com"},
  ]
  classifiers = [
      "Intended Audience :: Developers",
      "Intended Audience :: Science/Research",
      "Programming Language :: Python",
      "Programming Language :: Python :: 3.10",
      "Programming Language :: Python :: 3.11",
      "Programming Language :: Python :: 3.12",
      "Programming Language :: Python :: 3.13",
      "Programming Language :: Python :: Implementation :: CPython",
      "Programming Language :: Python :: Implementation :: PyPy",
      "Topic :: Scientific/Engineering",
      "Topic :: Scientific/Engineering :: Mathematics",
      "Topic :: Scientific/Engineering :: Physics",
      "Topic :: Software Development :: Interpreters",
  ]
  dynamic = ["version"]
  
  [project.urls]
  Homepage = "https://mathics.org/"
  Downloads = "https://github.com/Mathics3/mathics-core/releases"
  
  [project.optional-dependencies]
  dev = [
      "pexpect",
      "pytest",
  ]
  full = [
      "ipywidgets",
      "llvmlite",
      "lxml",
      "psutil",
      "pyocr",
      "scikit-image >= 0.17",
      "unidecode",
      "wordcloud >= 1.9.3",
  ]
  cython = [
      "cython",
  ]
  
  [project.scripts]
  mathics = "mathics.__main__:main"
  
  [tool.setuptools]
  include-package-data = false
  
  [tool.setuptools.packages.find]
  include = ["mathics*"]
  
  [tool.setuptools.package-data]
  "mathics" = [
      "Packages/*/*.m",
      "Packages/*/Kernel/init.m",
      "autoload-cli/*.m",
      "autoload/*.m",
      "autoload/*/*.m",
      "autoload/formats/*/Export.m",
      "autoload/formats/*/Import.m",
      "data/*.csv",
      "data/*.json",
      "data/*.pcl",
      "data/*.yaml",
      "data/*.yml",
      "data/ExampleData/*",
      # Documentation stuff that will be removed in 9.0.0 or before
      "doc/latex/mathics.pdf",
      # End doc stuff
      "test/data/*",
  ]
  "mathics.doc" = [
      "documentation/*.mdoc",
      "xml/data",
  ]
  "mathics.builtin.pymimesniffer" = [
      "mimetypes.xml",
  ]
  
  [tool.setuptools.dynamic]
  version = {attr = "mathics.version.__version__"}
  
  [tool.mypy]
  force_union_syntax = true
  
  [[tool.mypy.overrides]]
  module = ["mpmath", "llvmlite.*", "trepan.*"]
  ignore_missing_imports = true
  
  [[tool.mypy.overrides]]
  module = ["mathics.benchmark", "mathics.builtin.*", "mathics.eval.*", "test.*"]
  ignore_errors = true
  