pyproject.toml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. # Package ######################################################################
  2. [build-system]
  3. requires = ["setuptools >= 61.0.0"]
  4. build-backend = "setuptools.build_meta"
  5. [project]
  6. name = "minigrid"
  7. description = "Minimalistic gridworld reinforcement learning environments."
  8. readme = "README.md"
  9. requires-python = ">= 3.7, < 3.11"
  10. authors = [{ name = "Farama Foundation", email = "contact@farama.org" }]
  11. license = { text = "MIT License" }
  12. keywords = ["Memory, Environment, Agent, RL, Gymnasium"]
  13. classifiers = [
  14. "Development Status :: 4 - Beta", # change to `5 - Production/Stable` when ready
  15. "License :: OSI Approved :: MIT License",
  16. "Programming Language :: Python :: 3",
  17. "Programming Language :: Python :: 3.7",
  18. "Programming Language :: Python :: 3.8",
  19. "Programming Language :: Python :: 3.9",
  20. "Programming Language :: Python :: 3.10",
  21. 'Intended Audience :: Science/Research',
  22. 'Topic :: Scientific/Engineering :: Artificial Intelligence',
  23. ]
  24. dependencies = [
  25. "numpy>=1.18.0",
  26. "gymnasium>=0.26",
  27. "matplotlib>=3.0",
  28. ]
  29. dynamic = ["version"]
  30. [project.optional-dependencies]
  31. testing = [
  32. "pytest>=7.0.1",
  33. "pytest-mock>=3.10.0",
  34. ]
  35. [project.urls]
  36. Homepage = "https://farama.org"
  37. Repository = "https://minigrid.farama.org/"
  38. Documentation = "https://minigrid.farama.org/"
  39. "Bug Report" = "https://github.com/Farama-Foundation/Minigrid/issues"
  40. [project.entry-points."gymnasium.envs"]
  41. __root__ = "minigrid.__init__:register_minigrid_envs"
  42. [tool.setuptools]
  43. include-package-data = true
  44. [tool.setuptools.packages.find]
  45. include = ["minigrid*"]
  46. # Linters and Test tools #######################################################
  47. [tool.black]
  48. safe = true
  49. [tool.isort]
  50. atomic = true
  51. profile = "black"
  52. append_only = true
  53. src_paths = ["minigrid", "tests"]
  54. add_imports = [ "from __future__ import annotations" ]
  55. [tool.pyright]
  56. include = [
  57. "minigrid/**",
  58. ]
  59. exclude = [
  60. "**/node_modules",
  61. "**/__pycache__",
  62. ]
  63. strict = []
  64. typeCheckingMode = "basic"
  65. pythonVersion = "3.7"
  66. typeshedPath = "typeshed"
  67. enableTypeIgnoreComments = true
  68. # This is required as the CI pre-commit does not download the module (i.e. numpy)
  69. # Therefore, we have to ignore missing imports
  70. reportMissingImports = "none"
  71. reportUnknownMemberType = "none"
  72. reportUnknownParameterType = "none"
  73. reportUnknownVariableType = "none"
  74. reportUnknownArgumentType = "none"
  75. reportPrivateUsage = "warning"
  76. reportUntypedFunctionDecorator = "none"
  77. reportMissingTypeStubs = false
  78. reportUnboundVariable = "warning"
  79. reportGeneralTypeIssues ="none"
  80. reportPrivateImportUsage = "none"
  81. [tool.pytest.ini_options]
  82. filterwarnings = ['ignore:.*step API.*:DeprecationWarning'] # TODO: to be removed when old step API is removed