mirror of
https://github.com/python/cpython.git
synced 2026-06-28 11:50:50 +00:00
gh-150285: Fix overflow in too long lines for class data in pydoc (GH-151366)
Use all available space (80 columns) for formatting reprs of module and class data, but ensure that they do not overflow.
This commit is contained in:
parent
402668b2b1
commit
d2e27aca4b
2 changed files with 5 additions and 3 deletions
|
|
@ -1355,7 +1355,7 @@ def docmodule(self, object, name=None, mod=None, *ignored):
|
|||
if data:
|
||||
contents = []
|
||||
for key, value in data:
|
||||
contents.append(self.docother(value, key, name, maxlen=70))
|
||||
contents.append(self.docother(value, key, name, maxlen=76))
|
||||
result = result + self.section('DATA', '\n'.join(contents))
|
||||
|
||||
if version := self._get_version(object):
|
||||
|
|
@ -1478,7 +1478,7 @@ def spilldata(msg, attrs, predicate):
|
|||
obj = getattr(object, name)
|
||||
except AttributeError:
|
||||
obj = homecls.__dict__[name]
|
||||
push(self.docother(obj, name, mod, maxlen=70, doc=doc) +
|
||||
push(self.docother(obj, name, mod, maxlen=72, doc=doc) +
|
||||
'\n')
|
||||
return attrs
|
||||
|
||||
|
|
@ -1629,7 +1629,7 @@ def docother(self, object, name=None, mod=None, parent=None, *ignored,
|
|||
if maxlen:
|
||||
line = (name and name + ' = ' or '') + repr
|
||||
chop = maxlen - len(line)
|
||||
if chop < 0: repr = repr[:chop] + '...'
|
||||
if chop < 0: repr = repr[:chop-3] + '...'
|
||||
line = (name and self.bold(name) + ' = ' or '') + repr
|
||||
if not doc:
|
||||
doc = getdoc(object)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,2 @@
|
|||
:mod:`pydoc` now uses all available space (80 columns) for formatting reprs
|
||||
of module and class data, but ensure that they do not overflow.
|
||||
Loading…
Add table
Add a link
Reference in a new issue