From bb6d65ee942068eba79076cccf7861110d9c6007 Mon Sep 17 00:00:00 2001 From: Marco Rossi Date: Wed, 14 Feb 2024 13:40:18 +0100 Subject: [PATCH 1/6] Fix nonascii object names --- ...ascii.NonAscii\303\204\303\266\303\274\303\237.rst" | 10 +++++----- .../tests/cases/non_ascii/output/index.rst.automodsumm | 2 +- sphinx_automodapi/tests/example_module/nonascii.py | 4 ++-- sphinx_automodapi/utils.py | 6 +++--- 4 files changed, 11 insertions(+), 11 deletions(-) rename sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii.rst => "sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" (65%) diff --git a/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii.rst "b/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" similarity index 65% rename from sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii.rst rename to "sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" index 1ea0c55..f4e8056 100644 --- a/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii.rst +++ "b/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" @@ -1,17 +1,17 @@ -NonAscii -======== +NonAsciiÄöüß +============ .. currentmodule:: sphinx_automodapi.tests.example_module.nonascii -.. autoclass:: NonAscii +.. autoclass:: NonAsciiÄöüß :show-inheritance: .. rubric:: Methods Summary .. autosummary:: - ~NonAscii.get_ß - ~NonAscii.get_äöü + ~NonAsciiÄöüß.get_ß + ~NonAsciiÄöüß.get_äöü .. rubric:: Methods Documentation diff --git a/sphinx_automodapi/tests/cases/non_ascii/output/index.rst.automodsumm b/sphinx_automodapi/tests/cases/non_ascii/output/index.rst.automodsumm index fb4ef02..d0cc103 100644 --- a/sphinx_automodapi/tests/cases/non_ascii/output/index.rst.automodsumm +++ b/sphinx_automodapi/tests/cases/non_ascii/output/index.rst.automodsumm @@ -11,5 +11,5 @@ .. autosummary:: :toctree: api - NonAscii + NonAsciiÄöüß diff --git a/sphinx_automodapi/tests/example_module/nonascii.py b/sphinx_automodapi/tests/example_module/nonascii.py index ccded8e..7fa4f1a 100644 --- a/sphinx_automodapi/tests/example_module/nonascii.py +++ b/sphinx_automodapi/tests/example_module/nonascii.py @@ -1,7 +1,7 @@ -__all__ = ['NonAscii'] +__all__ = ['NonAsciiÄöüß'] -class NonAscii(object): +class NonAsciiÄöüß(object): def get_äöü(self): """ Return a string with common umlauts like äöüß diff --git a/sphinx_automodapi/utils.py b/sphinx_automodapi/utils.py index 57c68cd..4512cf9 100644 --- a/sphinx_automodapi/utils.py +++ b/sphinx_automodapi/utils.py @@ -125,10 +125,10 @@ def find_autosummary_in_lines_for_automodsumm(lines, module=None, filename=None) """ autosummary_re = re.compile(r'^(\s*)\.\.\s+autosummary::\s*') automodule_re = re.compile( - r'^\s*\.\.\s+automodule::\s*([A-Za-z0-9_.]+)\s*$') + r'^\s*\.\.\s+automodule::\s*([A-Za-zäüöÄÜÖß0-9_.]+)\s*$') module_re = re.compile( - r'^\s*\.\.\s+(current)?module::\s*([a-zA-Z0-9_.]+)\s*$') - autosummary_item_re = re.compile(r'^\s+(~?[_a-zA-Z][a-zA-Z0-9_.]*)\s*.*?') + r'^\s*\.\.\s+(current)?module::\s*([a-zA-ZäüöÄÜÖß0-9_.]+)\s*$') + autosummary_item_re = re.compile(r'^\s+(~?[_a-zA-ZäüöÄÜÖß][a-zA-ZäüöÄÜÖß0-9_.]*)\s*.*?') toctree_arg_re = re.compile(r'^\s+:toctree:\s*(.*?)\s*$') template_arg_re = re.compile(r'^\s+:template:\s*(.*?)\s*$') inherited_members_arg_re = re.compile(r'^\s+:inherited-members:\s*$') From 511f6de231fe298d9d48e21271cf10cfe577a1d8 Mon Sep 17 00:00:00 2001 From: Marco Rossi Date: Wed, 14 Feb 2024 14:07:52 +0100 Subject: [PATCH 2/6] Set another open dialog with encoding utf8 to try to fix errors on Windows --- sphinx_automodapi/automodsumm.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sphinx_automodapi/automodsumm.py b/sphinx_automodapi/automodsumm.py index b927a16..323c184 100644 --- a/sphinx_automodapi/automodsumm.py +++ b/sphinx_automodapi/automodsumm.py @@ -291,7 +291,7 @@ def process_automodsumm_generation(app): if app.config.automodsumm_writereprocessed: if lines: # empty list means no automodsumm entry is in the file outfn = os.path.join(app.srcdir, sfn) + '.automodsumm' - with open(outfn, 'w') as f: + with open(outfn, 'w', encoding='utf8') as f: for l in lines: # noqa: E741 f.write(l) f.write('\n') From f111d36fef67feb8780e384d454a9018666a2ed5 Mon Sep 17 00:00:00 2001 From: Marco Rossi Date: Wed, 14 Feb 2024 19:59:59 +0100 Subject: [PATCH 3/6] Update changelog --- CHANGES.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGES.rst b/CHANGES.rst index 0e98011..ade6af6 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -8,6 +8,8 @@ Changes in sphinx-automodapi - Minimum supported Python version is now 3.8. [#177] +- Fixed issue with non-ascii characters in object names [#184] + 0.16.0 (2023-08-17) ------------------- From 4d78a2cf5b96c3edb1afd1862e95abd325b47fed Mon Sep 17 00:00:00 2001 From: "P. L. Lim" <2090236+pllim@users.noreply.github.com> Date: Wed, 14 Feb 2024 14:11:53 -0500 Subject: [PATCH 4/6] Add period at the end of sentence --- CHANGES.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGES.rst b/CHANGES.rst index ade6af6..38427f1 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -8,7 +8,7 @@ Changes in sphinx-automodapi - Minimum supported Python version is now 3.8. [#177] -- Fixed issue with non-ascii characters in object names [#184] +- Fixed issue with non-ascii characters in object names. [#184] 0.16.0 (2023-08-17) ------------------- From 5cb1818309dc54d3680f0474dac96faa1700bb72 Mon Sep 17 00:00:00 2001 From: Marco Rossi Date: Thu, 15 Feb 2024 08:27:39 +0100 Subject: [PATCH 5/6] Ensure @bsipocz name is handled MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Brigitta Sipőcz --- ...ascii.NonAscii\303\204\303\266\303\274\303\237.rst" | 10 +++++----- .../tests/cases/non_ascii/output/index.rst.automodsumm | 2 +- sphinx_automodapi/tests/example_module/nonascii.py | 4 ++-- sphinx_automodapi/utils.py | 6 +++--- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git "a/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" "b/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" index f4e8056..caab61b 100644 --- "a/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" +++ "b/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" @@ -1,17 +1,17 @@ -NonAsciiÄöüß -============ +NonAsciiÄöüßő +============= .. currentmodule:: sphinx_automodapi.tests.example_module.nonascii -.. autoclass:: NonAsciiÄöüß +.. autoclass:: NonAsciiÄöüßő :show-inheritance: .. rubric:: Methods Summary .. autosummary:: - ~NonAsciiÄöüß.get_ß - ~NonAsciiÄöüß.get_äöü + ~NonAsciiÄöüßő.get_ß + ~NonAsciiÄöüßő.get_äöü .. rubric:: Methods Documentation diff --git a/sphinx_automodapi/tests/cases/non_ascii/output/index.rst.automodsumm b/sphinx_automodapi/tests/cases/non_ascii/output/index.rst.automodsumm index d0cc103..1d99fca 100644 --- a/sphinx_automodapi/tests/cases/non_ascii/output/index.rst.automodsumm +++ b/sphinx_automodapi/tests/cases/non_ascii/output/index.rst.automodsumm @@ -11,5 +11,5 @@ .. autosummary:: :toctree: api - NonAsciiÄöüß + NonAsciiÄöüßő diff --git a/sphinx_automodapi/tests/example_module/nonascii.py b/sphinx_automodapi/tests/example_module/nonascii.py index 7fa4f1a..4928b78 100644 --- a/sphinx_automodapi/tests/example_module/nonascii.py +++ b/sphinx_automodapi/tests/example_module/nonascii.py @@ -1,7 +1,7 @@ -__all__ = ['NonAsciiÄöüß'] +__all__ = ['NonAsciiÄöüßő'] -class NonAsciiÄöüß(object): +class NonAsciiÄöüßő(object): def get_äöü(self): """ Return a string with common umlauts like äöüß diff --git a/sphinx_automodapi/utils.py b/sphinx_automodapi/utils.py index 4512cf9..6934124 100644 --- a/sphinx_automodapi/utils.py +++ b/sphinx_automodapi/utils.py @@ -125,10 +125,10 @@ def find_autosummary_in_lines_for_automodsumm(lines, module=None, filename=None) """ autosummary_re = re.compile(r'^(\s*)\.\.\s+autosummary::\s*') automodule_re = re.compile( - r'^\s*\.\.\s+automodule::\s*([A-Za-zäüöÄÜÖß0-9_.]+)\s*$') + r'^\s*\.\.\s+automodule::\s*([A-Za-zäüöÄÜÖßő0-9_.]+)\s*$') module_re = re.compile( - r'^\s*\.\.\s+(current)?module::\s*([a-zA-ZäüöÄÜÖß0-9_.]+)\s*$') - autosummary_item_re = re.compile(r'^\s+(~?[_a-zA-ZäüöÄÜÖß][a-zA-ZäüöÄÜÖß0-9_.]*)\s*.*?') + r'^\s*\.\.\s+(current)?module::\s*([a-zA-ZäüöÄÜÖßő0-9_.]+)\s*$') + autosummary_item_re = re.compile(r'^\s+(~?[_a-zA-ZäüöÄÜÖßő][a-zA-ZäüöÄÜÖßő0-9_.]*)\s*.*?') toctree_arg_re = re.compile(r'^\s+:toctree:\s*(.*?)\s*$') template_arg_re = re.compile(r'^\s+:template:\s*(.*?)\s*$') inherited_members_arg_re = re.compile(r'^\s+:inherited-members:\s*$') From 5ab68d0d3f5c90bb1fd2b260e457ae7ba2091226 Mon Sep 17 00:00:00 2001 From: Marco Rossi Date: Thu, 15 Feb 2024 08:37:37 +0100 Subject: [PATCH 6/6] Also update filename --- ...nonascii.NonAscii\303\204\303\266\303\274\303\237\305\221.rst" | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename "sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" => "sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237\305\221.rst" (100%) diff --git "a/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" "b/sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237\305\221.rst" similarity index 100% rename from "sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237.rst" rename to "sphinx_automodapi/tests/cases/non_ascii/output/api/sphinx_automodapi.tests.example_module.nonascii.NonAscii\303\204\303\266\303\274\303\237\305\221.rst"