From fcc333676064852a8fc0b9b234c4fd7adbf68d5e Mon Sep 17 00:00:00 2001 From: ed Date: Fri, 6 Oct 2023 17:50:35 +0000 Subject: [PATCH] v1.9.8 --- bin/u2c.py | 2 +- contrib/windows/copyparty-ctmp.bat | 2 ++ copyparty/__version__.py | 4 ++-- docs/changelog.md | 18 ++++++++++++++++++ scripts/make-sfx.sh | 4 ++-- scripts/pyinstaller/depchk.sh | 4 ++++ scripts/run-tests.sh | 2 +- scripts/uncomment.py | 5 ++++- 8 files changed, 34 insertions(+), 7 deletions(-) create mode 100755 contrib/windows/copyparty-ctmp.bat diff --git a/bin/u2c.py b/bin/u2c.py index b5c855d6..f171a76c 100755 --- a/bin/u2c.py +++ b/bin/u2c.py @@ -1177,7 +1177,7 @@ source file/folder selection uses rsync syntax, meaning that: raise if ar.cls: - eprint("\x1b\x5b\x48\x1b\x5b\x32\x4a\x1b\x5b\x33\x4a", end="") + eprint("\033[H\033[2J\033[3J", end="") ctl = Ctl(ar) diff --git a/contrib/windows/copyparty-ctmp.bat b/contrib/windows/copyparty-ctmp.bat new file mode 100755 index 00000000..bfb21a86 --- /dev/null +++ b/contrib/windows/copyparty-ctmp.bat @@ -0,0 +1,2 @@ +rem run copyparty.exe on machines with busted environment variables +cmd /v /c "set TMP=\tmp && copyparty.exe" diff --git a/copyparty/__version__.py b/copyparty/__version__.py index 48ec1653..7d0aa62b 100644 --- a/copyparty/__version__.py +++ b/copyparty/__version__.py @@ -1,8 +1,8 @@ # coding: utf-8 -VERSION = (1, 9, 7) +VERSION = (1, 9, 8) CODENAME = "prometheable" -BUILD_DT = (2023, 9, 30) +BUILD_DT = (2023, 10, 6) S_VERSION = ".".join(map(str, VERSION)) S_BUILD_DT = "{0:04d}-{1:02d}-{2:02d}".format(*BUILD_DT) diff --git a/docs/changelog.md b/docs/changelog.md index 7e843435..7ec0d06d 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,3 +1,21 @@ +▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ +# 2023-0930-2332 `v1.9.7` better column hider + +## new features +* column hiding on phones is much more intuitive + * since you usually want to hide multiple columns, the hiding mode must now be manually disengaged + * click-handler now covers the entire header cell, preventing a misclick from accidentally sorting the table instead + +## bugfixes +* #51 running copyparty with an invalid value for `--lang` made it crash with a confusing error message + * also makes it more compatible with other localStorage-using webservices running on the same domain + +## other changes +* CVE-2023-5217, a vulnerability in libvpx, was fixed by alpine recently and no longer present in the docker images + * unlike the fix in v1.9.6, this is irrelevant since it was impossible to reach in all conceivable setups, but still nice + + + ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ # 2023-0923-1215 `v1.9.6` configurable x-forwarded-for diff --git a/scripts/make-sfx.sh b/scripts/make-sfx.sh index 9b6f01ff..37c2a9de 100755 --- a/scripts/make-sfx.sh +++ b/scripts/make-sfx.sh @@ -205,9 +205,9 @@ necho() { mv {markupsafe,jinja2} j2/ necho collecting pyftpdlib - f="../build/pyftpdlib-1.5.7.tar.gz" + f="../build/pyftpdlib-1.5.8.tar.gz" [ -e "$f" ] || - (url=https://github.com/giampaolo/pyftpdlib/archive/refs/tags/release-1.5.7.tar.gz; + (url=https://github.com/giampaolo/pyftpdlib/archive/refs/tags/release-1.5.8.tar.gz; wget -O$f "$url" || curl -L "$url" >$f) tar -zxf $f diff --git a/scripts/pyinstaller/depchk.sh b/scripts/pyinstaller/depchk.sh index e04f452e..d01eebe4 100755 --- a/scripts/pyinstaller/depchk.sh +++ b/scripts/pyinstaller/depchk.sh @@ -11,10 +11,14 @@ ckpypi() { pyinstaller pyinstaller-hooks-contrib pywin32-ctypes + certifi + charset_normalizer + idna Jinja2 MarkupSafe mutagen Pillow + requests ) for dep in "${deps[@]}"; do k= diff --git a/scripts/run-tests.sh b/scripts/run-tests.sh index 834137d7..f14df573 100755 --- a/scripts/run-tests.sh +++ b/scripts/run-tests.sh @@ -27,7 +27,7 @@ python3 ../scripts/strip_hints/a.py pids=() for py in python{2,3}; do - [ ${1:0:6} = python ] && [ $1 != $py ] && continue + [ "${1:0:6}" = python ] && [ "$1" != $py ] && continue PYTHONPATH= [ $py = python2 ] && PYTHONPATH=../scripts/py2:../sfx/py37 diff --git a/scripts/uncomment.py b/scripts/uncomment.py index 752a93ce..e0c07b1d 100644 --- a/scripts/uncomment.py +++ b/scripts/uncomment.py @@ -86,7 +86,10 @@ def main(): except Exception as ex: print("\nnon-mp fallback due to {}\n".format(ex)) for f in sys.argv[1:]: - uncomment(f) + try: + uncomment(f) + except Exception as ex: + print("uncomment failed: [%s] %s" % (f, repr(ex))) print("k")