From ff9d101adf7f144767bd5dc9346a41ad9134fd21 Mon Sep 17 00:00:00 2001 From: Akuli Date: Thu, 30 Dec 2021 19:37:07 +0200 Subject: [PATCH 1/6] move FILE_ATTRIBUTE_* constants to _stat.pyi --- stdlib/_stat.pyi | 19 +++++++++++++++++++ stdlib/stat.pyi | 20 -------------------- 2 files changed, 19 insertions(+), 20 deletions(-) diff --git a/stdlib/_stat.pyi b/stdlib/_stat.pyi index 0f41381003fe..abb1c62c512a 100644 --- a/stdlib/_stat.pyi +++ b/stdlib/_stat.pyi @@ -82,3 +82,22 @@ if sys.platform == "win32" and sys.version_info >= (3, 8): IO_REPARSE_TAG_SYMLINK: int IO_REPARSE_TAG_MOUNT_POINT: int IO_REPARSE_TAG_APPEXECLINK: int + +if sys.platform != "win32": + FILE_ATTRIBUTE_ARCHIVE: Literal[32] + FILE_ATTRIBUTE_COMPRESSED: Literal[2048] + FILE_ATTRIBUTE_DEVICE: Literal[64] + FILE_ATTRIBUTE_DIRECTORY: Literal[16] + FILE_ATTRIBUTE_ENCRYPTED: Literal[16384] + FILE_ATTRIBUTE_HIDDEN: Literal[2] + FILE_ATTRIBUTE_INTEGRITY_STREAM: Literal[32768] + FILE_ATTRIBUTE_NORMAL: Literal[128] + FILE_ATTRIBUTE_NOT_CONTENT_INDEXED: Literal[8192] + FILE_ATTRIBUTE_NO_SCRUB_DATA: Literal[131072] + FILE_ATTRIBUTE_OFFLINE: Literal[4096] + FILE_ATTRIBUTE_READONLY: Literal[1] + FILE_ATTRIBUTE_REPARSE_POINT: Literal[1024] + FILE_ATTRIBUTE_SPARSE_FILE: Literal[512] + FILE_ATTRIBUTE_SYSTEM: Literal[4] + FILE_ATTRIBUTE_TEMPORARY: Literal[256] + FILE_ATTRIBUTE_VIRTUAL: Literal[65536] diff --git a/stdlib/stat.pyi b/stdlib/stat.pyi index ca2b33d4d9da..4518acb5a162 100644 --- a/stdlib/stat.pyi +++ b/stdlib/stat.pyi @@ -1,21 +1 @@ -from typing_extensions import Literal - from _stat import * - -FILE_ATTRIBUTE_ARCHIVE: Literal[32] -FILE_ATTRIBUTE_COMPRESSED: Literal[2048] -FILE_ATTRIBUTE_DEVICE: Literal[64] -FILE_ATTRIBUTE_DIRECTORY: Literal[16] -FILE_ATTRIBUTE_ENCRYPTED: Literal[16384] -FILE_ATTRIBUTE_HIDDEN: Literal[2] -FILE_ATTRIBUTE_INTEGRITY_STREAM: Literal[32768] -FILE_ATTRIBUTE_NORMAL: Literal[128] -FILE_ATTRIBUTE_NOT_CONTENT_INDEXED: Literal[8192] -FILE_ATTRIBUTE_NO_SCRUB_DATA: Literal[131072] -FILE_ATTRIBUTE_OFFLINE: Literal[4096] -FILE_ATTRIBUTE_READONLY: Literal[1] -FILE_ATTRIBUTE_REPARSE_POINT: Literal[1024] -FILE_ATTRIBUTE_SPARSE_FILE: Literal[512] -FILE_ATTRIBUTE_SYSTEM: Literal[4] -FILE_ATTRIBUTE_TEMPORARY: Literal[256] -FILE_ATTRIBUTE_VIRTUAL: Literal[65536] From 79b25827027900ceedd61ff72569190cb9a7a1ce Mon Sep 17 00:00:00 2001 From: Akuli Date: Thu, 30 Dec 2021 19:38:38 +0200 Subject: [PATCH 2/6] fix allowlist --- tests/stubtest_allowlists/win32.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/stubtest_allowlists/win32.txt b/tests/stubtest_allowlists/win32.txt index 9e7ad19d5607..1222e707a564 100644 --- a/tests/stubtest_allowlists/win32.txt +++ b/tests/stubtest_allowlists/win32.txt @@ -1,6 +1,5 @@ _msi.MSI[A-Z_]+ _msi.PID_[A-Z_]+ -_stat.FILE_ATTRIBUTE_[A-Z_]+ ctypes.GetLastError # Is actually a pointer distutils.archive_util.getgrnam distutils.archive_util.getpwnam From b98ba39cfef520442b19ddcb132d2ef7ef8e0779 Mon Sep 17 00:00:00 2001 From: Akuli Date: Thu, 30 Dec 2021 19:41:35 +0200 Subject: [PATCH 3/6] try making available on windows --- stdlib/_stat.pyi | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/stdlib/_stat.pyi b/stdlib/_stat.pyi index abb1c62c512a..8f268c143ff6 100644 --- a/stdlib/_stat.pyi +++ b/stdlib/_stat.pyi @@ -83,21 +83,20 @@ if sys.platform == "win32" and sys.version_info >= (3, 8): IO_REPARSE_TAG_MOUNT_POINT: int IO_REPARSE_TAG_APPEXECLINK: int -if sys.platform != "win32": - FILE_ATTRIBUTE_ARCHIVE: Literal[32] - FILE_ATTRIBUTE_COMPRESSED: Literal[2048] - FILE_ATTRIBUTE_DEVICE: Literal[64] - FILE_ATTRIBUTE_DIRECTORY: Literal[16] - FILE_ATTRIBUTE_ENCRYPTED: Literal[16384] - FILE_ATTRIBUTE_HIDDEN: Literal[2] - FILE_ATTRIBUTE_INTEGRITY_STREAM: Literal[32768] - FILE_ATTRIBUTE_NORMAL: Literal[128] - FILE_ATTRIBUTE_NOT_CONTENT_INDEXED: Literal[8192] - FILE_ATTRIBUTE_NO_SCRUB_DATA: Literal[131072] - FILE_ATTRIBUTE_OFFLINE: Literal[4096] - FILE_ATTRIBUTE_READONLY: Literal[1] - FILE_ATTRIBUTE_REPARSE_POINT: Literal[1024] - FILE_ATTRIBUTE_SPARSE_FILE: Literal[512] - FILE_ATTRIBUTE_SYSTEM: Literal[4] - FILE_ATTRIBUTE_TEMPORARY: Literal[256] - FILE_ATTRIBUTE_VIRTUAL: Literal[65536] +FILE_ATTRIBUTE_ARCHIVE: Literal[32] +FILE_ATTRIBUTE_COMPRESSED: Literal[2048] +FILE_ATTRIBUTE_DEVICE: Literal[64] +FILE_ATTRIBUTE_DIRECTORY: Literal[16] +FILE_ATTRIBUTE_ENCRYPTED: Literal[16384] +FILE_ATTRIBUTE_HIDDEN: Literal[2] +FILE_ATTRIBUTE_INTEGRITY_STREAM: Literal[32768] +FILE_ATTRIBUTE_NORMAL: Literal[128] +FILE_ATTRIBUTE_NOT_CONTENT_INDEXED: Literal[8192] +FILE_ATTRIBUTE_NO_SCRUB_DATA: Literal[131072] +FILE_ATTRIBUTE_OFFLINE: Literal[4096] +FILE_ATTRIBUTE_READONLY: Literal[1] +FILE_ATTRIBUTE_REPARSE_POINT: Literal[1024] +FILE_ATTRIBUTE_SPARSE_FILE: Literal[512] +FILE_ATTRIBUTE_SYSTEM: Literal[4] +FILE_ATTRIBUTE_TEMPORARY: Literal[256] +FILE_ATTRIBUTE_VIRTUAL: Literal[65536] From afe15a47c1438bd7180ca029a2efcac1ffb36d51 Mon Sep 17 00:00:00 2001 From: Akuli Date: Thu, 30 Dec 2021 19:56:20 +0200 Subject: [PATCH 4/6] fix allowlists --- tests/stubtest_allowlists/darwin.txt | 3 +++ tests/stubtest_allowlists/linux.txt | 3 +++ 2 files changed, 6 insertions(+) diff --git a/tests/stubtest_allowlists/darwin.txt b/tests/stubtest_allowlists/darwin.txt index afbf806e361e..aa8a3342d1f7 100644 --- a/tests/stubtest_allowlists/darwin.txt +++ b/tests/stubtest_allowlists/darwin.txt @@ -37,6 +37,9 @@ fcntl.[A-Z0-9_]+ os.SCHED_[A-Z_]+ posix.SCHED_[A-Z_]+ +# Some of these exist on non-windows, but they are useless and this is not intended +stat.FILE_ATTRIBUTE_[A-Z_]+ + # Loadable SQLite extensions are disabled on GitHub runners (sqlite3(.dbapi2)?.Connection.enable_load_extension)? (sqlite3(.dbapi2)?.Connection.load_extension)? diff --git a/tests/stubtest_allowlists/linux.txt b/tests/stubtest_allowlists/linux.txt index 6675d5180dc0..1052a594f061 100644 --- a/tests/stubtest_allowlists/linux.txt +++ b/tests/stubtest_allowlists/linux.txt @@ -40,6 +40,9 @@ fcntl.[A-Z0-9_]+ os.SCHED_[A-Z_]+ posix.SCHED_[A-Z_]+ +# Some of these exist on non-windows, but they are useless and this is not intended +stat.FILE_ATTRIBUTE_[A-Z_]+ + # Loadable SQLite extensions are disabled on GitHub runners (sqlite3(.dbapi2)?.Connection.enable_load_extension)? (sqlite3(.dbapi2)?.Connection.load_extension)? From 6d1b8300b609d86d8d570bd25a8f76c1edcd51a9 Mon Sep 17 00:00:00 2001 From: Akuli Date: Thu, 30 Dec 2021 19:56:23 +0200 Subject: [PATCH 5/6] Revert "try making available on windows" This reverts commit b98ba39cfef520442b19ddcb132d2ef7ef8e0779. --- stdlib/_stat.pyi | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/stdlib/_stat.pyi b/stdlib/_stat.pyi index 8f268c143ff6..abb1c62c512a 100644 --- a/stdlib/_stat.pyi +++ b/stdlib/_stat.pyi @@ -83,20 +83,21 @@ if sys.platform == "win32" and sys.version_info >= (3, 8): IO_REPARSE_TAG_MOUNT_POINT: int IO_REPARSE_TAG_APPEXECLINK: int -FILE_ATTRIBUTE_ARCHIVE: Literal[32] -FILE_ATTRIBUTE_COMPRESSED: Literal[2048] -FILE_ATTRIBUTE_DEVICE: Literal[64] -FILE_ATTRIBUTE_DIRECTORY: Literal[16] -FILE_ATTRIBUTE_ENCRYPTED: Literal[16384] -FILE_ATTRIBUTE_HIDDEN: Literal[2] -FILE_ATTRIBUTE_INTEGRITY_STREAM: Literal[32768] -FILE_ATTRIBUTE_NORMAL: Literal[128] -FILE_ATTRIBUTE_NOT_CONTENT_INDEXED: Literal[8192] -FILE_ATTRIBUTE_NO_SCRUB_DATA: Literal[131072] -FILE_ATTRIBUTE_OFFLINE: Literal[4096] -FILE_ATTRIBUTE_READONLY: Literal[1] -FILE_ATTRIBUTE_REPARSE_POINT: Literal[1024] -FILE_ATTRIBUTE_SPARSE_FILE: Literal[512] -FILE_ATTRIBUTE_SYSTEM: Literal[4] -FILE_ATTRIBUTE_TEMPORARY: Literal[256] -FILE_ATTRIBUTE_VIRTUAL: Literal[65536] +if sys.platform != "win32": + FILE_ATTRIBUTE_ARCHIVE: Literal[32] + FILE_ATTRIBUTE_COMPRESSED: Literal[2048] + FILE_ATTRIBUTE_DEVICE: Literal[64] + FILE_ATTRIBUTE_DIRECTORY: Literal[16] + FILE_ATTRIBUTE_ENCRYPTED: Literal[16384] + FILE_ATTRIBUTE_HIDDEN: Literal[2] + FILE_ATTRIBUTE_INTEGRITY_STREAM: Literal[32768] + FILE_ATTRIBUTE_NORMAL: Literal[128] + FILE_ATTRIBUTE_NOT_CONTENT_INDEXED: Literal[8192] + FILE_ATTRIBUTE_NO_SCRUB_DATA: Literal[131072] + FILE_ATTRIBUTE_OFFLINE: Literal[4096] + FILE_ATTRIBUTE_READONLY: Literal[1] + FILE_ATTRIBUTE_REPARSE_POINT: Literal[1024] + FILE_ATTRIBUTE_SPARSE_FILE: Literal[512] + FILE_ATTRIBUTE_SYSTEM: Literal[4] + FILE_ATTRIBUTE_TEMPORARY: Literal[256] + FILE_ATTRIBUTE_VIRTUAL: Literal[65536] From 19c7f3cd3440ece330197f1ff6d16d77901c35e4 Mon Sep 17 00:00:00 2001 From: Akuli Date: Thu, 30 Dec 2021 20:19:38 +0200 Subject: [PATCH 6/6] fix check --- stdlib/_stat.pyi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stdlib/_stat.pyi b/stdlib/_stat.pyi index abb1c62c512a..83d832e4dd8e 100644 --- a/stdlib/_stat.pyi +++ b/stdlib/_stat.pyi @@ -83,7 +83,7 @@ if sys.platform == "win32" and sys.version_info >= (3, 8): IO_REPARSE_TAG_MOUNT_POINT: int IO_REPARSE_TAG_APPEXECLINK: int -if sys.platform != "win32": +if sys.platform == "win32": FILE_ATTRIBUTE_ARCHIVE: Literal[32] FILE_ATTRIBUTE_COMPRESSED: Literal[2048] FILE_ATTRIBUTE_DEVICE: Literal[64]