diff --git a/scripts/release.py b/scripts/release.py index bad5462fe07..cb107c68e09 100644 --- a/scripts/release.py +++ b/scripts/release.py @@ -141,8 +141,17 @@ def read_package(package_path: pathlib.Path) -> Package: return package +def _get_docutils_parser_settings(): + try: + return frontend.get_default_settings(Parser) + except AttributeError: + # docutils < 0.18. Remove fallback in 23.1 + components = (Parser,) + return frontend.OptionParser(components=components).get_default_values() + + def parse_changelog(package: Package) -> List[ChangelogItem]: - settings = frontend.get_default_settings(Parser) + settings = _get_docutils_parser_settings() document = utils.new_document(str(package.history_rst), settings) Parser().parse(package.history_rst.read_text(), document) changelog_items: List[ChangelogItem] = []