| [build-system] | |
| requires = ["hatchling>=1.27", "hatch-vcs>=0.4", "hatch-fancy-pypi-readme>=24.1"] | |
| build-backend = "hatchling.build" | |
| [project] | |
| name = "python-dateutil" | |
| description = "Extensions to the standard Python datetime module" | |
| dynamic = ["version", "readme"] | |
| requires-python = ">=3.11" | |
| dependencies = ["tzdata"] | |
| license = "BSD-3-Clause" | |
| license-files = ["LICENSE", "AUTHORS.md"] | |
| classifiers = [ | |
| "Development Status :: 5 - Production/Stable", | |
| "Intended Audience :: Developers", | |
| "Programming Language :: Python", | |
| "Programming Language :: Python :: 3", | |
| "Programming Language :: Python :: 3.11", | |
| "Programming Language :: Python :: 3.12", | |
| "Programming Language :: Python :: 3.13", | |
| "Programming Language :: Python :: 3.14", | |
| "Programming Language :: Python :: 3.15", | |
| "Programming Language :: Python :: Free Threading :: 2 - Beta", | |
| "Programming Language :: Python :: Implementation :: CPython", | |
| "Programming Language :: Python :: Implementation :: PyPy", | |
| "Topic :: Software Development :: Libraries", | |
| ] | |
| [[project.authors]] | |
| name = "Gustavo Niemeyer" | |
| email = "gustavo@niemeyer.net" | |
| [[project.maintainers]] | |
| name = "Paul Ganssle" | |
| email = "dateutil@python.org" | |
| [project.urls] | |
| Homepage = "https://github.com/dateutil/dateutil" | |
| Documentation = "https://dateutil.readthedocs.io/en/stable/" | |
| Source = "https://github.com/dateutil/dateutil" | |
| [tool.towncrier] | |
| package = "dateutil" | |
| package_dir = "dateutil" | |
| filename = "NEWS" | |
| directory = "changelog.d" | |
| title_format = "Version {version} ({project_date})" | |
| issue_format = "GH #{issue}" | |
| template = "changelog.d/template.rst" | |
| [[tool.towncrier.type]] | |
| directory = "data" | |
| name = "Data updates" | |
| showcontent = true | |
| [[tool.towncrier.type]] | |
| directory = "deprecations" | |
| name = "Deprecations" | |
| showcontent = true | |
| [[tool.towncrier.type]] | |
| directory = "feature" | |
| name = "Features" | |
| showcontent = true | |
| [[tool.towncrier.type]] | |
| directory = "bugfix" | |
| name = "Bugfixes" | |
| showcontent = true | |
| [[tool.towncrier.type]] | |
| directory = "doc" | |
| name = "Documentation changes" | |
| showcontent = true | |
| [[tool.towncrier.type]] | |
| directory = "misc" | |
| name = "Misc" | |
| showcontent = true | |
| [tool.black] | |
| line-length = 80 | |
| [tool.isort] | |
| atomic=true | |
| force_grid_wrap=0 | |
| include_trailing_comma=true | |
| known_first_party = ["dateutil"] | |
| known_third_party=[ | |
| "pytest", | |
| "hypothesis", | |
| "freezegun", | |
| ] | |
| multi_line_output=3 | |
| use_parentheses=true | |
| [tool.pytest.ini_options] | |
| python_files = [ | |
| "test_*.py", | |
| "*_test.py", | |
| "*_solution.py", | |
| ] | |
| xfail_strict = true | |
| filterwarnings = [ | |
| "error", | |
| "error::DeprecationWarning", | |
| "error::PendingDeprecationWarning", | |
| ] | |
| markers = [ | |
| "gettz", | |
| "import_star", | |
| "isoparser", | |
| "parserinfo", | |
| "rrule", | |
| "rruleset", | |
| "rrulestr", | |
| "smoke", | |
| "tz_resolve_imaginary", | |
| "tzdata_properties", | |
| "tzfile", | |
| "tzlocal", | |
| "tzoffset", | |
| "tzstr", | |
| ] | |
| [tool.hatch.version] | |
| source = "vcs" | |
| [tool.hatch.build.hooks.vcs] | |
| version-file = "src/dateutil/_version.py" | |
| [tool.hatch.build.targets.wheel] | |
| packages = ["src/dateutil"] | |
| [tool.hatch.build.targets.sdist] | |
| exclude = [ | |
| "/AGENTS.md", | |
| "/RELEASING", | |
| "/.github", | |
| "/.gitattributes", | |
| "**/.gitignore", | |
| "/.readthedocs.yml", | |
| "/.pre-commit-config.yaml", | |
| "/codecov.yml", | |
| ] | |
| [tool.hatch.metadata.hooks.fancy-pypi-readme] | |
| content-type = "text/x-rst" | |
| [[tool.hatch.metadata.hooks.fancy-pypi-readme.fragments]] | |
| path = "README.rst" | |
| [[tool.hatch.metadata.hooks.fancy-pypi-readme.substitutions]] | |
| pattern = "(?m)^\\.\\. doctest[^\\n]*" | |
| replacement = ".. code-block:: python3" |