aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/core.yml9
-rw-r--r--.github/workflows/download.yml8
-rw-r--r--yt_dlp/utils.py3
3 files changed, 14 insertions, 6 deletions
diff --git a/.github/workflows/core.yml b/.github/workflows/core.yml
index 78a75cd1c..66e8ced53 100644
--- a/.github/workflows/core.yml
+++ b/.github/workflows/core.yml
@@ -10,12 +10,15 @@ jobs:
matrix:
os: [ubuntu-latest]
# CPython 3.9 is in quick-test
- python-version: ['3.6', '3.7', '3.10', 3.11-dev, pypy-3.6, pypy-3.7, pypy-3.8, pypy-3.9]
+ python-version: ['3.6', '3.7', '3.10', 3.11-dev, pypy-3.6, pypy-3.7, pypy-3.8]
run-tests-ext: [sh]
include:
- # atleast one of the tests must be in windows
+ # atleast one of each CPython/PyPy tests must be in windows
- os: windows-latest
- python-version: 3.8
+ python-version: '3.8'
+ run-tests-ext: bat
+ - os: windows-latest
+ python-version: pypy-3.9
run-tests-ext: bat
steps:
- uses: actions/checkout@v2
diff --git a/.github/workflows/download.yml b/.github/workflows/download.yml
index 3b696549a..ac48e5805 100644
--- a/.github/workflows/download.yml
+++ b/.github/workflows/download.yml
@@ -9,11 +9,15 @@ jobs:
fail-fast: true
matrix:
os: [ubuntu-latest]
- python-version: ['3.6', '3.7', '3.9', '3.10', 3.11-dev, pypy-3.6, pypy-3.7, pypy-3.8, pypy-3.9]
+ python-version: ['3.6', '3.7', '3.9', '3.10', 3.11-dev, pypy-3.6, pypy-3.7, pypy-3.8]
run-tests-ext: [sh]
include:
+ # atleast one of each CPython/PyPy tests must be in windows
- os: windows-latest
- python-version: 3.8
+ python-version: '3.8'
+ run-tests-ext: bat
+ - os: windows-latest
+ python-version: pypy-3.9
run-tests-ext: bat
steps:
- uses: actions/checkout@v2
diff --git a/yt_dlp/utils.py b/yt_dlp/utils.py
index e6e6d2759..11ef7744c 100644
--- a/yt_dlp/utils.py
+++ b/yt_dlp/utils.py
@@ -2003,7 +2003,8 @@ if sys.platform == 'win32':
if not LockFileEx(msvcrt.get_osfhandle(f.fileno()),
(0x2 if exclusive else 0x0) | (0x0 if block else 0x1),
0, whole_low, whole_high, f._lock_file_overlapped_p):
- raise BlockingIOError('Locking file failed: %r' % ctypes.FormatError())
+ # NB: No argument form of "ctypes.FormatError" does not work on PyPy
+ raise BlockingIOError(f'Locking file failed: {ctypes.FormatError(ctypes.GetLastError())!r}')
def _unlock_file(f):
assert f._lock_file_overlapped_p