Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-sphinxcontrib-httpdomain for openSUSE:Factory checked in at 2023-04-07 18:17:02 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-sphinxcontrib-httpdomain (Old) and /work/SRC/openSUSE:Factory/.python-sphinxcontrib-httpdomain.new.19717 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-sphinxcontrib-httpdomain" Fri Apr 7 18:17:02 2023 rev:27 rq:1077837 version:1.8.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-sphinxcontrib-httpdomain/python-sphinxcontrib-httpdomain.changes 2022-03-14 19:37:21.458147336 +0100 +++ /work/SRC/openSUSE:Factory/.python-sphinxcontrib-httpdomain.new.19717/python-sphinxcontrib-httpdomain.changes 2023-04-07 18:17:12.668851245 +0200 @@ -1,0 +2,15 @@ +Thu Apr 6 09:11:28 UTC 2023 - pgaj...@suse.com + +- version update to 1.8.1 + * Update URL for RFC by @nijel in #63 + * Copy parse_rule since it was removed in werkzeug 2.2 by @Klikini in #61 + * mulitcore: Fix false positive warnings in merge_domaindata by @phlax in #59 + * Fix typos by @kianmeng in #56 + * I18n and l10n support by @olivier-heurtier in #57 +- added patches + fix https://github.com/sphinx-contrib/httpdomain/issues/70 + + python-sphinxcontrib-httpdomain-fix-version.patch + fix https://github.com/sphinx-contrib/httpdomain/issues/69 + + python-sphinxcontrib-httpdomain-pyupgrade3.patch + +------------------------------------------------------------------- Old: ---- 1.8.0.tar.gz New: ---- 1.8.1.tar.gz python-sphinxcontrib-httpdomain-fix-version.patch python-sphinxcontrib-httpdomain-pyupgrade3.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-sphinxcontrib-httpdomain.spec ++++++ --- /var/tmp/diff_new_pack.32mOjs/_old 2023-04-07 18:17:13.080853618 +0200 +++ /var/tmp/diff_new_pack.32mOjs/_new 2023-04-07 18:17:13.088853664 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-sphinxcontrib-httpdomain # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,12 +19,16 @@ %{?!python_module:%define python_module() python3-%{**}} %define skip_python2 1 Name: python-sphinxcontrib-httpdomain -Version: 1.8.0 +Version: 1.8.1 Release: 0 Summary: Sphinx domain for HTTP APIs License: BSD-2-Clause URL: https://github.com/sphinx-contrib/httpdomain Source: https://github.com/sphinx-contrib/httpdomain/archive/%{version}.tar.gz +# https://github.com/sphinx-contrib/httpdomain/issues/70 +Patch0: python-sphinxcontrib-httpdomain-fix-version.patch +# https://github.com/sphinx-contrib/httpdomain/issues/69 +Patch1: python-sphinxcontrib-httpdomain-pyupgrade3.patch BuildRequires: %{python_module Flask >= 0.11} BuildRequires: %{python_module Sphinx >= 1.5} BuildRequires: %{python_module bottle >= 0.11.0} @@ -63,6 +67,7 @@ %license LICENSE %doc README.rst %{python_sitelib}/sphinxcontrib/autohttp/ +%{python_sitelib}/sphinxcontrib/locale/ %{python_sitelib}/sphinxcontrib/httpdomain.py* %pycache_only %{python_sitelib}/sphinxcontrib/__pycache__ %{python_sitelib}/sphinxcontrib_httpdomain-%{version}-py*-nspkg.pth ++++++ 1.8.0.tar.gz -> 1.8.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/httpdomain-1.8.0/MANIFEST.in new/httpdomain-1.8.1/MANIFEST.in --- old/httpdomain-1.8.0/MANIFEST.in 2021-09-23 15:14:40.000000000 +0200 +++ new/httpdomain-1.8.1/MANIFEST.in 2022-11-14 16:43:04.000000000 +0100 @@ -1,3 +1,4 @@ include README include LICENSE include CHANGES.* +recursive-include sphinxcontrib *.pot *.po *.mo \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/httpdomain-1.8.0/doc/changelog.rst new/httpdomain-1.8.1/doc/changelog.rst --- old/httpdomain-1.8.0/doc/changelog.rst 2021-09-23 15:14:40.000000000 +0200 +++ new/httpdomain-1.8.1/doc/changelog.rst 2022-11-14 16:43:04.000000000 +0100 @@ -13,7 +13,7 @@ - Add support for parallel sphinx builds. Increases sphinx version requirement to 1.6 [:pull:`31` by Daniel Hofmann] - Remove references to the generic ``:py:obj:`` role [:pull:`54` by Stephen Finucane] -- Remove imports and calls to depracated function force_decode who was removed +- Remove imports and calls to deprecated function force_decode who was removed starting with sphinx 4.0 [:pull:`49` by Florian Masy] - Be explicit about what versions of Python are supports (2.7, and 3.5+). This will be the last version to support Python 2.7 and 3.5, version 2.0 will require 3.6+. @@ -24,7 +24,7 @@ Released on July 1, 2018. -- Implemented ``:autoquickref:`` option that use available informations to +- Implemented ``:autoquickref:`` option that use available information to build a ``quickref``. [:pull:`9` by Alexandre Bonnetain] - Improved :mod:`sphinxcontrib.autohttp.tornado` compatibility with Tornado 4.5 and newer. `Tornado 4.5 <http://www.tornadoweb.org/en/stable/releases/v4.5.0.html>`_ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/httpdomain-1.8.0/sphinxcontrib/autohttp/flask_base.py new/httpdomain-1.8.1/sphinxcontrib/autohttp/flask_base.py --- old/httpdomain-1.8.0/sphinxcontrib/autohttp/flask_base.py 2021-09-23 15:14:40.000000000 +0200 +++ new/httpdomain-1.8.1/sphinxcontrib/autohttp/flask_base.py 2022-11-14 16:43:04.000000000 +0100 @@ -22,9 +22,56 @@ from sphinxcontrib.autohttp.common import http_directive, import_object +RE_PARSE_RULE = re.compile( + r""" + (?P<static>[^<]*) # static rule data + < + (?: + (?P<converter>[a-zA-Z_][a-zA-Z0-9_]*) # converter name + (?:\((?P<args>.*?)\))? # converter arguments + \: # variable delimiter + )? + (?P<variable>[a-zA-Z_][a-zA-Z0-9_]*) # variable name + > + """, + re.VERBOSE, +) + + +def parse_rule(rule): + """ + Parse a rule and return it as generator. Each iteration yields tuples in the form + ``(converter, arguments, variable)``. If the converter is `None` it's a static + url part, otherwise it's a dynamic one. + Note: This originally lived in werkzeug.routing.parse_rule until it was removed + in werkzeug 2.2.0. + """ + pos = 0 + end = len(rule) + do_match = RE_PARSE_RULE.match + used_names = set() + while pos < end: + m = do_match(rule, pos) + if m is None: + break + data = m.groupdict() + if data["static"]: + yield None, None, data["static"] + variable = data["variable"] + converter = data["converter"] or "default" + if variable in used_names: + raise ValueError(f"variable name {variable!r} used twice.") + used_names.add(variable) + yield converter, data["args"] or None, variable + pos = m.end() + if pos < end: + remaining = rule[pos:] + if ">" in remaining or "<" in remaining: + raise ValueError(f"malformed url rule: {rule!r}") + yield None, None, remaining + def translate_werkzeug_rule(rule): - from werkzeug.routing import parse_rule buf = six.StringIO() for conv, arg, var in parse_rule(rule): if conv: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/httpdomain-1.8.0/sphinxcontrib/httpdomain.py new/httpdomain-1.8.1/sphinxcontrib/httpdomain.py --- old/httpdomain-1.8.0/sphinxcontrib/httpdomain.py 2021-09-23 15:14:40.000000000 +0200 +++ new/httpdomain-1.8.1/sphinxcontrib/httpdomain.py 2022-11-14 16:43:04.000000000 +0100 @@ -10,6 +10,7 @@ """ import re +import os from docutils import nodes @@ -26,7 +27,8 @@ from sphinx.util.nodes import make_refnode from sphinx.util.docfields import GroupedField, TypedField from sphinx.util.docutils import Reporter, LoggingReporter -from sphinx.locale import _ +from sphinx.locale import get_translation +_ = get_translation('httpdomain') logger = logging.getLogger(__name__) @@ -73,7 +75,7 @@ """Represents a reference to the specific IETF RFC.""" def __init__(self, rfc, section): - url = 'https://tools.ietf.org/html/rfc{0:d}'.format(rfc) + url = 'https://www.rfc-editor.org/rfc/rfc{0:d}'.format(rfc) super(IETFRef, self).__init__(url, 'section-', section) @@ -186,59 +188,59 @@ HTTP_STATUS_CODES = { - 100: 'Continue', - 101: 'Switching Protocols', - 102: 'Processing', - 200: 'OK', - 201: 'Created', - 202: 'Accepted', - 203: 'Non Authoritative Information', - 204: 'No Content', - 205: 'Reset Content', - 206: 'Partial Content', - 207: 'Multi Status', - 226: 'IM Used', # see RFC 3229 - 300: 'Multiple Choices', - 301: 'Moved Permanently', - 302: 'Found', - 303: 'See Other', - 304: 'Not Modified', - 305: 'Use Proxy', - 307: 'Temporary Redirect', - 400: 'Bad Request', - 401: 'Unauthorized', - 402: 'Payment Required', # unused - 403: 'Forbidden', - 404: 'Not Found', - 405: 'Method Not Allowed', - 406: 'Not Acceptable', - 407: 'Proxy Authentication Required', - 408: 'Request Timeout', - 409: 'Conflict', - 410: 'Gone', - 411: 'Length Required', - 412: 'Precondition Failed', - 413: 'Request Entity Too Large', - 414: 'Request URI Too Long', - 415: 'Unsupported Media Type', - 416: 'Requested Range Not Satisfiable', - 417: 'Expectation Failed', - 418: "I'm a teapot", # see RFC 2324 - 422: 'Unprocessable Entity', - 423: 'Locked', - 424: 'Failed Dependency', - 426: 'Upgrade Required', - 429: 'Too Many Requests', - 449: 'Retry With', # proprietary MS extension - 451: 'Unavailable For Legal Reasons', - 500: 'Internal Server Error', - 501: 'Not Implemented', - 502: 'Bad Gateway', - 503: 'Service Unavailable', - 504: 'Gateway Timeout', - 505: 'HTTP Version Not Supported', - 507: 'Insufficient Storage', - 510: 'Not Extended' + 100: _('Continue'), + 101: _('Switching Protocols'), + 102: _('Processing'), + 200: _('OK'), + 201: _('Created'), + 202: _('Accepted'), + 203: _('Non Authoritative Information'), + 204: _('No Content'), + 205: _('Reset Content'), + 206: _('Partial Content'), + 207: _('Multi Status'), + 226: _('IM Used'), # see RFC 3229 + 300: _('Multiple Choices'), + 301: _('Moved Permanently'), + 302: _('Found'), + 303: _('See Other'), + 304: _('Not Modified'), + 305: _('Use Proxy'), + 307: _('Temporary Redirect'), + 400: _('Bad Request'), + 401: _('Unauthorized'), + 402: _('Payment Required'), # unused + 403: _('Forbidden'), + 404: _('Not Found'), + 405: _('Method Not Allowed'), + 406: _('Not Acceptable'), + 407: _('Proxy Authentication Required'), + 408: _('Request Timeout'), + 409: _('Conflict'), + 410: _('Gone'), + 411: _('Length Required'), + 412: _('Precondition Failed'), + 413: _('Request Entity Too Large'), + 414: _('Request URI Too Long'), + 415: _('Unsupported Media Type'), + 416: _('Requested Range Not Satisfiable'), + 417: _('Expectation Failed'), + 418: _("I'm a teapot"), # see RFC 2324 + 422: _('Unprocessable Entity'), + 423: _('Locked'), + 424: _('Failed Dependency'), + 426: _('Upgrade Required'), + 429: _('Too Many Requests'), + 449: _('Retry With'), # proprietary MS extension + 451: _('Unavailable For Legal Reasons'), + 500: _('Internal Server Error'), + 501: _('Not Implemented'), + 502: _('Bad Gateway'), + 503: _('Service Unavailable'), + 504: _('Gateway Timeout'), + 505: _('HTTP Version Not Supported'), + 507: _('Insufficient Storage'), + 510: _('Not Extended') } WEBDAV_STATUS_CODES = [207, 422, 423, 424, 507] @@ -266,36 +268,36 @@ class HTTPResource(ObjectDescription): doc_field_types = [ - TypedField('parameter', label='Parameters', + TypedField('parameter', label=_('Parameters'), names=('param', 'parameter', 'arg', 'argument'), typenames=('paramtype', 'type')), - TypedField('jsonparameter', label='JSON Parameters', + TypedField('jsonparameter', label=_('JSON Parameters'), names=('jsonparameter', 'jsonparam', 'json'), typenames=('jsonparamtype', 'jsontype')), - TypedField('requestjsonobject', label='Request JSON Object', + TypedField('requestjsonobject', label=_('Request JSON Object'), names=('reqjsonobj', 'reqjson', '<jsonobj', '<json'), typenames=('reqjsonobj', '<jsonobj')), - TypedField('requestjsonarray', label='Request JSON Array of Objects', + TypedField('requestjsonarray', label=_('Request JSON Array of Objects'), names=('reqjsonarr', '<jsonarr'), typenames=('reqjsonarrtype', '<jsonarrtype')), - TypedField('responsejsonobject', label='Response JSON Object', + TypedField('responsejsonobject', label=_('Response JSON Object'), names=('resjsonobj', 'resjson', '>jsonobj', '>json'), typenames=('resjsonobj', '>jsonobj')), - TypedField('responsejsonarray', label='Response JSON Array of Objects', + TypedField('responsejsonarray', label=_('Response JSON Array of Objects'), names=('resjsonarr', '>jsonarr'), typenames=('resjsonarrtype', '>jsonarrtype')), - TypedField('queryparameter', label='Query Parameters', + TypedField('queryparameter', label=_('Query Parameters'), names=('queryparameter', 'queryparam', 'qparam', 'query'), typenames=('queryparamtype', 'querytype', 'qtype')), - GroupedField('formparameter', label='Form Parameters', + GroupedField('formparameter', label=_('Form Parameters'), names=('formparameter', 'formparam', 'fparam', 'form')), - GroupedField('requestheader', label='Request Headers', + GroupedField('requestheader', label=_('Request Headers'), rolename='header', names=('<header', 'reqheader', 'requestheader')), - GroupedField('responseheader', label='Response Headers', + GroupedField('responseheader', label=_('Response Headers'), rolename='header', names=('>header', 'resheader', 'responseheader')), - GroupedField('statuscode', label='Status Codes', + GroupedField('statuscode', label=_('Status Codes'), rolename='statuscode', names=('statuscode', 'status', 'code')) ] @@ -498,13 +500,13 @@ elif code == 418: url = 'https://www.ietf.org/rfc/rfc2324.txt' elif code == 429: - url = 'https://tools.ietf.org/html/rfc6585#section-4' + url = 'https://www.rfc-editor.org/rfc/rfc6585#section-4' elif code == 449: url = 'https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-wdv/83ecf19f-e0f8-4706-aae5-ba618f52f100' elif code == 451: url = 'https://www.ietf.org/rfc/rfc7725.txt' elif code in WEBDAV_STATUS_CODES: - url = 'https://tools.ietf.org/html/rfc4918#section-11.%d' % (WEBDAV_STATUS_CODES.index(code) + 1) + url = 'https://www.rfc-editor.org/rfc/rfc4918#section-11.%d' % (WEBDAV_STATUS_CODES.index(code) + 1) elif code in HTTP_STATUS_CODES: url = 'https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html' \ '#sec10.' + ('%d.%d' % (code // 100, 1 + code % 100)) @@ -531,7 +533,7 @@ class HTTPIndex(Index): name = 'routingtable' - localname = 'HTTP Routing Table' + localname = _('HTTP Routing Table') shortname = 'routing table' def __init__(self, *args, **kwargs): @@ -713,7 +715,7 @@ self_data = self.data[typ] other_data = otherdata[typ] for entry_point_name, entry_point_data in other_data.items(): - if entry_point_name in self_data: + if entry_point_name in self_data and entry_point_data != self_data[entry_point_name]: logger.warning('duplicate HTTP %s method definition %s in %s, ' 'other instance is in %s' % (typ, entry_point_name, @@ -798,13 +800,17 @@ app.add_domain(HTTPDomain) app.connect('doctree-read', register_routingtable_as_label) + package_dir = os.path.abspath(os.path.dirname(__file__)) + locale_dir = os.path.join(package_dir, 'locale') + app.add_message_catalog('httpdomain', locale_dir) + try: get_lexer_by_name('http') except ClassNotFound: app.add_lexer('http', HTTPLexer()) app.add_config_value('http_index_ignore_prefixes', [], None) app.add_config_value('http_index_shortname', 'routing table', True) - app.add_config_value('http_index_localname', 'HTTP Routing Table', True) + app.add_config_value('http_index_localname', _('HTTP Routing Table'), True) app.add_config_value('http_strict_mode', True, None) app.add_config_value('http_headers_ignore_prefixes', ['X-'], None) return {"parallel_read_safe": True, Binary files old/httpdomain-1.8.0/sphinxcontrib/locale/es_ES/LC_MESSAGES/httpdomain.mo and new/httpdomain-1.8.1/sphinxcontrib/locale/es_ES/LC_MESSAGES/httpdomain.mo differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/httpdomain-1.8.0/sphinxcontrib/locale/es_ES/LC_MESSAGES/httpdomain.po new/httpdomain-1.8.1/sphinxcontrib/locale/es_ES/LC_MESSAGES/httpdomain.po --- old/httpdomain-1.8.0/sphinxcontrib/locale/es_ES/LC_MESSAGES/httpdomain.po 1970-01-01 01:00:00.000000000 +0100 +++ new/httpdomain-1.8.1/sphinxcontrib/locale/es_ES/LC_MESSAGES/httpdomain.po 2022-11-14 16:43:04.000000000 +0100 @@ -0,0 +1,68 @@ +# Spanish (Spain) translations for PROJECT. +# Copyright (C) 2022 ORGANIZATION +# This file is distributed under the same license as the PROJECT project. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: PROJECT VERSION\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2022-04-19 11:04+0200\n" +"PO-Revision-Date: 2022-04-25 10:40+0200\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language: es_ES\n" +"Language-Team: es_ES <l...@li.org>\n" +"Plural-Forms: nplurals=2; plural=(n != 1)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.9.1\n" + +#: sphinxcontrib/httpdomain.py:271 +msgid "Parameters" +msgstr "Parámetros" + +#: sphinxcontrib/httpdomain.py:274 +msgid "JSON Parameters" +msgstr "Parámetros JSON" + +#: sphinxcontrib/httpdomain.py:277 +msgid "Request JSON Object" +msgstr "Objeto JSON de solicitud" + +#: sphinxcontrib/httpdomain.py:280 +msgid "Request JSON Array of Objects" +msgstr "Lista de objetos JSON de solicitud" + +#: sphinxcontrib/httpdomain.py:283 +msgid "Response JSON Object" +msgstr "Objeto JSON de respuesta" + +#: sphinxcontrib/httpdomain.py:286 +msgid "Response JSON Array of Objects" +msgstr "Lista de objetos JSON de respuesta" + +#: sphinxcontrib/httpdomain.py:289 +msgid "Query Parameters" +msgstr "Parámetros de consulta" + +#: sphinxcontrib/httpdomain.py:292 +msgid "Form Parameters" +msgstr "Parámetros de Forma" + +#: sphinxcontrib/httpdomain.py:294 +msgid "Request Headers" +msgstr "Encabezados de solicitud" + +#: sphinxcontrib/httpdomain.py:297 +msgid "Response Headers" +msgstr "Encabezados de respuesta" + +#: sphinxcontrib/httpdomain.py:300 +msgid "Status Codes" +msgstr "Códigos de Status" + +#: sphinxcontrib/httpdomain.py:794 +msgid "HTTP Routing Table" +msgstr "Tabla de enrutamiento HTTP" + Binary files old/httpdomain-1.8.0/sphinxcontrib/locale/fr_FR/LC_MESSAGES/httpdomain.mo and new/httpdomain-1.8.1/sphinxcontrib/locale/fr_FR/LC_MESSAGES/httpdomain.mo differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/httpdomain-1.8.0/sphinxcontrib/locale/fr_FR/LC_MESSAGES/httpdomain.po new/httpdomain-1.8.1/sphinxcontrib/locale/fr_FR/LC_MESSAGES/httpdomain.po --- old/httpdomain-1.8.0/sphinxcontrib/locale/fr_FR/LC_MESSAGES/httpdomain.po 1970-01-01 01:00:00.000000000 +0100 +++ new/httpdomain-1.8.1/sphinxcontrib/locale/fr_FR/LC_MESSAGES/httpdomain.po 2022-11-14 16:43:04.000000000 +0100 @@ -0,0 +1,68 @@ +# French (France) translations for PROJECT. +# Copyright (C) 2022 ORGANIZATION +# This file is distributed under the same license as the PROJECT project. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: PROJECT VERSION\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2022-04-19 11:04+0200\n" +"PO-Revision-Date: 2022-04-25 10:40+0200\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language: fr_FR\n" +"Language-Team: fr_FR <l...@li.org>\n" +"Plural-Forms: nplurals=2; plural=(n > 1)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.9.1\n" + +#: sphinxcontrib/httpdomain.py:271 +msgid "Parameters" +msgstr "Paramètres" + +#: sphinxcontrib/httpdomain.py:274 +msgid "JSON Parameters" +msgstr "Paramètre JSON" + +#: sphinxcontrib/httpdomain.py:277 +msgid "Request JSON Object" +msgstr "Objet JSON de requête" + +#: sphinxcontrib/httpdomain.py:280 +msgid "Request JSON Array of Objects" +msgstr "Tableau d'objets JSON de requête" + +#: sphinxcontrib/httpdomain.py:283 +msgid "Response JSON Object" +msgstr "Objet JSON de réponse" + +#: sphinxcontrib/httpdomain.py:286 +msgid "Response JSON Array of Objects" +msgstr "Tableau d'objets JSON de réponse" + +#: sphinxcontrib/httpdomain.py:289 +msgid "Query Parameters" +msgstr "Paramètres de requête" + +#: sphinxcontrib/httpdomain.py:292 +msgid "Form Parameters" +msgstr "Paramètres de la forme" + +#: sphinxcontrib/httpdomain.py:294 +msgid "Request Headers" +msgstr "En-têtes de requête" + +#: sphinxcontrib/httpdomain.py:297 +msgid "Response Headers" +msgstr "En-têtes de réponse" + +#: sphinxcontrib/httpdomain.py:300 +msgid "Codes de status" +msgstr "Códigos de Status" + +#: sphinxcontrib/httpdomain.py:794 +msgid "HTTP Routing Table" +msgstr "Table de routage HTTP" + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/httpdomain-1.8.0/sphinxcontrib/locale/httpdomain.pot new/httpdomain-1.8.1/sphinxcontrib/locale/httpdomain.pot --- old/httpdomain-1.8.0/sphinxcontrib/locale/httpdomain.pot 1970-01-01 01:00:00.000000000 +0100 +++ new/httpdomain-1.8.1/sphinxcontrib/locale/httpdomain.pot 2022-11-14 16:43:04.000000000 +0100 @@ -0,0 +1,279 @@ +# Translations template for PROJECT. +# Copyright (C) 2022 ORGANIZATION +# This file is distributed under the same license as the PROJECT project. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2022. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PROJECT VERSION\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2022-04-19 11:04+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <l...@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.9.1\n" + +#: sphinxcontrib/httpdomain.py:191 +msgid "Continue" +msgstr "" + +#: sphinxcontrib/httpdomain.py:192 +msgid "Switching Protocols" +msgstr "" + +#: sphinxcontrib/httpdomain.py:193 +msgid "Processing" +msgstr "" + +#: sphinxcontrib/httpdomain.py:194 +msgid "OK" +msgstr "" + +#: sphinxcontrib/httpdomain.py:195 +msgid "Created" +msgstr "" + +#: sphinxcontrib/httpdomain.py:196 +msgid "Accepted" +msgstr "" + +#: sphinxcontrib/httpdomain.py:197 +msgid "Non Authoritative Information" +msgstr "" + +#: sphinxcontrib/httpdomain.py:198 +msgid "No Content" +msgstr "" + +#: sphinxcontrib/httpdomain.py:199 +msgid "Reset Content" +msgstr "" + +#: sphinxcontrib/httpdomain.py:200 +msgid "Partial Content" +msgstr "" + +#: sphinxcontrib/httpdomain.py:201 +msgid "Multi Status" +msgstr "" + +#: sphinxcontrib/httpdomain.py:202 +msgid "IM Used" +msgstr "" + +#: sphinxcontrib/httpdomain.py:203 +msgid "Multiple Choices" +msgstr "" + +#: sphinxcontrib/httpdomain.py:204 +msgid "Moved Permanently" +msgstr "" + +#: sphinxcontrib/httpdomain.py:205 +msgid "Found" +msgstr "" + +#: sphinxcontrib/httpdomain.py:206 +msgid "See Other" +msgstr "" + +#: sphinxcontrib/httpdomain.py:207 +msgid "Not Modified" +msgstr "" + +#: sphinxcontrib/httpdomain.py:208 +msgid "Use Proxy" +msgstr "" + +#: sphinxcontrib/httpdomain.py:209 +msgid "Temporary Redirect" +msgstr "" + +#: sphinxcontrib/httpdomain.py:210 +msgid "Bad Request" +msgstr "" + +#: sphinxcontrib/httpdomain.py:211 +msgid "Unauthorized" +msgstr "" + +#: sphinxcontrib/httpdomain.py:212 +msgid "Payment Required" +msgstr "" + +#: sphinxcontrib/httpdomain.py:213 +msgid "Forbidden" +msgstr "" + +#: sphinxcontrib/httpdomain.py:214 +msgid "Not Found" +msgstr "" + +#: sphinxcontrib/httpdomain.py:215 +msgid "Method Not Allowed" +msgstr "" + +#: sphinxcontrib/httpdomain.py:216 +msgid "Not Acceptable" +msgstr "" + +#: sphinxcontrib/httpdomain.py:217 +msgid "Proxy Authentication Required" +msgstr "" + +#: sphinxcontrib/httpdomain.py:218 +msgid "Request Timeout" +msgstr "" + +#: sphinxcontrib/httpdomain.py:219 +msgid "Conflict" +msgstr "" + +#: sphinxcontrib/httpdomain.py:220 +msgid "Gone" +msgstr "" + +#: sphinxcontrib/httpdomain.py:221 +msgid "Length Required" +msgstr "" + +#: sphinxcontrib/httpdomain.py:222 +msgid "Precondition Failed" +msgstr "" + +#: sphinxcontrib/httpdomain.py:223 +msgid "Request Entity Too Large" +msgstr "" + +#: sphinxcontrib/httpdomain.py:224 +msgid "Request URI Too Long" +msgstr "" + +#: sphinxcontrib/httpdomain.py:225 +msgid "Unsupported Media Type" +msgstr "" + +#: sphinxcontrib/httpdomain.py:226 +msgid "Requested Range Not Satisfiable" +msgstr "" + +#: sphinxcontrib/httpdomain.py:227 +msgid "Expectation Failed" +msgstr "" + +#: sphinxcontrib/httpdomain.py:228 +msgid "I'm a teapot" +msgstr "" + +#: sphinxcontrib/httpdomain.py:229 +msgid "Unprocessable Entity" +msgstr "" + +#: sphinxcontrib/httpdomain.py:230 +msgid "Locked" +msgstr "" + +#: sphinxcontrib/httpdomain.py:231 +msgid "Failed Dependency" +msgstr "" + +#: sphinxcontrib/httpdomain.py:232 +msgid "Upgrade Required" +msgstr "" + +#: sphinxcontrib/httpdomain.py:233 +msgid "Too Many Requests" +msgstr "" + +#: sphinxcontrib/httpdomain.py:234 +msgid "Retry With" +msgstr "" + +#: sphinxcontrib/httpdomain.py:235 +msgid "Unavailable For Legal Reasons" +msgstr "" + +#: sphinxcontrib/httpdomain.py:236 +msgid "Internal Server Error" +msgstr "" + +#: sphinxcontrib/httpdomain.py:237 +msgid "Not Implemented" +msgstr "" + +#: sphinxcontrib/httpdomain.py:238 +msgid "Bad Gateway" +msgstr "" + +#: sphinxcontrib/httpdomain.py:239 +msgid "Service Unavailable" +msgstr "" + +#: sphinxcontrib/httpdomain.py:240 +msgid "Gateway Timeout" +msgstr "" + +#: sphinxcontrib/httpdomain.py:241 +msgid "HTTP Version Not Supported" +msgstr "" + +#: sphinxcontrib/httpdomain.py:242 +msgid "Insufficient Storage" +msgstr "" + +#: sphinxcontrib/httpdomain.py:243 +msgid "Not Extended" +msgstr "" + +#: sphinxcontrib/httpdomain.py:271 +msgid "Parameters" +msgstr "" + +#: sphinxcontrib/httpdomain.py:274 +msgid "JSON Parameters" +msgstr "" + +#: sphinxcontrib/httpdomain.py:277 +msgid "Request JSON Object" +msgstr "" + +#: sphinxcontrib/httpdomain.py:280 +msgid "Request JSON Array of Objects" +msgstr "" + +#: sphinxcontrib/httpdomain.py:283 +msgid "Response JSON Object" +msgstr "" + +#: sphinxcontrib/httpdomain.py:286 +msgid "Response JSON Array of Objects" +msgstr "" + +#: sphinxcontrib/httpdomain.py:289 +msgid "Query Parameters" +msgstr "" + +#: sphinxcontrib/httpdomain.py:292 +msgid "Form Parameters" +msgstr "" + +#: sphinxcontrib/httpdomain.py:294 +msgid "Request Headers" +msgstr "" + +#: sphinxcontrib/httpdomain.py:297 +msgid "Response Headers" +msgstr "" + +#: sphinxcontrib/httpdomain.py:300 +msgid "Status Codes" +msgstr "" + +#: sphinxcontrib/httpdomain.py:794 +msgid "HTTP Routing Table" +msgstr "" + ++++++ python-sphinxcontrib-httpdomain-fix-version.patch ++++++ Index: httpdomain-1.8.1/setup.py =================================================================== --- httpdomain-1.8.1.orig/setup.py +++ httpdomain-1.8.1/setup.py @@ -20,7 +20,7 @@ def readme(): setup( name='sphinxcontrib-httpdomain', - version='1.8.0', + version='1.8.1', url='https://github.com/sphinx-contrib/httpdomain', download_url='https://pypi.org/project/sphinxcontrib-httpdomain/', license='BSD', ++++++ python-sphinxcontrib-httpdomain-pyupgrade3.patch ++++++ Index: httpdomain-1.8.1/sphinxcontrib/autohttp/bottle.py =================================================================== --- httpdomain-1.8.1.orig/sphinxcontrib/autohttp/bottle.py +++ httpdomain-1.8.1/sphinxcontrib/autohttp/bottle.py @@ -93,8 +93,7 @@ class AutobottleDirective(Directive): continue docstring = prepare_docstring(docstring) - for line in http_directive(method, path, docstring): - yield line + yield from http_directive(method, path, docstring) def run(self): node = nodes.section() Index: httpdomain-1.8.1/sphinxcontrib/autohttp/common.py =================================================================== --- httpdomain-1.8.1.orig/sphinxcontrib/autohttp/common.py +++ httpdomain-1.8.1/sphinxcontrib/autohttp/common.py @@ -9,8 +9,8 @@ """ import six -from six.moves import builtins -from six.moves import reduce +import builtins +from functools import reduce def import_object(import_name): module_name, expr = import_name.split(':', 1) @@ -24,10 +24,10 @@ def import_object(import_name): def http_directive(method, path, content): method = method.lower().strip() - if isinstance(content, six.string_types): + if isinstance(content, str): content = content.splitlines() yield '' - paths = [path] if isinstance(path, six.string_types) else path + paths = [path] if isinstance(path, str) else path for path in paths: yield '.. http:{method}:: {path}'.format(**locals()) yield '' Index: httpdomain-1.8.1/sphinxcontrib/autohttp/flask.py =================================================================== --- httpdomain-1.8.1.orig/sphinxcontrib/autohttp/flask.py +++ httpdomain-1.8.1/sphinxcontrib/autohttp/flask.py @@ -9,7 +9,6 @@ :license: BSD, see LICENSE for details. """ -from __future__ import absolute_import import re import itertools Index: httpdomain-1.8.1/sphinxcontrib/autohttp/flask_base.py =================================================================== --- httpdomain-1.8.1.orig/sphinxcontrib/autohttp/flask_base.py +++ httpdomain-1.8.1/sphinxcontrib/autohttp/flask_base.py @@ -90,7 +90,7 @@ def get_routes(app, endpoint=None, order endpoints = [] for rule in app.url_map.iter_rules(endpoint): url_with_endpoint = ( - six.text_type(next(app.url_map.iter_rules(rule.endpoint))), + str(next(app.url_map.iter_rules(rule.endpoint))), rule.endpoint ) if url_with_endpoint not in endpoints: @@ -126,9 +126,9 @@ def cleanup_methods(methods): def quickref_directive(method, path, content, blueprint=None, auto=False): - rcomp = re.compile("^\s*.. :quickref:\s*(?P<quick>.*)$") + rcomp = re.compile(r"^\s*.. :quickref:\s*(?P<quick>.*)$") method = method.lower().strip() - if isinstance(content, six.string_types): + if isinstance(content, str): content = content.splitlines() description = "" name = "" @@ -154,7 +154,7 @@ def quickref_directive(method, path, con row = {} row['name'] = name - row['operation'] = ' - `%s %s <#%s-%s>`_' % ( + row['operation'] = ' - `{} {} <#{}-{}>`_'.format( method.upper(), path, method.lower(), ref) row['description'] = description @@ -311,5 +311,4 @@ class AutoflaskBase(Directive): blueprint, auto=auto) yield row else: - for line in http_directive(method, paths, docstring): - yield line + yield from http_directive(method, paths, docstring) Index: httpdomain-1.8.1/sphinxcontrib/autohttp/tornado.py =================================================================== --- httpdomain-1.8.1.orig/sphinxcontrib/autohttp/tornado.py +++ httpdomain-1.8.1/sphinxcontrib/autohttp/tornado.py @@ -133,8 +133,7 @@ class AutoTornadoDirective(Directive): continue docstring = prepare_docstring(docstring) - for line in http_directive(method, normalize_path(path), docstring): - yield line + yield from http_directive(method, normalize_path(path), docstring) def run(self): node = nodes.section()