A Python parser for MediaWiki wikicode https://mwparserfromhell.readthedocs.io/
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 
 

81 рядки
2.0 KiB

  1. [project]
  2. name = "mwparserfromhell"
  3. dynamic = ["version"]
  4. description = "MWParserFromHell is a parser for MediaWiki wikicode"
  5. authors = [
  6. {name = "Ben Kurtovic", email = "ben@benkurtovic.com"},
  7. ]
  8. license = "MIT"
  9. license-files = ["LICENSE"]
  10. keywords = [
  11. "mwparserfromhell", "wikipedia", "wiki", "mediawiki", "wikicode", "wikitext"
  12. ]
  13. readme = "README.rst"
  14. requires-python = ">= 3.10"
  15. dependencies = []
  16. classifiers = [
  17. "Development Status :: 4 - Beta",
  18. "Environment :: Console",
  19. "Intended Audience :: Developers",
  20. "Operating System :: OS Independent",
  21. "Programming Language :: Python :: 3",
  22. "Programming Language :: Python :: 3.10",
  23. "Programming Language :: Python :: 3.11",
  24. "Programming Language :: Python :: 3.12",
  25. "Programming Language :: Python :: 3.13",
  26. "Programming Language :: Python :: 3.14",
  27. "Topic :: Text Processing :: Markup",
  28. ]
  29. [project.urls]
  30. Repository = "https://github.com/earwig/mwparserfromhell"
  31. Documentation = "https://mwparserfromhell.readthedocs.io/"
  32. Issues = "https://github.com/earwig/mwparserfromhell/issues"
  33. Changelog = "https://github.com/earwig/mwparserfromhell/blob/main/CHANGELOG"
  34. [dependency-groups]
  35. dev = [
  36. "psutil",
  37. "pytest",
  38. "pytest-cov",
  39. "setuptools",
  40. "sphinx",
  41. ]
  42. [build-system]
  43. requires = ["setuptools >= 77.0.3", "setuptools-scm>=8"]
  44. build-backend = "setuptools.build_meta"
  45. [tool.setuptools_scm]
  46. [tool.cibuildwheel]
  47. environment = { WITH_EXTENSION = "1" }
  48. environment-pass = ["RUNNER_OS"]
  49. test-groups = ["dev"]
  50. test-command = [
  51. 'python -c "import mwparserfromhell.parser._tokenizer"',
  52. "pytest {project}/tests -rxs --cov=mwparserfromhell --cov-report=lcov:coverage.lcov",
  53. "python {project}/scripts/save_coverage.py",
  54. ]
  55. [tool.pyright]
  56. pythonVersion = "3.10"
  57. typeCheckingMode = "standard"
  58. venvPath = "."
  59. venv = ".venv"
  60. [tool.ruff]
  61. target-version = "py310"
  62. [tool.ruff.lint]
  63. extend-select = [
  64. "I",
  65. "UP",
  66. ]
  67. [tool.mypy]
  68. disallow_incomplete_defs = true
  69. warn_return_any = true
  70. warn_unused_configs = true
  71. warn_unused_ignores = true