Commit graph

3171 commits

Author SHA1 Message Date
ed 3a2381ff2d webdav: fix depth:0 in rootless vfs;
also safeguards against potential issues with invalid
paths if the api is used incorrectly from a plugin
2025-09-14 23:27:33 +00:00
ed 83bd197438 warn on invalid idp-volume mapping 2025-09-14 23:20:45 +00:00
ed c03b332ec0 linter fixes 2025-09-14 23:18:34 +00:00
ed 8f587627e1 download-as-zip: better names for selections;
previously, the first selected file became the name of the zip

now, the name will be "sel-foldername", similar to when the whole
folder is downloaded, but with a prefix to indicate it's a subset
2025-09-13 21:10:10 +00:00
ed 14b7e5143f md-editor: fix extra http roundtrip;
the check for a leading newline was not specific enough,
accidentally matching the opening line of a json document,
triggering the xhr safeguard and wasting a roundtrip
2025-09-13 21:09:59 +00:00
ed 3e97a77784 cosmetic fixes after edafa1586 2025-09-13 21:04:16 +00:00
ed 3f45492725 fix --help on non-utf8 consoles 2025-09-13 20:59:00 +00:00
ed 9c9e4057e0 media-tags: unmap "conductor" (was album-artist) 2025-09-13 20:55:08 +00:00
ed 3d09bec1bb fix ?v to opt-out from index.html 2025-09-13 20:53:12 +00:00
ed d7887f3d55 qr-code can optionally ignore -q;
new options --qr-stdout and --qr-stderr will always print the qr-code
into the console, even if copyparty is running in quiet mode (-q)

closes https://codeberg.org/9001/copyparty/issues/1
2025-09-13 20:14:50 +00:00
ed ecd18adc3c optional case-insensitive unicode search (#789);
made it default-disabled because it's a bit expensive
2025-09-13 19:48:08 +00:00
Kyler Clay e2aa8fc1a4
case-insensitive search for non-ascii filenames/paths (#789)
the previous case-insensitive searching of filenames and paths
would only apply to ascii letters; extend this to all characters
2025-09-13 19:44:26 +00:00
David Sullivan 5c1a43c711
fix hotkey typo (P->O) in lightbox (#788)
helptext indicated that P was the hotkey for seeking

Signed-off-by: David Sullivan <311316+tkroo@users.noreply.github.com>
2025-09-11 00:31:58 +02:00
daimond113 52438bcc0d update polish pluralization 2025-09-08 23:18:18 +02:00
ed e09f3c9e2c shutil: ignore errors from copystat in copy2;
ntfs on linux can be picky about cloning mtime onto a new file;
generally we don't care if that fails, however, we also want the
speedup that CopyFile2 can offer, so cannot use copyfile directly

this avoids the following issue:

up2k:3537 <_symlink>: shutil.copy2(fsenc(csrc), fsenc(dst))
shutil:437 <copy2>: copystat(src, dst, follow_symlinks=follow_sym[...]
shutil:376 <copystat>: lookup("utime")(dst, ns=(st.st_atime_ns, s[...]
[PermissionError] [Errno 1] Operation not permitted, '/windows/videos'
2025-09-08 20:21:12 +00:00
ed 25749b4b5f accept empty files through bup; closes #775 2025-09-08 10:08:34 +02:00
ed c47c708433 v1.19.8 2025-09-07 23:00:05 +00:00
ed e0a92ba72d fence fileshares to just those files
when a share is created for just a single file, it was possible to
guess other filenames in the source folder and access those files
2025-09-07 22:48:31 +00:00
ed 98386f28f0 simplify og_ua logic;
idk what this was *supposed* to do but what it *did* was prevent
loading the full image even when the request had a good referrer
(this broke viewing images in firefox at least)
2025-09-07 20:54:37 +00:00
ed 422f8f624e fix volflag og_ua 2025-09-07 20:42:23 +00:00
ed edafa1586a volflag to block sharing of a volume 2025-09-07 17:20:51 +00:00
ed e270fe60ed fix uds perms with rm-sck 2025-09-07 09:02:43 +00:00
ed 3bdef75e88 connectpage: usernames 2025-09-06 22:17:48 +00:00
ed f7e08ed007 defer next-song hotkey while changing folders 2025-09-05 23:19:20 +00:00
ed b049631169 ftp: CWD is optional (#539) 2025-09-05 22:36:16 +00:00
ed aaeec11f81 bail from aborted batch operations; closes #748
f.shift() in rename_cb would return null since the queue was dumped
2025-09-05 21:43:33 +00:00
ed 96b109b0d6 decrement folder-sz on delete; closes #759, #393 2025-09-05 21:03:30 +00:00
ed 74821a38ad speed 2025-09-05 20:38:04 +00:00
ed 19a4c45389 rbac disk-info and --ver (closes #726);
options --du-who and --ver-who specifies who can see the disk-info
(disk-usage, disk-free) and server-version based on user permissions
2025-09-05 19:48:38 +00:00
ed 09f22993be idp login/logout routes (#761) 2025-09-05 18:44:30 +00:00
ed c2be664e96 cleanup jinja whitespace 2025-09-05 18:12:53 +00:00
ed 7a4ee4dbc8 apply ipr during login too (#397) 2025-09-05 16:20:00 +00:00
ed bd6d1f961d konmai intensifies
thx SG
2025-09-04 23:48:22 +00:00
ed eeb7738b53 clamp utime to filesystem limits (#539) 2025-09-04 23:31:05 +00:00
ed e6755aa8a1 restrict runtime-state in $TMP; closes #747
the preferred locations (XDG_CONFIG_HOME and ~/.config)
are trusted and will behave as before, because they are
only writable by the current unix-user

but when an emergency fallback location ($TMPDIR or /tmp) is used
because none of the preferred locations are writable, then this
will now force-disable sessions-db, idp-db, chpw, and shares

this security safeguard can be overridden with --unsafe-state

will now also create the config folder with chmod 700 (rwx------)
2025-09-03 21:55:07 +00:00
ed 230a146209 ignore dotfiles in config-folders; closes #727
macos adds garbage files named ._something.conf
into config folders, crashing the config parser
2025-09-03 19:57:28 +00:00
ed c71128fd72 ignore cppws on plaintext;
cppws, if set from https context, cannot be cleared by plaintext

this could lead to confusing login/logout behavior
2025-09-03 19:50:54 +00:00
ed b59b915962 ie11 fixes 2025-09-03 19:48:47 +00:00
ed f0caf88185 add konmai quality
blame msw for this :p
2025-09-03 19:45:19 +00:00
ed bfcb6eac41 fix chrome reverting video pause toggles
pausing a video with spacebar while video is focused would first
get handled by the js hotkey, and then chrome would ignore our
hint that bubbling should cease and undo it anyways
2025-09-03 19:37:24 +00:00
ed e798a9a53a fix hotkeys on dvorak (closes #298, closes #733);
apparently the convention is that hotkeys should follow the letters
according to the layout, and not remain in the qwerty position

this breaks apart the cluster of media controls (uiojkl),
but that's the intended and expected behavior so it should be fine
2025-09-03 19:33:48 +00:00
ed 26a29797a6 v1.19.7 2025-08-28 20:14:50 +00:00
ed 14555d5832 add chdir option 2025-08-28 20:14:25 +00:00
ed 914686ec7c fix navigation by holding I/K 2025-08-28 18:46:11 +02:00
ed 0d96786e68 fix using empty dir as state storage;
also supports 4111 (d--x--x--x) XDG_CONFIG_HOME
2025-08-28 18:15:37 +02:00
ed 200eaa92d7 v1.19.6 2025-08-27 20:38:20 +00:00
ed d40f061a79 fix invalid up2k api usage 2025-08-27 20:15:45 +00:00
ed 28b93d7961 option to log invalid xml from clients (#695);
windows webdav can send invalid xml in LOCK requests
2025-08-27 19:55:21 +00:00
ed aa1c921302 support file-as-volume (#696);
a volume can be a single file instead of a folder,
but a misleading warning indicated otherwise
2025-08-27 19:17:36 +00:00
ed 2848941e01 more qr tweaks (closes #533);
* --qr-every draws the qr-code periodically, with/without --qr-pin
* --qr-winch redraws --qr-pin on console size change
* --qr-pin logs detected console size for debug
2025-08-27 19:01:19 +00:00
ed f4f702c39d shellcheck fixes; closes #690
a small selection of changes from the PR
2025-08-27 18:56:23 +00:00
ed 4c042b3c82 catch markdown table-fmt error; closes #699 2025-08-27 18:09:27 +00:00
ed 0b50fde305 audio-thumb as folder-thumb; closes #691 2025-08-27 18:03:10 +00:00
ed 0b3939002d helptext tweaks 2025-08-27 18:00:40 +00:00
ed 543b7ea959 add --auth-ord; closes #689 2025-08-26 23:33:53 +00:00
ed d30240b431 spaces in comma-sep. opts 2025-08-26 23:12:10 +00:00
ed abffda5474 unindent after mkdir(XDG_CONFIG_HOME) 2025-08-24 21:35:05 +00:00
ed 35472557cb strongly prefer XDG_CONFIG_HOME; closes #442 2025-08-24 21:34:37 +00:00
ed 48d6224ec8 url-param "dl" downloads file 2025-08-24 20:54:28 +00:00
ed 68503444c7 markdown: fix <code> in <a>; closes #552 2025-08-23 22:33:35 +00:00
ed 0491123bb2 add markdown newlines option (#552) 2025-08-23 22:29:41 +00:00
ed 8f235be66f enable polish translation 2025-08-23 21:31:30 +00:00
4ntsy 4b8c22159a
Portuguese translation (#673) 2025-08-23 21:28:37 +00:00
nyqui ad0e6c7fde updated strings "mt_cflac", "mt_caac", "mt_coth" 2025-08-23 00:59:15 +02:00
ed d39c74c126 fix fe80 assumption;
IPv6 link-local is fe80::/10, not just fe80
2025-08-22 21:43:31 +00:00
ed ceaf133d9d v1.19.5 2025-08-21 23:19:11 +00:00
ed 202ddeac0d write qrcode to file 2025-08-21 23:06:39 +00:00
ed cc4f4aef99 fix typos; closes #237, closes #465
correct subset of fixes, not touching the intentional/sacred ones
2025-08-21 22:03:34 +00:00
ed cc65b1b551 more helpful configparser 2025-08-21 21:26:13 +00:00
ed 6d76254c88 ftpd: fix ipv6 bonks (#628) 2025-08-21 20:28:21 +00:00
ed 0de07d8e8b fix a11y crash; closes #649 2025-08-21 19:39:48 +00:00
ed ca98d54fda install on iOS; closes #328 2025-08-21 19:23:44 +00:00
ed 6c76614eb1 fix rproxy hint; closes #661 2025-08-21 19:35:36 +02:00
ed 63d4ec64cd qr: fix fg=-1 with z=1 2025-08-21 19:14:45 +02:00
DeStilleGast 5e36f02595 Update browser.js - Found a typo
Signed-off-by: DeStilleGast <3677706+DeStilleGast@users.noreply.github.com>
2025-08-19 23:26:06 +02:00
ed 377f7732de v1.19.4 2025-08-17 15:56:56 +00:00
ed da4ae66173 v1.19.3 2025-08-17 15:22:17 +00:00
ed bf1fdcab09 fix #556 fuckup, fixes #624 2025-08-17 15:19:25 +00:00
ed a113d3b925 v1.19.2 2025-08-17 11:21:25 +00:00
ed 96cb5abf53 extend vips heif formats 2025-08-17 11:07:02 +00:00
ed 782e2f1de3 bbox: stay fullscreen 2025-08-17 10:42:45 +00:00
ed f4727f8ea3 fix config expansion order; closes #556 2025-08-17 10:05:25 +00:00
ed d4cf42e760 show severity in logs with no-ansi; #616 2025-08-17 09:06:23 +00:00
ed 98d117b8ad music-thumbs: use embedded art as default (closes #252);
previous behavior can be restored with --th-spec-p 2

thumbnails cache (.hist/th/) must be deleted to take effect
2025-08-16 23:00:15 +00:00
ed d9046f7e01 fix xvol false-positive;
given the following config:

* volume /a mapped to /srv/nas/
* volume /b mapped to /srv/nas/foo/
* anyone can read volume /a but not /b

accessing /a/foo/ would incorrectly fail because the xvol-check
would select /b based on its abspath being physically closer,
not considering that the same abspath is reachable from /a
2025-08-16 21:55:51 +00:00
ed dcc6b1b4ef fix download-selection in old firefox; closes #618 2025-08-16 21:54:45 +00:00
ed 274c074775 hide --rp-loc in tree; closes #306 2025-08-16 20:45:46 +00:00
ed 43a19779c1 ftp: fix potential utime issue; closes #539 2025-08-15 21:36:02 +00:00
ed 23ea1c8a14 better dropdown color 2025-08-15 21:35:10 +00:00
ed 4df033ecc3 [DB-V6]: store usernames; closes #530 2025-08-15 21:33:13 +00:00
ed 1228b5510b option -ss requires webdav login; closes #613 2025-08-15 20:14:35 +00:00
ed 62e072a2ed restrict account to ip/subnet; closes #397 2025-08-15 20:12:17 +00:00
ed a4649d1e71 generic header auth (closes #504);
extends idp-auth to also accept a collection of headers (and
expected values of those headers) and map those to certain users

useful for Tailscale-User-Login and similar
2025-08-15 19:19:21 +00:00
ed f4a3fba29c add global-logout button 2025-08-14 21:53:57 +00:00
ed 3aa8b7aa2d ftp: reject uploads nicely; closes #573
if a client tries to upload where it does not have write-access,
rather than kicking the client with an exception, reply properly
2025-08-14 20:31:58 +00:00
ed d56230573d separate audio-transcode timeout (#598) 2025-08-14 20:02:32 +00:00
ed af8620da92 fix --lang helptext; closes #594 2025-08-14 19:50:50 +00:00
ed 2961dea5bb tl cleanup 2025-08-14 19:36:20 +00:00
nyqui 4e878d2f1e
initial Korean translation (#583)
Signed-off-by: nyqui <67160376+nyqui@users.noreply.github.com>
2025-08-14 19:30:41 +00:00
ed 7f44875061 autogen pw for blank-pw users (closes #596);
if a user is defined with a blank password,
generate a strong password for that user
2025-08-14 19:22:04 +00:00