From ca04a00662422e5ed4990949e5f0ca6232006930 Mon Sep 17 00:00:00 2001 From: ed Date: Thu, 16 Mar 2023 21:06:18 +0000 Subject: [PATCH] v1.6.9 --- README.md | 3 ++- copyparty/__version__.py | 4 ++-- copyparty/ftpd.py | 1 + docs/changelog.md | 40 ++++++++++++++++++++++++++++++++++++++++ tests/util.py | 2 +- 5 files changed, 46 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 26119af2..547989d9 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ turn your phone or raspi into a portable file server with resumable uploads/down * browse/upload with [IE4](#browser-support) / netscape4.0 on win3.11 (heh) * protocols: [http](#the-browser) // [ftp](#ftp-server) // [webdav](#webdav-server) // [smb/cifs](#smb-server) -try the **[read-only demo server](https://a.ocv.me/pub/demo/)** 👀 running from a basement in finland +**[Get started](#quickstart)!** or visit the **[read-only demo server](https://a.ocv.me/pub/demo/)** 👀 running from a basement in finland 📷 **screenshots:** [browser](#the-browser) // [upload](#uploading) // [unpost](#unpost) // [thumbnails](#thumbnails) // [search](#searching) // [fsearch](#file-search) // [zip-DL](#zip-downloads) // [md-viewer](#markdown-viewer) @@ -108,6 +108,7 @@ just run **[copyparty-sfx.py](https://github.com/9001/copyparty/releases/latest/ * or install through pypi (python3 only): `python3 -m pip install --user -U copyparty` * or if you cannot install python, you can use [copyparty.exe](#copypartyexe) instead +* or if you are on android, [install copyparty in termux](#install-on-android) * or if you prefer to [use docker](./scripts/docker/) 🐋 you can do that too * docker has all deps built-in, so skip this step: diff --git a/copyparty/__version__.py b/copyparty/__version__.py index 450ee34d..b06c052c 100644 --- a/copyparty/__version__.py +++ b/copyparty/__version__.py @@ -1,8 +1,8 @@ # coding: utf-8 -VERSION = (1, 6, 8) +VERSION = (1, 6, 9) CODENAME = "cors k" -BUILD_DT = (2023, 3, 12) +BUILD_DT = (2023, 3, 16) S_VERSION = ".".join(map(str, VERSION)) S_BUILD_DT = "{0:04d}-{1:02d}-{2:02d}".format(*BUILD_DT) diff --git a/copyparty/ftpd.py b/copyparty/ftpd.py index 3192b8a1..384bd2ec 100644 --- a/copyparty/ftpd.py +++ b/copyparty/ftpd.py @@ -129,6 +129,7 @@ class FtpFs(AbstractedFS): def die(self, msg): self.h.die(msg) + raise Exception() def v2a( self, diff --git a/docs/changelog.md b/docs/changelog.md index 6e589333..d2a4f859 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,3 +1,43 @@ +▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ +# 2023-0312-1610 `v1.6.8` folder thumbs + +* read-only demo server at https://a.ocv.me/pub/demo/ +* [docker image](https://github.com/9001/copyparty/tree/hovudstraum/scripts/docker) ╱ [similar software](https://github.com/9001/copyparty/blob/hovudstraum/docs/versus.md) ╱ [client testbed](https://cd.ocv.me/b/) + +## new features +* folder thumbnails are indexed in the db + * now supports non-lowercase names (`Cover.jpg`, `Folder.JPG`) + * folders without a specific cover/folder image will show the first pic inside +* when audio playback continues into an empty folder, keep trying for a bit +* add no-index hints (google etc) in basic-browser HTML (`?b`, `?b=u`) +* [commandline uploader](https://github.com/9001/copyparty/blob/hovudstraum/bin/up2k.py) supports long filenames on win7 + +## bugfixes +* rotated logfiles didn't get xz compressed +* image-gallery links pointing to a deleted image shows an error instead of a crashpage + +## other changes +* folder thumbnails have purple text to differentiate from files +* `copyparty32.exe` starts 30% faster (but is 6% larger) + +---- + +# what to download? +| download link | is it good? | description | +| -- | -- | -- | +| **[copyparty-sfx.py](https://github.com/9001/copyparty/releases/latest/download/copyparty-sfx.py)** | ✅ the best 👍 | runs anywhere! only needs python | +| [a docker image](https://github.com/9001/copyparty/blob/hovudstraum/scripts/docker/README.md) | it's ok | good if you prefer docker 🐋 | +| [copyparty.exe](https://github.com/9001/copyparty/releases/latest/download/copyparty.exe) | ⚠️ [acceptable](https://github.com/9001/copyparty#copypartyexe) | for [win8](https://user-images.githubusercontent.com/241032/221445946-1e328e56-8c5b-44a9-8b9f-dee84d942535.png) or later; built-in thumbnailer | +| [up2k.exe](https://github.com/9001/copyparty/releases/latest/download/up2k.exe) | ⚠️ acceptable | [CLI uploader](https://github.com/9001/copyparty/blob/hovudstraum/bin/up2k.py) as a win7+ exe ([video](https://a.ocv.me/pub/demo/pics-vids/u2cli.webm)) | +| [copyparty32.exe](https://github.com/9001/copyparty/releases/latest/download/copyparty32.exe) | ⛔️ [dangerous](https://github.com/9001/copyparty#copypartyexe) | for [win7](https://user-images.githubusercontent.com/241032/221445944-ae85d1f4-d351-4837-b130-82cab57d6cca.png) -- never expose to the internet! | +| [cpp-winpe64.exe](https://github.com/9001/copyparty/releases/download/v1.6.8/copyparty-winpe64.exe) | ⛔️ dangerous | runs on [64bit WinPE](https://user-images.githubusercontent.com/241032/205454984-e6b550df-3c49-486d-9267-1614078dd0dd.png), otherwise useless | + +* except for [up2k.exe](https://github.com/9001/copyparty/releases/latest/download/up2k.exe), all of the options above are equivalent +* the zip and tar.gz files below are just source code +* python packages are available at [PyPI](https://pypi.org/project/copyparty/#files) + + + ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ # 2023-0305-2018 `v1.6.7` fix no-dedup + add up2k.exe diff --git a/tests/util.py b/tests/util.py index ad88103a..6a20ad53 100644 --- a/tests/util.py +++ b/tests/util.py @@ -98,7 +98,7 @@ class Cfg(Namespace): def __init__(self, a=None, v=None, c=None): ka = {} - ex = "daw dav_inf dav_mac dotsrch e2d e2ds e2dsa e2t e2ts e2tsr e2v e2vu e2vp ed emp force_js getmod hardlink ihead magic never_symlink nid nih no_acode no_athumb no_dav no_dedup no_del no_dupe no_logues no_mv no_readme no_robots no_sb_md no_sb_lg no_scandir no_thumb no_vthumb no_zip nrand nw rand vc xdev xlink xvol" + ex = "daw dav_inf dav_mac dotsrch e2d e2ds e2dsa e2t e2ts e2tsr e2v e2vu e2vp ed emp force_js getmod hardlink ih ihead magic never_symlink nid nih no_acode no_athumb no_dav no_dedup no_del no_dupe no_logues no_mv no_readme no_robots no_sb_md no_sb_lg no_scandir no_thumb no_vthumb no_zip nrand nw rand vc xdev xlink xvol" ka.update(**{k: False for k in ex.split()}) ex = "dotpart no_rescan no_sendfile no_voldump plain_ip"