[project] name = "ocelot" # Required version = "0.4.10" # Required description = "A toolbox for working with observations of star clusters." # Optional readme = "README.md" # Optional requires-python = ">=3.10" license = { file = "LICENSE" } keywords = ["astronomy", "star cluster", "threading", "development"] # Optional authors = [ { name = "Emily Hunt", email = "emily.hunt.physics@gmail.com" }, # Optional ] maintainers = [ { name = "Emily Hunt", email = "emily.hunt.physics@gmail.com" }, # Optional ] classifiers = [ # Optional "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3 :: Only", ] dependencies = [ "numpy>=2.0.0", "numba>=0.50", "matplotlib>=3.4.0", "scikit-learn>=1.0", "scipy>=1.0.0", "pandas>=1.0.0", "pyarrow", "astropy>=6.0.0", "healpy>=1.13.0", # Todo consider removing dependency - switch to Astropy's healpy implementation "galpy>=1.9", # Todo consider removing dependency "dustmaps", # Todo is this needed? "gaiaunlimited", # Todo make optional? "kepler.py", # For advanced calculations of the separations of binary stars "initial_mass_function==2025.1.20", # N.B. imports as 'imf' ] [project.optional-dependencies] dev = [ "mkdocs-material[imaging]", "mkdocstrings[python]>=0.18", "mkdocs-jupyter", "jupyter", # for working on notebooks "check-manifest", "pytest", "ruff", # "ezpadova @ git+https://github.com/mfouesneau/ezpadova", # PARSEC isochrone download # Todo get it on a release schedule / link to github .zip file ] docs = [ "mkdocs-material[imaging]", "mkdocstrings[python]>=0.18", "mkdocs-jupyter", ] # For building docs on GitHub test = ["pytest"] [project.urls] # Optional "Homepage" = "https://ocelot-docs.org" "Bug Reports" = "https://github.com/emilyhunt/ocelot/issues" "Source" = "https://github.com/emilyhunt/ocelot" # [tool.setuptools] # package-data = {"sample" = ["*.dat"]} [tool.pytest.ini_options] pythonpath = "src" addopts = ["--import-mode=importlib"] testpaths = ["tests"] [build-system] requires = ["setuptools>=43.0.0", "wheel"] build-backend = "setuptools.build_meta" [tool.ruff] line-length = 88