Commit Graph

310 Commits

Author SHA1 Message Date
Martin Panter
e2e0deec45 Issue #18010: Merge pydoc web search fix from 3.5 2015-11-06 01:08:34 +00:00
Martin Panter
98da9d0e0d Issue #18010: Merge pydoc web search fix from 3.4 into 3.5 2015-11-06 00:51:38 +00:00
Martin Panter
9ad0aae656 Issue #18010: Fix pydoc web server search to handle package exceptions
Implementation by Antoine Pitrou.
2015-11-06 00:27:14 +00:00
Serhiy Storchaka
fc632e3912 Merge with 3.5. 2015-10-06 18:52:52 +03:00
Raymond Hettinger
95801bbe4e Issue #24879: Teach pydoc to display named tuple fields in the order they were defined. 2015-08-18 22:25:16 -07:00
Eric Snow
32439d6eb6 Issue #23911: Move path-based bootstrap code to a separate frozen module. 2015-05-02 19:15:18 -06:00
Serhiy Storchaka
f5e8540e1b Issue #23008: Fixed resolving attributes with boolean value is False in pydoc. 2015-04-21 21:11:13 +03:00
Serhiy Storchaka
b6076fb13c Issue #23008: Fixed resolving attributes with boolean value is False in pydoc. 2015-04-21 21:09:48 +03:00
Brett Cannon
f299abdafa Issue #23731: Implement PEP 488.
The concept of .pyo files no longer exists. Now .pyc files have an
optional `opt-` tag which specifies if any extra optimizations beyond
the peepholer were applied.
2015-04-13 14:21:02 -04:00
Serhiy Storchaka
46ba6c8563 Issue #22831: Use "with" to avoid possible fd leaks. 2015-04-04 11:01:02 +03:00
R David Murray
c156e51668 Merge: #23792: also catch interrupt around pipe.write. 2015-03-30 10:15:22 -04:00
R David Murray
e7f5e147cd #23792: also catch interrupt around pipe.write.
The previous patch only dealt with KeyboardInterrupt when all of the
data had been consumed by the pager.  This deals with the interrupt
when some data is still pending.
2015-03-30 10:14:47 -04:00
R David Murray
f375b0a4d5 Merge: #23792: Ignore KeyboardInterrupt when the pydoc pager is active. 2015-03-29 15:19:13 -04:00
R David Murray
1058cda38f #23792: Ignore KeyboardInterrupt when the pydoc pager is active.
Previously, if you hit ctl-c while the pager was active, the python that
launched the subprocess for the pager would see the KeyboardInterrupt in the
__exit__ method of the subprocess context manager where it was waiting for the
subprocess to complete, ending the wait.  This would leave the pager running,
while the interactive interpreter, after handling the exception by printing
it, would go back to trying to post a prompt...but the pager would generally
have the terminal in raw mode, and in any case would be still trying to read
from stdin.  On some systems, even exiting python at that point would not
restore the terminal mode.  The problem with raw mode could also happen if
ctl-C was hit when pydoc was called from the shell command line and the pager
was active.

Instead, we now wait on the subprocess in a loop, ignoring KeyboardInterrupt
just like the pager does, until the pager actually exits.

(Note: this was a regression relative to python2...in python2 the pager
is called via system, and system does not return until the pager exits.)
2015-03-29 15:15:40 -04:00
Serhiy Storchaka
1c205518a3 Issue #19980: Improved help() for non-recognized strings. help('') now
shows the help on str.  help('help') now shows the help on help().
Original patch by Mark Lawrence.
2015-03-01 00:42:54 +02:00
Serhiy Storchaka
7065f376e0 Issue #23374: Fixed pydoc failure with non-ASCII files when stdout encoding
differs from file system encoding (e.g. on Mac OS).
2015-02-20 23:47:09 +02:00
Serhiy Storchaka
5e3d7a401d Issue #23374: Fixed pydoc failure with non-ASCII files when stdout encoding
differs from file system encoding (e.g. on Mac OS).
2015-02-20 23:46:06 +02:00
Benjamin Peterson
77c041ba64 merge 3.4 (#21548) 2015-02-16 19:45:42 -05:00
Benjamin Peterson
54237f9fea fix pydoc.apropos and pydoc.synopsis on modules with empty docstrings (#21548)
Patch by Yuyang Guo and Berker Peksag.
2015-02-16 19:45:01 -05:00
Serhiy Storchaka
ab5e9b9213 Issue #22314: pydoc now works when the LINES environment variable is set. 2014-11-28 00:09:29 +02:00
Serhiy Storchaka
f1fc9fb33d Issue #22314: pydoc now works when the LINES environment variable is set. 2014-11-28 00:11:07 +02:00
Serhiy Storchaka
0ff742ce2b Issue #20662: Argspec now is escaped in html output of pydoc. 2014-11-17 23:48:35 +02:00
Serhiy Storchaka
66dd4aaa96 Issue #20662: Argspec now is escaped in html output of pydoc. 2014-11-17 23:48:02 +02:00
Georg Brandl
61bd1dcf9b Move Doc/tools/sphinxext content to Doc/tools, there is no need for the nested subdirectory anymore. 2014-09-30 22:56:38 +02:00
Georg Brandl
97e9ec688c Move Doc/tools/sphinxext content to Doc/tools, there is no need for the nested subdirectory anymore. 2014-09-30 22:51:30 +02:00
Senthil Kumaran
810dc9bc81 Merge from 3.4
Issue #22421 - Secure pydoc server run. Bind it to localhost instead of all interfaces.
2014-09-17 13:19:34 +08:00
Senthil Kumaran
aa72b1b448 Merge from 3.3
Issue #22421 - Secure pydoc server run. Bind it to localhost instead of all interfaces.
2014-09-17 13:19:01 +08:00
Senthil Kumaran
2a42a0bff3 Issue #22421 - Secure pydoc server run. Bind it to localhost instead of all interfaces. 2014-09-17 13:17:58 +08:00
Serhiy Storchaka
465e60e654 Issue #22033: Reprs of most Python implemened classes now contain actual
class name instead of hardcoded one.
2014-07-25 23:36:00 +03:00
Zachary Ware
fff80d984c Issue #21942: Fixed source file viewing in pydoc's server mode on Windows. 2014-07-10 11:21:01 -05:00
Zachary Ware
eb43214427 Issue #21942: Fixed source file viewing in pydoc's server mode on Windows. 2014-07-10 11:18:00 -05:00
Benjamin Peterson
eac219436c merge 3.4 (#11709) 2014-06-07 20:17:29 -07:00
Benjamin Peterson
159824ea2a make sure the builtin help function doesn't fail when sys.stdin is not a valid file (closes #11709)
Original patch by Amaury Forgeot d'Arc with a test by bdettmer.
2014-06-07 20:14:26 -07:00
Benjamin Peterson
9d19da701d merge 3.4 (#13223) 2014-06-07 16:47:15 -07:00
Benjamin Peterson
ed1160b39c don't remove self from example code in the HTML output (closes #13223)
Patch by Víctor Terrón.
2014-06-07 16:44:00 -07:00
Brett Cannon
2a17bde930 Issue #20383: Introduce importlib.util.module_from_spec().
Along the way, dismantle importlib._bootstrap._SpecMethods as it was
no longer relevant and constructing the new function required
partially dismantling the class anyway.
2014-05-30 14:55:29 -04:00
Serhiy Storchaka
5bb446f57e Issue #18918: Removed non-existing topic from a list of available topics.
The 'File objects' section was removed in Python 3.
Patch by Claudiu Popa.
2014-05-25 13:04:13 +03:00
Victor Stinner
0cc45baa3d Issue #21398: Fix an unicode error in the pydoc pager when the documentation
contains characters not encodable to the stdout encoding.
2014-05-13 02:05:35 +02:00
R David Murray
3d050ddf19 #9364: Improve the text printed by help(pydoc) and help(help). 2014-04-19 12:59:30 -04:00
Victor Stinner
7fa767e517 Issue #20976: pyflakes: Remove unused imports 2014-03-20 09:16:38 +01:00
Larry Hastings
24a882bb7b Issue #20710: The pydoc summary line no longer displays the "self" parameter
for bound methods.  Previous to this change, it displayed "self" for methods
implemented in Python but not methods implemented in C; it is now both
internally consistent and consistent with inspect.Signature.
2014-02-20 23:34:46 -08:00
Serhiy Storchaka
056eb02719 Issue #20654: Fixed pydoc for enums with zero value. Patch by Vajrasky Kok. 2014-02-19 23:05:12 +02:00
Larry Hastings
5c66189e88 Issue #20189: Four additional builtin types (PyTypeObject,
PyMethodDescr_Type, _PyMethodWrapper_Type, and PyWrapperDescr_Type)
have been modified to provide introspection information for builtins.
Also: many additional Lib, test suite, and Argument Clinic fixes.
2014-01-24 06:17:25 -08:00
Eric Snow
3a62d14b24 Issue #19703: Update pydoc to use the new importer APIs. 2014-01-06 20:42:59 -07:00
Eric Snow
aed5b22ead Issue 20123: Fix pydoc.synopsis() for "binary" modules.
Also add missing tests to test_pydoc.
2014-01-04 20:38:11 -07:00
Larry Hastings
44e2eaab54 Issue #19674: inspect.signature() now produces a correct signature
for some builtins.
2013-11-23 15:37:55 -08:00
Eric Snow
b523f8433a Implement PEP 451 (ModuleSpec). 2013-11-22 09:05:39 -07:00
Ethan Furman
b0c84cdaac Issue #19030: final pieces for proper location of various class attributes located in the metaclass.
Okay, hopefully the very last patch for this issue.  :/

I realized when playing with Enum that the metaclass attributes weren't always displayed properly.

New patch properly locates DynamicClassAttributes, virtual class attributes (returned by __getattr__ and friends), and metaclass class attributes (if they are also in the metaclass __dir__ method).

Also had to change one line in pydoc to get this to work.

Added tests in test_inspect and test_pydoc to cover these situations.
2013-10-20 22:37:39 -07:00
Brett Cannon
1448ecf470 Issue #18716: Deprecate the formatter module 2013-10-04 11:38:59 -04:00
Brett Cannon
679ecb565b Issue #15767: back out 8a0ed9f63c6e, finishing the removal of
ModuleNotFoundError.
2013-07-04 17:51:50 -04:00