pyproject.toml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  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. "pygame>=2.2.0",
  28. ]
  29. dynamic = ["version"]
  30. [project.optional-dependencies]
  31. testing = [
  32. "pytest>=7.0.1",
  33. "pytest-mock>=3.10.0",
  34. "matplotlib>=3.0"
  35. ]
  36. [project.urls]
  37. Homepage = "https://farama.org"
  38. Repository = "https://minigrid.farama.org/"
  39. Documentation = "https://minigrid.farama.org/"
  40. "Bug Report" = "https://github.com/Farama-Foundation/Minigrid/issues"
  41. [project.entry-points."gymnasium.envs"]
  42. __root__ = "minigrid.__init__:register_minigrid_envs"
  43. [tool.setuptools]
  44. include-package-data = true
  45. [tool.setuptools.packages.find]
  46. include = ["minigrid*"]
  47. # Linters and Test tools #######################################################
  48. [tool.black]
  49. safe = true
  50. [tool.isort]
  51. atomic = true
  52. profile = "black"
  53. append_only = true
  54. src_paths = ["minigrid", "tests"]
  55. add_imports = [ "from __future__ import annotations" ]
  56. [tool.pyright]
  57. include = [
  58. "minigrid/**",
  59. ]
  60. exclude = [
  61. "**/node_modules",
  62. "**/__pycache__",
  63. ]
  64. strict = []
  65. typeCheckingMode = "basic"
  66. pythonVersion = "3.7"
  67. typeshedPath = "typeshed"
  68. enableTypeIgnoreComments = true
  69. # This is required as the CI pre-commit does not download the module (i.e. numpy)
  70. # Therefore, we have to ignore missing imports
  71. reportMissingImports = "none"
  72. reportUnknownMemberType = "none"
  73. reportUnknownParameterType = "none"
  74. reportUnknownVariableType = "none"
  75. reportUnknownArgumentType = "none"
  76. reportPrivateUsage = "warning"
  77. reportUntypedFunctionDecorator = "none"
  78. reportMissingTypeStubs = false
  79. reportUnboundVariable = "warning"
  80. reportGeneralTypeIssues ="none"
  81. reportPrivateImportUsage = "none"
  82. [tool.pytest.ini_options]
  83. filterwarnings = ['ignore:.*step API.*:DeprecationWarning'] # TODO: to be removed when old step API is removed