From ce33a88e252199675fd2343b2d883bce5b6a71a5 Mon Sep 17 00:00:00 2001 From: ed Date: Tue, 26 May 2026 18:16:37 +0000 Subject: [PATCH] v1.20.15 --- copyparty/__version__.py | 4 +-- docs/changelog.md | 60 +++++++++++++++++++++++++++++++++ scripts/deps-docker/Dockerfile | 2 +- scripts/docker/Dockerfile.dj | 2 +- scripts/docker/Dockerfile.iv | 2 +- scripts/pyinstaller/deps.sha512 | 2 +- scripts/pyinstaller/notes.txt | 2 +- 7 files changed, 67 insertions(+), 7 deletions(-) diff --git a/copyparty/__version__.py b/copyparty/__version__.py index 9d2458c4..6d20349c 100644 --- a/copyparty/__version__.py +++ b/copyparty/__version__.py @@ -1,8 +1,8 @@ # coding: utf-8 -VERSION = (1, 20, 14) +VERSION = (1, 20, 15) CODENAME = "sftp is fine too" -BUILD_DT = (2026, 4, 24) +BUILD_DT = (2026, 5, 26) 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 e7427dde..e2a25e8b 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,3 +1,63 @@ +▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ +# 2026-0424-2222 `v1.20.14` autolocalization + +## 🧪 new features + +* #1410 #376 #1224 new option `--glang` to autoselect UI-translation based on webbrowser's language (thx @stackxp!) ec3e0e7e +* #1407 #1384 option to automatically switch between list-view and grid-view depending on folder contents (thx @icxes!) 822fa718 660ed7a9 961a2737 +* #1447 audioplayer can now play bcstm / bfstm / brstm files (nintendo 3ds/wii bgm) 3a9ff67a +* #1389 add 1000-based filesize-units in addition to 1024-based 43773f2c +* #1395 [reloc-by-wark](https://github.com/9001/copyparty/tree/hovudstraum/bin/hooks#more-upload-stuff), a pair of hooks to rename incoming uploads to a hash of the file contents 1e7de5d1 +* option [--rlo](https://copyparty.eu/cli/#rlo-help-page) to change the logrotate-counter for [-lo](https://copyparty.eu/cli/#g-lo) 8b986888 +* add `--certkey` to specify certificate and key as separate files 8c7cdf85 + * but the built-in HTTPS server should [still not be trusted](https://github.com/9001/copyparty/#https) +* config-files can now use OS environment-variables anywhere in the `[global]` config section cbd82b65 e52bbed8 + * by default, only the syntax `${VAR}` is supported, not `$VAR` or `%VAR%` + * previously, a small handful of global-options already supported this (`c lo hist dbpath ssl_log`), but they also supported the `$VAR` syntax, which is no longer the case + * if the old `$VAR` syntax is detected, copyparty will crash on startup, suggesting the following remedies (choose one!) in the log: + 1. update the config-value to the new `${VAR}` syntax (recommended) + 2. allow the old syntax with global-option `--env-expand 1` (risky) + 3. ignore the old syntax and only expand the new syntax with global-option `--env-expand 2` + 4. disable all environment-variable expansions with `PRTY_NO_ENVEXPAND=1` + +## 🩹 bugfixes + +* #1437 webdav clients can now PROPFIND a file with `depth: infinite` which at least [webdav4](https://github.com/skshetry/webdav4) does e00f2b46 +* #1392 navigating into a subfolder using a `dks` [dirkey](https://github.com/9001/copyparty/#dirkeys) (default-disabled) could fail 228c3dfa +* #1446 #1330 #1362 fix some small edgecases with the rightclick-menu (thx @icxes!) 874e0e7a +* #1403 #1396 audioplayer: fix ui-crash when folder contains an m3u-file and sort-order is changed during playback (thx @icxes!) 198f631a +* #1428 #1427 when `--magic` was enabled, nameless uploads of textfiles would get the file-extension `.ssa` instead of `.txt` (thx @Scotsguy!) ed516ddc +* #1449 on some filesystems, the tail/follow function would spam the log with `reopened at byte XXX` 81730189 +* #1401 on windows, a spec-violating basic-upload could delay that upload by a few seconds 6fb1287e +* on macOS, u2c would clear the terminal on exit, even with `-ns` 238887c7 +* audio-files in a videofile trenchcoat did not thumbnail correctly 1066dc39 + +## 🔧 other changes + +* #1387 added gentoo packaging (thx @mid-kid!) fb5384f4 +* #1425 improved FreeBSD / OpenBSD support (thx @chilledfrogs!) f5613187 745d82fa +* #1352 new handler: [fail2ban](https://github.com/9001/copyparty/blob/hovudstraum/bin/handlers/404-to-fail2ban.py) (thx @Lomaiin!) 26e663d1 +* improve errormessage when the server's OS-HDD blips out of existence d1517d0c +* #1439 improve IPv6 autoban IP-range (thx @SnowSquire!) f6dc1e29 +* ensure opus transcodes will at most have 2 audio channels (stereo) b31f2902 +* #1417 smb-server: probably add IPv6 support a5d859d2 +* `--list-nics` and `--list-ips` to show autodetected network-adapters and IPs 8d4363d1 +* docs: + * nixos module-override example (thx @Scotsguy!) 0b16e875 + * make it even more obvious that `--allow-csrf` is a bad idea 9a724b01 + * mention `--urlform get` to disable message-to-serverlog ac05b4f1 + * readme: improve [shadowing](https://github.com/9001/copyparty#shadowing) phrasing 003c68d0 + * [devnotes](https://github.com/9001/copyparty/blob/hovudstraum/docs/devnotes.md#dependencies): explain the vendored dependencies 971f8ef9 + +## 🌠 fun facts + +* this release includes [code](https://github.com/9001/copyparty/commit/cbd82b65) written at [abs(unit)](https://a.ocv.me/pub/g/nerd-stuff/abs-unit.jpg) + * btw that pdp had an IPv6 lease and browsed the internet :^) + * hasn't connected to copyparty though (yet...) +* this release was powered by [一体いつから (TaKo Hardcore bootleg)](https://soundcloud.com/takomusiccc/tako-hardcore-bootleg) followed by [Fighting My Way (YUPPUN Hardcore Remix)](https://soundcloud.com/yuppun/fightingmyway) (shd is a good dj) + + + ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ # 2026-0323-0328 `v1.20.13` dothidden diff --git a/scripts/deps-docker/Dockerfile b/scripts/deps-docker/Dockerfile index 093aa2f8..485461dd 100644 --- a/scripts/deps-docker/Dockerfile +++ b/scripts/deps-docker/Dockerfile @@ -2,7 +2,7 @@ FROM alpine:3.23 WORKDIR /z ENV ver_hashwasm=4.12.0 \ ver_marked=4.3.0 \ - ver_dompf=3.4.1 \ + ver_dompf=3.4.6 \ ver_mde=2.18.0 \ ver_codemirror=5.65.18 \ ver_fontawesome=5.13.0 \ diff --git a/scripts/docker/Dockerfile.dj b/scripts/docker/Dockerfile.dj index 1d1233f0..3796722c 100644 --- a/scripts/docker/Dockerfile.dj +++ b/scripts/docker/Dockerfile.dj @@ -28,7 +28,7 @@ RUN apk add -U !pyc ${ADD_PKG} \ py3-wheel py3-numpy-dev \ vamp-sdk-dev \ && rm -f /usr/lib/python3*/EXTERNALLY-MANAGED \ - && python3 -m pip install pyvips \ + && python3 -m pip install pyvips --no-build-isolation \ && bash install-deps.sh \ && apk del py3-pip .bd \ && chmod 777 /root \ diff --git a/scripts/docker/Dockerfile.iv b/scripts/docker/Dockerfile.iv index b85bf846..1b9e7c2a 100644 --- a/scripts/docker/Dockerfile.iv +++ b/scripts/docker/Dockerfile.iv @@ -17,7 +17,7 @@ RUN apk add -U !pyc ${ADD_PKG} \ vips-jxl vips-poppler vips-magick \ libraw-tools \ && rm -f /usr/lib/python3*/EXTERNALLY-MANAGED \ - && python3 -m pip install pyvips + && python3 -m pip install pyvips --no-build-isolation COPY i innvikler.sh ./ RUN ash innvikler.sh iv diff --git a/scripts/pyinstaller/deps.sha512 b/scripts/pyinstaller/deps.sha512 index 9d6cdd5f..90257c9e 100644 --- a/scripts/pyinstaller/deps.sha512 +++ b/scripts/pyinstaller/deps.sha512 @@ -28,7 +28,7 @@ f4b4e330995ebe96c0bd06e16e5b26062ece9473f06d369775aa68eab261dedcf32dfdd159acaa22 00731cfdd9d5c12efef04a7161c90c1e5ed1dc4677aa88a1d4054aff836f3430df4da5262ed4289c21637358a9e10e5df16f76743cbf5a29bb3a44b146c19cf3 MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl 8a6e2b13a2ec4ef914a5d62aad3db6464d45e525a82e07f6051ed10474eae959069e165dba011aefb8207cdfd55391d73d6f06362c7eb247b08763106709526e mutagen-1.47.0-py3-none-any.whl a726fb46cce24f781fc8b55a3e6dea0a884ebc3b2b400ea74aa02333699f4955a5dc1e2ec5927ac72f35a624401f3f3b442882ba1cc4cadaf9c88558b5b8bdae packaging-25.0-py3-none-any.whl -efc712162da7fb005c8869a7612d2f4983d2d073ec79e16a58e7bf1fcd01c88b1cc26656f0893c68edd2294be7c3990db2f6bd77e7e3f2613539d57994b6a033 pillow-12.1.1-cp313-cp313-win_amd64.whl +5459cfe12d953ed37c481a992e3509536b7997fbd1bb77158d3465d86d3d57af9a16fd4d695374fe6ed30cbb12ac90a2de3000dd92897ddf8bdcfc3e3de831bd pillow-12.2.0-cp313-cp313-win_amd64.whl b9b98714dfca6fa80b0b3f222965724d63be9c54d19435d1fe768e07016913d6db8d6e043fcb185b55a9bd6fe370a80cf961814fc096046a5f4640d99ed575ef pyinstaller-6.15.0-py3-none-win_amd64.whl cad0f7cf39de691813b1d4abc7d33f8bda99a87d9c5886039b814752e8690364150da26fb61b3e28d5698ff57a90e6dcd619ed2b64b04f72b5aadb75e201bdb0 pyinstaller_hooks_contrib-2025.8-py3-none-any.whl 368ea2da3e3bfe765a37c62227e84774853aaabce6954475fa45c873e5547cb5346ca03a0f6a0789af369285bb3464881fed0275a19066913d9d396d5d9b9947 python-3.13.13-amd64.exe diff --git a/scripts/pyinstaller/notes.txt b/scripts/pyinstaller/notes.txt index 7f7b89e6..832b58a7 100644 --- a/scripts/pyinstaller/notes.txt +++ b/scripts/pyinstaller/notes.txt @@ -39,7 +39,7 @@ fns=( MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl mutagen-1.47.0-py3-none-any.whl packaging-25.0-py3-none-any.whl - pillow-12.1.1-cp313-cp313-win_amd64.whl + pillow-12.2.0-cp313-cp313-win_amd64.whl pyinstaller-6.15.0-py3-none-win_amd64.whl pyinstaller_hooks_contrib-2025.8-py3-none-any.whl python-3.13.13-amd64.exe