You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

101 lines
2.7 KiB

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