summaryrefslogtreecommitdiffstats
path: root/Misc
diff options
context:
space:
mode:
authorNikita Sobolev <mail@sobolevn.me>2022-02-19 01:53:29 (GMT)
committerGitHub <noreply@github.com>2022-02-19 01:53:29 (GMT)
commit395029b0bd343648b4da8044c7509672ea768775 (patch)
treecdbf8b86c5bead4d8315c100a7f732f92902b817 /Misc
parentf80a97b492f41afd3c42bb2bd6da7b2828dca215 (diff)
downloadcpython-395029b0bd343648b4da8044c7509672ea768775.zip
cpython-395029b0bd343648b4da8044c7509672ea768775.tar.gz
cpython-395029b0bd343648b4da8044c7509672ea768775.tar.bz2
bpo-46571: improve `typing.no_type_check` to skip foreign objects (GH-31042)
There are several changes: 1. We now don't explicitly check for any base / sub types, because new name check covers it 2. I've also checked that `no_type_check` do not modify foreign functions. It was the same as with `type`s 3. I've also covered `except TypeError` in `no_type_check` with a simple test case, it was not covered at all 4. I also felt like adding `lambda` test is a good idea: because `lambda` is a bit of both in class bodies: a function and an assignment <!-- issue-number: [bpo-46571](https://bugs.python.org/issue46571) --> https://bugs.python.org/issue46571 <!-- /issue-number -->
Diffstat (limited to 'Misc')
-rw-r--r--Misc/NEWS.d/next/Library/2022-02-01-11-21-34.bpo-46571.L40xUJ.rst4
1 files changed, 4 insertions, 0 deletions
diff --git a/Misc/NEWS.d/next/Library/2022-02-01-11-21-34.bpo-46571.L40xUJ.rst b/Misc/NEWS.d/next/Library/2022-02-01-11-21-34.bpo-46571.L40xUJ.rst
new file mode 100644
index 0000000..f56c9e4
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2022-02-01-11-21-34.bpo-46571.L40xUJ.rst
@@ -0,0 +1,4 @@
+Improve :func:`typing.no_type_check`.
+
+Now it does not modify external classes and functions.
+We also now correctly mark classmethods as not to be type checked.