summaryrefslogtreecommitdiffstats
path: root/Lib/inspect.py
Commit message (Collapse)AuthorAgeFilesLines
* bpo-17735: inspect.findsource now raises OSError when co_lineno is out of ↵Miss Islington (bot)2020-12-041-1/+6
| | | | | | | | range (GH-23633) This can happen when a file was edited after it was imported. (cherry picked from commit 2e0760bb2edb595050aff82f236cd32b44d3dfb3) Co-authored-by: Irit Katriel <iritkatriel@yahoo.com>
* bpo-42116: Fix inspect.getsource handling of trailing comments (GH-23630)Miss Islington (bot)2020-12-041-0/+7
| | | | | (cherry picked from commit 6e1eec71f59c344fb23c7977061dc2c97b77d51b) Co-authored-by: Irit Katriel <iritkatriel@yahoo.com>
* bpo-13487: Use sys.modules.copy() in inspect.getmodule() for thread safety. ↵Miss Islington (bot)2020-03-051-1/+1
| | | | | | | | | | | (GH-18786) `list(sys.modules.items())` was apparently not immune to "dictionary changed size during iteration" errors. Tested internally using an integration test that has run into this a couple of times in the past two years. With this patch applied, the test is no longer flaky. (cherry picked from commit 85cf1d514b84dc9a4bcb40e20a12e1d82ff19f20) Co-authored-by: Gregory P. Smith <gps@google.com>
* bpo-38478: Correctly handle keyword argument with same name as ↵Miss Islington (bot)2019-10-151-1/+1
| | | | | | | positional-only parameter (GH-16800) (cherry picked from commit f3ef06a7cb347ab7bd3cc2b0b3dcebe4f9ff36f9) Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
* bpo-34706: Preserve subclassing in inspect.Signature.from_callable ↵Miss Islington (bot)2019-09-131-1/+1
| | | | | | | | | | | | | (GH-16108) (GH-16113) https://bugs.python.org/issue34706 Specifically in the case of a class that does not override its constructor signature inherited from object. These are Buck Evan @bukzor's changes cherrypicked from GH-9344. (cherry picked from commit 5b9ff7a0dcb16d6f5c3cd4f1f52e0ca6a4bde586) Co-authored-by: Gregory P. Smith <greg@krypto.org>
* bpo-38059: Using sys.exit() over exit() in inspect.py (GH-15666)Miss Islington (bot)2019-09-091-2/+2
| | | | | | Constants added by the site module like exit() "should not be used in programs" (cherry picked from commit e3c59a75279b0df4e7553d6f0031e202de434e43) Co-authored-by: Alan Yee <alanyee@users.noreply.github.com>
* bpo-38026: fix inspect.getattr_static (GH-15676)Miss Islington (bot)2019-09-051-2/+2
| | | | | | | | It should avoid dynamic lookup including `isinstance`. This is a regression caused by GH-5351. (cherry picked from commit 8f9cc8771ffb8d0e21be287eaed42ae06087acca) Co-authored-by: Inada Naoki <songofacandy@gmail.com>
* bpo-37173: Show passed class in inspect.getfile error (GH-13861)Miss Islington (bot)2019-06-081-3/+3
| | | | | | | | | | | | | | | Currently, inspect.getfile(str) will report nonsense: ```pytb >>> inspect.getfile(str) TypeError: <module 'builtins' (built-in)> is a built-in class ``` This fixes that https://bugs.python.org/issue37173 (cherry picked from commit d407d2a7265f6102e51a1d62b3fd28b4f7a78d16) Co-authored-by: Philipp A <flying-sheep@web.de>
* bpo-37122: Make co->co_argcount represent the total number of positonal ↵Pablo Galindo2019-06-011-18/+10
| | | | arguments in the code object (GH-13726)
* bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-13700)Serhiy Storchaka2019-06-011-7/+5
|
* bpo-36751: Undeprecate getfullargspec (GH-13245)Pablo Galindo2019-05-161-6/+0
|
* bpo-36542: Allow to overwrite the signature for Python functions. (GH-12705)Serhiy Storchaka2019-05-061-2/+7
|
* MNT: set stacklevel in the getfullargspec deprecation warning to 2 (GH-13029)Thomas A Caswell2019-05-011-1/+1
| | | | | | This is consistent with the rest of the `warnings.warn` usage in the inspect.py module and aids identifying code that needs to be fixed. This warning came in via d5d2b4546939b98244708e5bb0cfccd55b99d244
* bpo-36751: Deprecate getfullargspec and report positional-only args as ↵Pablo Galindo2019-04-301-25/+18
| | | | | | | | regular args (GH-13016) * bpo-36751: Deprecate getfullargspec and report positional-only args as regular args * Use inspect.signature in testhelpers
* bpo-36540: PEP 570 -- Implementation (GH-12701)Pablo Galindo2019-04-291-37/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit contains the implementation of PEP570: Python positional-only parameters. * Update Grammar/Grammar with new typedarglist and varargslist * Regenerate grammar files * Update and regenerate AST related files * Update code object * Update marshal.c * Update compiler and symtable * Regenerate importlib files * Update callable objects * Implement positional-only args logic in ceval.c * Regenerate frozen data * Update standard library to account for positional-only args * Add test file for positional-only args * Update other test files to account for positional-only args * Add News entry * Update inspect module and related tests
* bpo-33261: guard access to __code__ attribute in inspect (GH-6448)Jeroen Demeyer2019-04-021-9/+14
|
* bpo-36326: Let inspect.getdoc() find docstrings for __slots__ (GH-12498)Raymond Hettinger2019-03-251-1/+4
|
* bpo-34890: Make iscoroutinefunction, isgeneratorfunction and ↵Pablo Galindo2018-10-261-9/+12
| | | | | | | | | | | isasyncgenfunction work with functools.partial (GH-9903) inspect.isfunction() processes both inspect.isfunction(func) and inspect.isfunction(partial(func, arg)) correctly but some other functions in the inspect module (iscoroutinefunction, isgeneratorfunction and isasyncgenfunction) lack this functionality. This commits adds a new check in the mentioned functions in the inspect module so they can work correctly with arbitrarily nested partial functions.
* bpo-33594: Add deprecation info in inspect.py module (GH-7036)Matthias Bussonnier2018-10-191-7/+15
|
* bpo-34871: inspect: Don't pollute sys.modules (GH-9696)INADA Naoki2018-10-041-1/+1
| | | https://bugs.python.org/issue34871
* bpo-32892: Use ast.Constant instead of specific constant AST types. (GH-9445)Serhiy Storchaka2018-09-271-8/+2
|
* bpo-6700: Fix inspect.getsourcelines for module level frames/tracebacks ↵Vladimir Matveev2018-08-241-1/+6
| | | | (GH-8864)
* bpo-33582: Remove duplicate space in inspect.formatargspec() deprecation ↵Zackery Spytz2018-06-121-1/+1
| | | | warning (GH-7655)
* bpo-33582: Emit deprecation warning for `formatargspec` (GH-6994)Matthias Bussonnier2018-06-111-2/+14
|
* bpo-33197: Add description property for _ParameterKind. (GH-7206)Dong-hee Na2018-06-081-6/+7
|
* bpo-33197: Update a error message of invalid inspect.Parameters. (GH-6636)Dong-hee Na2018-05-291-16/+31
|
* bpo-26103: Fix inspect.isdatadescriptor() and a data descriptor definition. ↵Aaron Hall, MBA2018-05-201-2/+2
| | | | | | (GH-1959) Look for '__set__' or '__delete__'.
* bpo-33009: Fix inspect.signature() for single-parameter partialmethods. ↵Yury Selivanov2018-03-061-1/+2
| | | | (GH-6004)
* bpo-32991: Restore expectation that inspect.getfile raises TypeError on ↵Jason R. Coombs2018-03-051-2/+2
| | | | | | | | | | namespace package (GH-5980) * bpo-32991: Add test capturing expectation. DocTestFinder.find should return an empty list for doctests in a namespace package. * bpo-32991: Restore expectation that inspect.getfile on a namespace package raises TypeError.
* Cleanup inspectSrinivas Reddy Thatiparthy (శ్రీనివాస్ రెడ్డి తాటిపర్తి)2018-02-091-4/+4
| | | | * use isinstance(..) instead of type(..) * use '.. not in ..' instead of 'not .. in .. '
* bpo-32678: inspect: Import ast lazily (GH-5344)INADA Naoki2018-01-271-1/+3
|
* bpo-32265: Classify class and static methods of builtin types. (#4776)Serhiy Storchaka2017-12-151-2/+2
| | | | Add types.ClassMethodDescriptorType for unbound class methods.
* bpo-32157: Removed explicit quotes around %r and {!r}. (#4582)Serhiy Storchaka2017-11-281-2/+2
|
* bpo-32018: Fix inspect.signature repr to follow PEP 8 (#4408)Dong-hee Na2017-11-151-2/+5
|
* bpo-30639: Lazily compute repr for error (#2132)Thomas Kluyver2017-10-241-2/+3
|
* bpo-25532: Protect against infinite loops in inspect.unwrap() (#1717)Thomas Kluyver2017-05-231-3/+6
| | | | | | | | | Some objects (like test mocks) auto-generate new objects on attribute access, which can lead to an infinite loop in inspect.unwrap(). Ensuring references are retained to otherwise temporary objects and capping the size of the memo dict turns this case into a conventional exception instead.
* bpo-30296 Remove unnecessary tuples, lists, sets, and dicts (#1489)Jon Dufresne2017-05-181-1/+1
| | | | | | | | * Replaced list(<generator expression>) with list comprehension * Replaced dict(<generator expression>) with dict comprehension * Replaced set(<list literal>) with set literal * Replaced builtin func(<list comprehension>) with func(<generator expression>) when supported (e.g. any(), all(), tuple(), min(), & max())
* bpo-30149: Fix partialmethod without explicit self parameter (#1308)Dong-hee Na2017-05-171-4/+9
|
* bpo-29822: Make inspect.isabstract() work during __init_subclass__. (#678)Nate2017-04-241-1/+22
| | | | | | | At the time when an abstract base class' __init_subclass__ runs, ABCMeta.__new__ has not yet finished running, so in the presence of __init_subclass__, inspect.isabstract() can no longer depend only on TPFLAGS_IS_ABSTRACT.
* bpo-26985: Add missing info of code object in inspect documentation (GH-1090)Xiang Zhang2017-04-131-12/+18
|
* Issue #15812: Merge from 3.5Berker Peksag2017-01-031-1/+0
|\
| * Issue #15812: Delete redundant max(start, 0)Berker Peksag2017-01-031-1/+0
| | | | | | | | Noticed by Serhiy Storchaka.
* | Issue #15812: Merge from 3.5Berker Peksag2017-01-021-1/+1
|\ \ | |/
| * Issue #15812: inspect.getframeinfo() now correctly shows the first line of a ↵Berker Peksag2017-01-021-1/+1
| | | | | | | | | | | | context Patch by Sam Breese.
* | Issue #27172: Undeprecate inspect.getfullargspec()Nick Coghlan2016-12-021-17/+25
| | | | | | | | | | | | This is still useful for single source Python 2/3 code migrating away from inspect.getargspec(), but that wasn't clear with the documented deprecation in place.
* | Merge 3.5 (issue #28639)Yury Selivanov2016-11-091-2/+2
|\ \ | |/
| * Issue #28639: Fix inspect.isawaitable to always return boolYury Selivanov2016-11-091-2/+2
| | | | | | | | Patch by Justin Mayfield.
* | docs/inspect: clarify iscoroutinefunction; add docs for isasyncgen*Yury Selivanov2016-11-081-2/+7
| |
* | Issue #27989: Tweak inspect.formatannotation() to improve pydoc rendering of ↵Guido van Rossum2016-10-221-0/+2
|\ \ | |/ | | | | function annotations. Ivan L. (3.5->3.6)
| * Issue #27989: Tweak inspect.formatannotation() to improve pydoc rendering of ↵Guido van Rossum2016-10-221-0/+2
| | | | | | | | function annotations. Ivan L.