Commit graph

48 commits

Author SHA1 Message Date
sigoden f8ea41638f
feat: new auth (#218)
The access level path control used by dufs has two disadvantages:

1. One path cannot support multiple users
2. It is very troublesome to set multiple paths for one user

So it needs to be refactored.
The new auth is account based, it closes #207, closes #208.

BREAKING CHANGE: new auth
2023-06-01 18:52:05 +08:00
sigoden fb5b50f059
fix: URL-encoded filename when downloading in safari (#203)
* fix: URL-encoded filename when downloading in safari

* add test
2023-03-31 22:52:07 +08:00
sigoden 29a04c8d74
refactor: improve error handle (#195) 2023-03-12 15:20:40 +08:00
sigoden c92e45f2da
fix: basic auth sometimes does not work (#194) 2023-03-12 12:58:36 +08:00
sigoden 45f4f5fc58
feat: guess plain text encoding then set content-type charset (#186) 2023-03-01 09:36:59 +08:00
horizon 6dcb4dcd76
fix: cors allow-request-header add content-type (#184)
* fix: cors allow-request-header add content-type

* add content-type test
2023-02-27 07:28:33 +08:00
sigoden ad0be71557 chore: optimize for test auth 2023-02-21 16:16:49 +08:00
sigoden 6d9758c71d
feat: ui improves the login experience (#182)
close #157 #158
2023-02-21 12:42:40 +08:00
sigoden dd6973468c
feat: support edit files (#179)
close #172
2023-02-20 22:50:24 +08:00
sigoden 7d6d7d49ca
feat: API to search and list directories (#177)
use `?simple` to output path name only.
use `?json` to output paths in json format.
By default, output html page.

close #166
2023-02-20 11:05:53 +08:00
sigoden b7c5119c2e
feat: hiding only directories instead of files (#175)
A `--hidden` pattern with `/` suffix means hiding only directories not files.
A `--hidden` pattern without `/` will hide matching files and directories.
2023-02-19 22:03:59 +08:00
horizon 0000bd27f5
fix: remove Method::Options auth check (#168)
* fix: remove Method::Options auth check

* add tests

---------

Co-authored-by: sigoden <sigoden@gmail.com>
2023-02-19 12:30:14 +08:00
sigoden 628d863d2e chore: improve code quanity 2022-12-11 15:18:44 +08:00
sigoden 8d9705caa4
feat: add option --allow-archive (#152)
BREAKING CHANGE: explicitly allow download folder as zip file
2022-12-10 11:09:42 +08:00
sigoden 8b4727c3a4
fix: panic on PROPFIND // (#144) 2022-11-10 19:28:01 +08:00
Aneesh Agrawal 604ccc6556
fix: status code for MKCOL on existing resource (#142)
* Fix status code for MKCOL on existing resource

Per https://datatracker.ietf.org/doc/html/rfc4918#section-9.3.1,
MKCOL should return a 405 if the resource already exists.

Impetus for this change:
I am using dufs as a webdav server for [Joplin](https://joplinapp.org/)
which interpreted the previous behavior of returning a 403 as an error,
preventing syncing from working.

* add test

Co-authored-by: sigoden <sigoden@gmail.com>
2022-11-10 18:41:10 +08:00
David Politis 1a9990f04e
fix: don't search on empty query string (#140)
* fix: don't search on empty query string

* refactor

Co-authored-by: sigoden <sigoden@gmail.com>
2022-11-10 18:02:55 +08:00
sigoden bd07783cde chore: cargo clippy 2022-11-10 15:38:35 +08:00
sigoden dbf2de9cb9
fix: auth not works with --path-prefix (#138)
close #137
2022-10-08 09:14:42 +08:00
sigoden a74e40aee5
feat: add --assets options to override assets (#134)
* feat: add --assets options to override assets

* update readme
2022-09-05 10:30:45 +08:00
sigoden 31c832a742
feat: support sort by name, mtime, size (#128) 2022-08-23 14:24:42 +08:00
sigoden 3ae75d3558
fix: hide path by ext name (#126) 2022-08-06 07:48:34 +08:00
sigoden cc0014c183 chore: fix typo 2022-08-03 08:51:12 +08:00
sigoden 0918fb3fe4
feat: support ecdsa tls cert (#119) 2022-08-02 09:32:11 +08:00
sigoden ae2f878e62
feat: support customize http log format (#116) 2022-07-31 08:27:09 +08:00
sigoden 4e823e8bba
feat: make --path-prefix works on serving single file (#102) 2022-07-08 19:30:05 +08:00
sigoden 4e84e6c532
fix: cors headers (#100) 2022-07-08 16:18:10 +08:00
sigoden 76e967fa59
feat: add completions (#97) 2022-07-06 12:11:00 +08:00
sigoden 604cbb7412
feat: check permission on move/copy destination (#93) 2022-07-04 23:25:05 +08:00
sigoden 2ffdcdf106
feat: allow search with --render-try-index (#88) 2022-07-02 23:25:57 +08:00
sigoden eb7a536a3f
feat: support hiding folders with --hidden (#73) 2022-06-25 08:15:16 +08:00
sigoden e29cf4c752
refactor: split css/js from index.html (#68) 2022-06-21 23:01:00 +08:00
sigoden 7f062b6705
feat: use custom logger with timestamp in rfc3339 (#67) 2022-06-21 21:19:51 +08:00
sigoden 4058a2db72
feat: add option --allow-search (#62) 2022-06-21 07:23:20 +08:00
sigoden 069cb64889
fix: decodeURI searching string (#61) 2022-06-20 21:51:41 +08:00
Joe Koop deb6365a28
feat: added basic auth (#60)
* some small css fixes and changes

* added basic auth
https://stackoverflow.com/a/9534652/3642588

* most tests are passing

* fixed all the tests

* maybe now CI will pass

* implemented sigoden's suggestions

* test basic auth

* fixed some little things
2022-06-20 11:25:09 +08:00
sigoden a67da8bdd3
feat: rename to dufs (#59)
close #50

BREAKING CHANGE: rename duf to dufs
2022-06-19 22:53:51 +08:00
sigoden e66951fd11
refactor: rename --cors to --enable-cors (#57)
BREAKING CHANGE: `--cors` rename to `--enable-cors`
2022-06-19 17:27:09 +08:00
sigoden c3ac2a21c9
feat: serve single file (#54)
close #53
2022-06-19 14:23:10 +08:00
sigoden 9c2e9d1503
feat: path level access control (#52)
BREAKING CHANGE: `--auth` is changed, `--no-auth-access` is removed
2022-06-19 11:26:03 +08:00
sigoden af866aaaf4 chore: optimize --render-try-index 2022-06-17 19:05:25 +08:00
sigoden 5b11bb75dd
feat: add option --render-try-index (#47)
close #46
2022-06-17 08:41:01 +08:00
sigoden d8f7335053
fix: range request (#44)
close #43
2022-06-16 10:24:32 +08:00
sigoden c7d42a3f1c
fix: webdav propfind dir with slash (#42) 2022-06-15 20:24:53 +08:00
sigoden 3c4bb77023
refactor: trival changes (#41)
- refactor status code
- log remote addr and time in miliseconds
2022-06-15 19:57:28 +08:00
sigoden 12aafa00d8
feat: listen both ipv4 and ipv6 by default (#40) 2022-06-15 19:33:51 +08:00
sigoden dd8b21f3a6 feat: options method return status 200 2022-06-12 09:33:01 +08:00
sigoden 471bca86c6
test: add integration tests (#36) 2022-06-12 08:43:50 +08:00