GeezerVison is showing github.com — Remove formatter module · Issue #86465 · python/cpython
Remove formatter module #86465Description
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 = <Date 2020-11-25.13:19:31.066>
created_at = <Date 2020-11-09.23:41:26.211>
labels = ['type-feature', '3.10']
title = 'Remove formatter module'
updated_at = <Date 2021-01-06.19:31:45.677>
user = 'https://github.com/terryjreedy'
bugs.python.org fields:
activity = <Date 2021-01-06.19:31:45.677>
actor = 'EWDurbin'
assignee = 'none'
closed = True
closed_date = <Date 2020-11-25.13:19:31.066>
closer = 'corona10'
components = []
creation = <Date 2020-11-09.23:41:26.211>
creator = 'terry.reedy'
dependencies = []
files = ['49584']
hgrepos = []
issue_num = 42299
keywords = ['patch']
message_count = 14.0
messages = ['380623', '380624', '381669', '381710', '381725', '381746', '381772', '381828', '381829', '381833', '381917', '384528', '384535', '384536']
nosy_count = 8.0
nosy_names = ['terry.reedy', 'vstinner', 'christian.heimes', 'EWDurbin', 'mdk', 'hroncok', 'corona10', 'xtreak']
pr_nums = ['23476']
priority = 'normal'
resolution = 'fixed'
stage = 'resolved'
status = 'closed'
superseder = None
type = 'enhancement'
url = 'https://bugs.python.org/issue42299'
versions = ['Python 3.10']
Activityterryjreedy commented on Nov 9, 2020 bpo-14019 has a patch, unrelated to the issue, that adds test.test_formatter. There still is no such file, so I open this issue to move the patch here. It is the second version, responding to review by Ezio Melotti.
But formatter has been deprecated since 3.4. It was originally scheduled to be removed in 3.6, but we decided to delay such removals until after 2.7 EOL. That is now past. Do we add tests for a deprecated module? If so, the patch, aDo we still want to remove formatter? If so, when? terryjreedy commented on Nov 9, 2020 The patch is by Francisco Freire (francisco.freire) * (CLA signed). There is apparently no way to directly move a patch from one issue to another, so I download and upload. corona10 commented on Nov 23, 2020
If so, the patch, aDo we still want to remove formatted
IMHO, 3.10 is a good time to remove formatter tiran commented on Nov 24, 2020 The formatter has been deprecated for a long time. It's been issuing a DeprecationWarning on import since 3.5. Let's remove it. changed the title [-]Add test_formatter (or remove deprecated formatter module?)[/-] [+]Remove formatter module[/+] on Nov 24, 2020changed the title [-]Add test_formatter (or remove deprecated formatter module?)[/-] [+]Remove formatter module[/+] on Nov 24, 2020corona10 commented on Nov 24, 2020 @christian.heimes
Thank you Christian
I also discuss this issue on python-dev and everybody agree with removing this module.
I will remove this module ;) tirkarthi commented on Nov 24, 2020 terryjreedy commented on Nov 24, 2020 I took a look at the module and its doc. It is based on a 1980s model of document processing that has been somewhat superseded by html, xml, and pdf. The module itself has been pretty well superseded by stdlib and external moudles. IDLE, for instance, displays idle.html in a tkinter Text widget about 160 lines by subclassing htmlparser.
One obsolescent 'feature' is that fonts are defined by (size, italic, bold, teletype), where 'teletype' is a bool of undefined meaning. There is no way I saw to designate a font family like 'Source Code Pro' or 'Monaco'.
Since the module is unmaintained and frozen, anyone importing it can incorporate whatever class code they need. corona10 commented on Nov 25, 2020 corona10 commented on Nov 25, 2020 @terry.reedy @vstinner
Thank you, Terry and Victor, and goodbye formatter module! vstinner commented on Nov 25, 2020 terryjreedy commented on Nov 26, 2020 A coda on my 'obsolete and superseded' claim: text formatting events have 2 sources -- the text being displayed and user actions while reading. formatter somewhat mixes these together.
html.parser.HTMLParser generates events from the text in the form of calls to handle_xyz methods, where 'xyy is most commonly 'starttag', 'data', 'endtag'. HTMLPareser subclasses replace the default 'pass' implementations. So the idea is similar to formatter.NullFormatter. IDLE uses the tkinter Text widget as the writer instance for its HTMLParser subclass. Responses to events may depend on user settings, which may be changed by user events.
For a GUI app, user events are handled by the GUI framework and may or mayy not require user coding to handle. hroncok commented on Jan 6, 2021 tiran commented on Jan 6, 2021 ewdurbin commented on Jan 6, 2021 Issues relating to documentation build likely need to be looked at and addressed by Julien. If it does end up being an infra issue, feel free to read me to nosy.
MetadataMetadataDevelopmentNo branches or pull requestsIssue actions
|