Repository navigation
Closed
Labels
3.12only security fixesonly security fixes3.13only security fixesonly security fixes3.14bugs and security fixesbugs and security fixestriagedThe issue has been accepted as valid by a triager.The issue has been accepted as valid by a triager.type-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Description
| BPO | 40835 |
|---|---|
| Nosy | @da1910 |
| Files |
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
assignee = None
closed_at = None
created_at = <Date 2020-05-31.20:56:52.559>
labels = ['type-bug', '3.8']
title = 'Incorrect handling for msgctxt in msgfmt.py'
updated_at = <Date 2020-05-31.21:16:05.371>
user = 'https://github.com/da1910'bugs.python.org fields:
activity = <Date 2020-05-31.21:16:05.371>
actor = 'da1910'
assignee = 'none'
closed = False
closed_date = None
closer = None
components = ['Demos and Tools']
creation = <Date 2020-05-31.20:56:52.559>
creator = 'da1910'
dependencies = []
files = ['49205', '49206']
hgrepos = []
issue_num = 40835
keywords = ['patch']
message_count = 3.0
messages = ['370502', '370504', '370507']
nosy_count = 1.0
nosy_names = ['da1910']
pr_nums = []
priority = 'normal'
resolution = None
stage = None
status = 'open'
superseder = None
type = 'behavior'
url = 'https://bugs.python.org/issue40835'
versions = ['Python 3.8']Linked PRs
Reacted by Maciej Olko
Metadata
Metadata
Assignees
Labels
3.12only security fixesonly security fixes3.13only security fixesonly security fixes3.14bugs and security fixesbugs and security fixestriagedThe issue has been accepted as valid by a triager.The issue has been accepted as valid by a triager.type-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Projects
- StatusShow more project fieldsDone
Activity
da1910 commentedon May 31, 2020
Running msgfmt.py with the attached po file will produce an incorrect context for the entry "test".
Looking at the script, we require a comment to follow a contexted section for the context to be cleared. The gettext documentation makes clear that all comments are optional, so this is not desired behaviour.
My reading of the gettext documentation has a "msgctxt" line applying only to the current entry, so it should be cleared once the last msgstr has been written for that entry.
I will endeavour to provide a patch within the next day or two.
da1910 commentedon May 31, 2020
Test po file included
da1910 commentedon May 31, 2020
And a patch:
After the end of a message entry the options for the next line are:
m-aciek commentedon Dec 8, 2023
Does
msgfmt.pyhave its test suite? It would be worth to add also a regression test there.tomasr8 commentedon Dec 8, 2023
There is
Lib/test/test_tools/test_i18n.pyfor pygettext but no tests for msgfmt as far as I'm awaregh-85012: Properly reset msgctxt when compiling messages with msgfmt (G…
[3.13] pythongh-85012: Properly reset msgctxt when compiling messages…
[3.12] pythongh-85012: Properly reset msgctxt when compiling messages…
[3.12] gh-85012: Properly reset msgctxt when compiling messages with …
[3.13] gh-85012: Properly reset msgctxt when compiling messages with …
[3.12] pythongh-85012: Properly reset msgctxt when compiling messages…
pythongh-85012: Properly reset msgctxt when compiling messages with m…