summaryrefslogtreecommitdiffstats
path: root/Lib/inspect.py
Commit message (Collapse)AuthorAgeFilesLines
* bpo-13487: Use sys.modules.copy() in inspect.getmodule() for thread safety. ↵Gregory P. Smith2020-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.
* bpo-39775: inspect: Change Signature.parameters back to OrderedDict. (GH-18684)Inada Naoki2020-03-021-10/+12
|
* bpo-36350: inspect: Replace OrderedDict with dict. (GH-12412)Rémi Lapeyre2020-01-281-21/+18
|
* Remove unnecessary variable definition (GH-17368)Batuhan Taşkaya2019-11-241-1/+0
|
* bpo-38478: Correctly handle keyword argument with same name as ↵Pablo Galindo2019-10-151-1/+1
| | | | positional-only parameter (GH-16800)
* bpo-34706: Preserve subclassing in inspect.Signature.from_callable (GH-16108)Gregory P. Smith2019-09-131-1/+1
| | | | | | | | 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.
* bpo-38059: Using sys.exit() over exit() in inspect.py (GH-15666)Alan Yee2019-09-091-2/+2
| | | Constants added by the site module like exit() "should not be used in programs"
* bpo-38026: fix inspect.getattr_static (GH-15676)Inada Naoki2019-09-051-2/+2
| | | | | It should avoid dynamic lookup including `isinstance`. This is a regression caused by GH-5351.
* bpo-37173: Show passed class in inspect.getfile error (GH-13861)Philipp A2019-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
* 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)