pyproject.toml 2.8 KB

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