Andy Hsu
3d51845f57
feat: invalidate old token after changing the password ( close #5515 )
2023-11-13 15:22:42 +08:00
Andy Hsu
4355dae491
fix: incorrect content-type of apk files ( close #5385 )
2023-11-06 18:20:25 +08:00
Andy Hsu
769281bd40
feat: refactor offline download ( #5408 close #4108 )
...
* wip: refactor offline download (#5331 )
* base tool
* working: aria2
* refactor: change type of percentage to float64
* wip: adapt aria2
* wip: use items in offline_download
* wip: use tool manager
* wip: adapt qBittorrent
* chore: fix typo
* Squashed commit of the following:
commit 4fc0a77565
Author: Andy Hsu <i@nn.ci>
Date: Fri Oct 20 21:06:25 2023 +0800
fix(baidu_netdisk): upload file > 4GB (close #5392 )
commit aaffaee2b5
Author: gmugu <94156510@qq.com>
Date: Thu Oct 19 19:17:53 2023 +0800
perf(webdav): support request with cookies (#5391 )
commit 8ef8023c20
Author: NewbieOrange <NewbieOrange@users.noreply.github.com>
Date: Thu Oct 19 19:17:09 2023 +0800
fix(aliyundrive_open): upload progress for normal upload (#5398 )
commit cdfbe6dcf2
Author: foxxorcat <95907542+foxxorcat@users.noreply.github.com>
Date: Wed Oct 18 16:27:07 2023 +0800
fix: hash gcid empty file (#5394 )
commit 94d028743a
Author: Andy Hsu <i@nn.ci>
Date: Sat Oct 14 13:17:51 2023 +0800
ci: remove `pr-welcome` label when close issue [skip ci]
commit 7f7335435c
Author: itsHenry <2671230065@qq.com>
Date: Sat Oct 14 13:12:46 2023 +0800
feat(cloudreve): support thumbnail (#5373 close #5348 )
* feat(cloudreve): support thumbnail
* chore: remove unnecessary code
commit b9e192b29c
Author: foxxorcat <95907542+foxxorcat@users.noreply.github.com>
Date: Thu Oct 12 20:57:12 2023 +0800
fix(115): limit request rate (#5367 close #5275 )
* fix(115):limit request rate
* chore(115): fix unit of `limit_rate`
---------
Co-authored-by: Andy Hsu <i@nn.ci>
commit 69a98eaef6
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date: Wed Oct 11 22:01:55 2023 +0800
fix(deps): update module github.com/aliyun/aliyun-oss-go-sdk to v2.2.9+incompatible (#5141 )
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
commit 1ebc96a4e5
Author: Andy Hsu <i@nn.ci>
Date: Tue Oct 10 18:32:00 2023 +0800
fix(wopan): fatal error concurrent map writes (close #5352 )
commit 66e2324cac
Author: Andy Hsu <i@nn.ci>
Date: Tue Oct 10 18:23:11 2023 +0800
chore(deps): upgrade dependencies
commit 7600dc28df
Author: Andy Hsu <i@nn.ci>
Date: Tue Oct 10 18:13:58 2023 +0800
fix(aliyundrive_open): change default api to raw server (close #5358 )
commit 8ef89ad0a4
Author: foxxorcat <95907542+foxxorcat@users.noreply.github.com>
Date: Tue Oct 10 18:08:27 2023 +0800
fix(baidu_netdisk): hash and `error 2` (#5356 )
* fix(baidu):hash and error:2
* fix:invalid memory address
commit 35d672217d
Author: jeffmingup <1960588251@qq.com>
Date: Sun Oct 8 19:29:45 2023 +0800
fix(onedrive_app): incorrect api on `_accessToken` (#5346 )
commit 1a283bb272
Author: foxxorcat <95907542+foxxorcat@users.noreply.github.com>
Date: Fri Oct 6 16:04:39 2023 +0800
feat(google_drive): add `hash_info`, `ctime`, `thumbnail` (#5334 )
commit a008f54f4d
Author: nkh0472 <67589323+nkh0472@users.noreply.github.com>
Date: Thu Oct 5 13:10:51 2023 +0800
docs: minor language improvements (#5329 ) [skip ci]
* fix: adapt update progress type
* Squashed commit of the following:
commit 65c5ec0c34
Author: itsHenry <2671230065@qq.com>
Date: Sat Nov 4 13:35:09 2023 +0800
feat(cloudreve): folder size count and switch (#5457 close #5395 )
commit a6325967d0
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date: Mon Oct 30 15:11:20 2023 +0800
fix(deps): update module github.com/charmbracelet/lipgloss to v0.9.1 (#5234 )
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
commit 4dff49470a
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date: Mon Oct 30 15:10:36 2023 +0800
fix(deps): update golang.org/x/exp digest to 7918f67 (#5366 )
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
commit cc86d6f3d1
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date: Sun Oct 29 14:45:55 2023 +0800
fix(deps): update module golang.org/x/net to v0.17.0 [security] (#5370 )
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
commit c0f9c8ebaf
Author: Andy Hsu <i@nn.ci>
Date: Thu Oct 26 19:21:09 2023 +0800
feat: add ignore direct link params (close #5434 )
2023-11-06 16:56:55 +08:00
Andy Hsu
c0f9c8ebaf
feat: add ignore direct link params ( close #5434 )
2023-10-26 19:21:09 +08:00
Andy Hsu
9ff83a7950
feat: add `header` to `meta` (ref #5317 )
2023-10-02 16:43:29 +08:00
Andy Hsu
e719a1a456
feat(sso): custom username key for `OIDC` ( close #5169 )
2023-10-02 14:42:40 +08:00
itsHenry
30977cdc6d
feat: sso compatibility mode ( #5260 )
2023-09-22 16:45:51 +08:00
Andy Hsu
882112ed1c
feat: add `hash_info` field to `/fs/get` ( close #5259 )
2023-09-22 15:20:04 +08:00
Andy Hsu
352a6a741a
feat(webdav): support copy directly without task ( close #5206 )
2023-09-13 15:45:57 +08:00
Andy Hsu
3504f017b9
fix(upload): memory leak on form upload as task ( close #5185 )
2023-09-07 15:51:52 +08:00
Andy Hsu
cd2f8077fa
chore: enable all pprof handle on debug
2023-09-07 14:56:50 +08:00
Andy Hsu
d5b68a91d2
fix(webdav): optimize `HEAD` request ( close #5182 )
2023-09-06 16:32:51 +08:00
Andy Hsu
6f6d20e1ba
fix: `force_https` not take effect on `noRoute` ( close #5167 )
2023-09-05 13:05:46 +08:00
Sean
e7c0d94b44
fix: form upload when ticked `As A Task` ( #5145 )
2023-09-03 15:40:40 +08:00
Andy Hsu
34fadecc2c
fix(ftp): dead lock on `Read` ( close #5128 )
2023-08-31 15:10:47 +08:00
Sean
6308f1c35d
fix: updateTime, createTime and HashInfo ( #5111 )
2023-08-29 13:31:24 +08:00
Andy Hsu
ce10c9f120
fix: temp file not close and incorrect `WebPutAsTask`
2023-08-28 18:18:02 +08:00
Andy Hsu
6c4736fc8f
fix: allow no `Last-Modified` on upload api
2023-08-28 16:42:03 +08:00
Andy Hsu
19d34e2eb8
feat: receive `lastModified` from upload api
2023-08-27 23:03:09 +08:00
Sean
a3748af772
feat: misc improvements about upload/copy/hash ( #5045 )
...
general: add createTime/updateTime support in webdav and some drivers
general: add hash support in some drivers
general: cross-storage rapid-upload support
general: enhance upload to avoid local temp file if possible
general: replace readseekcloser with File interface to speed upstream operations
feat(aliyun_open): same as above
feat(crypt): add hack for 139cloud
Close #4934
Close #4819
baidu_netdisk needs to improve the upload code to support rapid-upload
2023-08-27 21:14:23 +08:00
itsHenry
1aa024ed6b
feat: support webauthn login ( #4945 )
...
* feat: support webauthn login
* manually merge
* fix: clear user cache after updating authn
* decrease db size of Authn
* change authn type to text
* simplify code structure
---------
Co-authored-by: Andy Hsu <i@nn.ci>
2023-08-14 22:54:38 +08:00
Andy Hsu
5606c23768
perf(copy): use multi-thread downloader ( close #5000 )
2023-08-13 15:31:49 +08:00
Andy Hsu
a797494aa3
fix: missed update user's password
2023-08-07 18:51:54 +08:00
Andy Hsu
1c00d64952
feat: rehash password with a unique salt for each user
2023-08-07 15:46:19 +08:00
Andy Hsu
ff5cf3f4fa
feat: allow use token to access `WebDAV`
2023-08-07 14:38:50 +08:00
Andy Hsu
75acbcc115
perf: sha256 for user's password ( close #3552 )
2023-08-06 22:09:17 +08:00
Andy Hsu
30415cefbe
perf: delete user cache after cancel `2FA`
2023-08-06 20:47:58 +08:00
Sean
15b7169df4
perf: multi-thread downloader, `Content-Disposition` ( #4921 )
...
general: enhance multi-thread downloader with cancelable context, immediately stop all stream processes when canceled;
feat(crypt): improve stream closing;
general: fix the bug of downloading files becomes previewing stream on modern browsers;
Co-authored-by: Sean He <866155+seanhe26@users.noreply.github.com>
Co-authored-by: Andy Hsu <i@nn.ci>
2023-08-04 15:29:54 +08:00
Sean
3c21a9a520
feat: Crypt driver, improve http/webdav handling ( #4884 )
...
this PR has several enhancements, fixes, and features:
- [x] Crypt: a transparent encryption driver. Anyone can easily, and safely store encrypted data on the remote storage provider. Consider your data is safely stored in the safe, and the storage provider can only see the safe, but not your data.
- [x] Optional: compatible with [Rclone Crypt](https://rclone.org/crypt/ ). More ways to manipulate the encrypted data.
- [x] directory and filename encryption
- [x] server-side encryption mode (server encrypts & decrypts all data, all data flows thru the server)
- [x] obfuscate sensitive information internally
- [x] introduced a server memory-cached multi-thread downloader.
- [x] Driver: **Quark** enabled this feature, faster load in any single thread scenario. e.g. media player directly playing from the link, now it's faster.
- [x] general improvement on HTTP/WebDAV stream processing & header handling & response handling
- [x] Driver: **Mega** driver support ranged http header
- [x] Driver: **Quark** fix bug of not closing HTTP request to Quark server while user end has closed connection to alist
## Crypt, a transparent Encrypt/Decrypt Driver. (Rclone Crypt compatible)
e.g.
Crypt mount path -> /vault
Crypt remote path -> /ali/encrypted
Aliyun mount paht -> /ali
when the user uploads a.jpg to /vault, the data will be encrypted and saved to /ali/encrypted/xxxxx. And when the user wants to access a.jpg, it's automatically decrypted, and the user can do anything with it.
Since it's Rclone Crypt compatible, users can download /ali/encrypted/xxxxx and decrypt it with rclone crypt tool. Or the user can mount this folder using rclone, then mount the decrypted folder in Linux...
NB. Some breaking changes is made to make it follow global standard, e.g. processing the HTTP header properly.
close #4679
close #4827
Co-authored-by: Sean He <866155+seanhe26@users.noreply.github.com>
Co-authored-by: Andy Hsu <i@nn.ci>
2023-08-02 14:40:36 +08:00
WintBit
de8f9e9eee
feat: SSO auto register ( close #4692 in #4795 )
...
Co-authored-by: Andy Hsu <i@nn.ci>
2023-07-20 16:30:30 +08:00
Andy Hsu
3f8b3da52b
feat(server): add `HEAD` method support ( close #4740 )
2023-07-11 13:47:49 +08:00
Andy Hsu
8bdc67ec3d
fix(webdav): return 404 if error happened on `handlePropfind`
2023-07-05 13:52:21 +08:00
Andy Hsu
7d20a01dba
feat!: support listen to the unix ( close #4671 )
...
Starting from this commit, the HTTP server related config all move to the scheme
2023-07-04 17:56:02 +08:00
Andy Hsu
59dbf4496f
feat(offline_download): try to init client if not ready ( close #4674 )
2023-07-03 22:57:42 +08:00
vickunwu
12f40608e6
fix(oidc): use TOTP as state verification to replace the static 'state' parameter ( #4665 )
2023-07-03 22:41:08 +08:00
walloo
e9c74f9959
fix: regexp rename error ( close #4644 in #4653 )
...
Co-authored-by: Andy Hsu <i@nn.ci>
2023-06-26 15:15:57 +08:00
BoYanZh
f646d2a699
feat!: listen to both http & https ( #4536 )
...
Co-authored-by: Andy Hsu <i@nn.ci>
2023-06-11 18:17:37 +08:00
Mg Pig
881d6e271e
feat: add OIDC single sign-on ( #4496 )
...
close #3914
close #4315
2023-06-02 18:22:07 +08:00
Andy Hsu
b2f5757f8d
fix(copy): copy from driver that return `writer` ( close #4291 )
2023-05-26 21:57:43 +08:00
Noah Hsu
571bcf07b0
fix(alias): add api prefix for proxy url ( close #4392 )
2023-05-19 00:12:57 +08:00
XYUU
a3446720a2
fix: make `TlsInsecureSkipVerify` enable for all request ( #4386 )
2023-05-14 17:05:47 +08:00
Andy Hsu
5be79eb26e
feat: add `robots.txt` setting ( close #4303 )
2023-05-12 16:53:15 +08:00
hsluoyz
f8fb48fb32
fix: cannot connect to Casdoor SSO ( close #4266 in #4274 )
2023-05-01 15:32:34 +08:00
longxu0509
2bae8e129e
feat: add Casdoor single sign-on ( #4222 )
2023-04-26 16:01:40 +08:00
Andy Hsu
8711f2a1c5
feat(quark): shard request file ( close #4175 )
2023-04-17 15:33:38 +08:00
Andy Hsu
7f35aab071
revert(quark): remove preset range header
2023-04-17 14:39:21 +08:00
Andy Hsu
ecd167d2f9
feat(quark): add preset range header ( close #4166 )
2023-04-16 19:26:03 +08:00
varg1714
220fd30830
fix: the recursive subdirectory moving bug ( #4171 )
2023-04-16 16:08:12 +08:00
varg1714
46f9aefb04
feat: empty folder clear API [ckip ci] ( #4132 )
...
* 增加清理空文件夹API
* 修复嵌套文件夹删除Bug
Author: varg247 <varg247@gmail.com>
---------
Co-authored-by: varg247 <varg247@qq.com>
2023-04-13 15:39:21 +08:00
Andy Hsu
0f8a84f67e
perf(alias): disabled log on fs call ( close #4054 )
2023-04-07 00:02:07 +08:00
Andy Hsu
3b07c72f88
fix(proxy): ignore `Referer` if got redirect ( close #3996 )
2023-03-31 20:29:55 +08:00
Andy Hsu
86beadc0ed
fix: missed sign with enable `sign_all` ( close #3957 )
2023-03-26 16:19:01 +08:00
BaiYi
112363031a
feat: add fine-grained control for link signing ( #3924 )
...
* Determine whether the URL requires Sign
* Add File and Mem based KV
NOT TESTED: TokenKV Function
* Change Token KV func to common func.
Add File based KV func
* Remove KV, Remove Token
I found that the original Sign function is enough to complete the link signature, and only need to add simple configuration items to meet the requirements.
* Add IsStorageSigned func to judge if Signing is enabled in the storage settings.
It should be working now.
* Add a SIGN button to the management panel.
* Add enable_sign to the basic storage struct.
Can enable sign for every driver now.
Bug: When sign enabled, in download page, Copy link doesn't contain a sign.
(Not done yet)
* Fix a bug from commit 8f6c25f
.
Response of fsread function does not contain sign.
* Optimize code and follow advices.
- Add back public/dist/README.md
- Enable sign when DownProxyUrl is enabled
- Merge needSign() to isEncrypt() in fsread.go
* simplify code
---------
Co-authored-by: Andy Hsu <i@nn.ci>
2023-03-24 22:44:33 +08:00
XZB-1248
0eab31bdf5
fix(local): filename with whitespace issue ( #3928 )
...
* fix(local): filename whitespace problem
* fix(deps): remove deprecated package io/ioutil
---------
Co-authored-by: XZB <i@1248.ink>
2023-03-23 15:18:37 +08:00
zhengxiexie
c6af22b97e
feat: add thumbnail to `fs/get` api ( #3927 )
2023-03-23 13:59:39 +08:00
Brian
8c0defce09
feat(task): add clear succeeded and retry ( #3856 close #3776 )
2023-03-16 15:56:27 +08:00
Andy Hsu
d9795ff22f
feat(alias): support proxy and direct together
2023-03-14 13:46:27 +08:00
XZB-1248
c4108007cd
fix: spaces in filename will be replaced with plus sign ( #3841 )
...
Co-authored-by: XZB <i@1248.ink>
2023-03-14 12:27:42 +08:00
Brian
f3db23a41e
feat(qbittorrent): add offline download seed time ( #3842 close #3588 )
2023-03-14 12:13:23 +08:00
varg1714
1091e1b740
feat: file aggregation and regular rename api ( #3788 )
...
* 增加文件聚合接口,将给定文件夹下所有文件移动到目标文件夹。
* 增加文件正则重命名接口。
---------
Co-authored-by: varg247 <varg247@qq.com>
2023-03-10 19:01:49 +08:00
Andy Hsu
43de823058
fix: path `IsApply` check ( close #3784 )
2023-03-09 21:03:56 +08:00
Andy Hsu
ebcbb29a0f
feat: ping api ( close #3752 )
2023-03-07 19:05:52 +08:00
Andy Hsu
3d3f23ec9e
fix: upload check if disable sub folder ( close #3741 )
2023-03-07 14:13:39 +08:00
NewbieOrange
d484219c48
fix(security): compare auth token in constant time ( #3740 close #3739 )
2023-03-06 23:41:06 +08:00
Andy Hsu
12a095a1d6
fix: slice bounds out of range on `CanAccess` check
2023-03-05 15:29:53 +08:00
itsHenry
603681fbe6
feat: rebuild Single sign-on system ( #3649 close #3571 )
...
* rebuild single sign on system
* perf: use cache
* fix: codefactor check
---------
Co-authored-by: Andy Hsu <i@nn.ci>
2023-03-02 17:55:33 +08:00
Andy Hsu
ca9e739465
fix: hide apply to sub path without enable ( close #3661 )
2023-02-28 18:43:52 +08:00
Karbob
93dd768234
fix(webdav): `disabled` is not working in webdav ( #3659 )
...
A disabled user with webdav permission can use webdav normally, which is not allowed.
2023-02-28 18:26:13 +08:00
Andy Hsu
0d3146b51d
fix(webdav): disable put with empty path ( close #3569 )
2023-02-23 21:19:50 +08:00
Andy Hsu
28aee8c493
feat: add aliyundrive open driver ( #3437 )
...
close #3533
close #3521
close #3459
close #3375
* feat: add aliyundrive open driver
* feat: adapt alist api
* fix: trailing spaces
* feat(aliyundrive_open): video preview api
2023-02-23 20:45:57 +08:00
Andy Hsu
c08fdfc868
fix: missed assignment [skip ci]
2023-02-22 20:20:28 +08:00
Andy Hsu
8655e33e60
fix: incorrect api if not set site_url ( 6c2f348
)
2023-02-21 19:57:50 +08:00
Andy Hsu
50579fef84
fix: cancel api replace to avoid missing host
2023-02-21 19:45:09 +08:00
Andy Hsu
6c2f3486fc
fix!: reverse proxy to sub-directory ( #3483 )
...
from this commit, if you want reverse proxy to sub-directory like `alist` with `nginx`, you need config:
```nginx
location /alist/ {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
proxy_redirect off;
proxy_pass http://127.0.0.1:5244/alist/ ;
# the max size of file to upload
client_max_body_size 20000m;
}
```
2023-02-18 19:03:07 +08:00
Andy Hsu
ae2ee1821a
chore: change qBittorrent setting [skip ci]
2023-02-15 16:51:29 +08:00
Andy Hsu
805b1e4fa3
fix: different url encoding ( close #3423 )
2023-02-15 16:20:30 +08:00
kdxcxs
c28168c970
feat: support qbittorrent ( close #3087 in #3333 )
...
* feat(qbittorrent): authorization and logging in support
* feat(qbittorrent/client): support `AddFromLink`
* refactor(qbittorrent/client): check authorization when getting a new client
* feat(qbittorrent/client): support `GetInfo`
* test(qbittorrent/client): update test cases
* feat(qbittorrent): init qbittorrent client on bootstrap
* feat(qbittorrent): support setting webui url via gin
* feat(qbittorrent/client): support deleting
* feat(qbittorrent/client): parse `TorrentStatus` enum when unmarshalling json in `GetInfo()`
* feat(qbittorrent/client): support getting files by id
* feat(qbittorrent): support adding qbittorrent tasks via gin
* refactor(qbittorrent/client): return a `Client` interface in `New()` instead of `*client`
* refactor: task handle
* chore: fix typo
* chore: change path
---------
Co-authored-by: Andy Hsu <i@nn.ci>
2023-02-14 15:20:45 +08:00
Andy Hsu
43a8ed472b
fix: can't login by github after disable guest ( close #3314 )
2023-02-09 20:12:04 +08:00
Noah Hsu
a181b56ea7
feat: optional forward direct link params ( close #3123 )
2023-02-07 16:39:14 +08:00
Andy Hsu
3d0065bdcf
feat!: allow disable user ( close #3241 )
...
From this commit, the guest user will be disabled by default
2023-02-04 11:44:17 +08:00
Noah Hsu
ce4a295008
fix!: check https with `X-Forwarded-Proto`
...
not read old setting `api_url` and `base_path` from this commit
2023-01-19 12:16:42 +08:00
BoYanZh
be8a9c5f07
fix: mark progress as done after clear ( #3086 )
2023-01-18 09:39:32 +08:00
Wuxuan
530e74c70b
fix: avoid regular expression match current directory ( #3078 )
...
* fix: avoid regular expression match current directory
* fix: optimize and regexp exclude slash
Co-authored-by: wuxuan <refused@wuxuan.eu.org>
2023-01-17 21:54:25 +08:00
Noah Hsu
26fe0a7684
feat: customize index max depth
...
Because some driver's issue may cause infinite loop
2023-01-17 17:33:18 +08:00
itsHenry
83fe17c6ec
feat: support github login ( #2639 )
...
* Support Github Login
* improve according to codefactor
* fix due to last updates
* optimization
Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-27 22:11:22 +08:00
Noah Hsu
e118f4a3b9
feat: update index by `req.Paths`
2022-12-24 20:23:04 +08:00
BoYanZh
3af23f6792
feat: batch reload all storages ( close #2762 pr #2775 )
2022-12-21 19:21:18 +08:00
EzraRT
146619134d
feat: customize proxy ignore headers ( close #2763 pr #2766 )
...
* clean referer when use proxy
* feat: customize proxy ignore headers
Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-20 16:08:32 +08:00
foxxorcat
62a06fa0f9
feat: optimize file operation interface ( #2757 )
...
* feat: optimize file operation interface
* chore: fix typo
Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-20 15:02:40 +08:00
BoYanZh
e2bcca2fbd
feat: static files for embed viewers ( #2739 )
2022-12-19 13:34:06 +08:00
BoYanZh
4568af9542
feat: better static file Cache-Control ( #2751 )
2022-12-19 13:32:00 +08:00
foxxorcat
6024e8d832
refactor: split the db package hook and cache to the op package ( #2747 )
...
* refactor:separate the setting method from the db package to the op package and add the cache
* refactor:separate the meta method from the db package to the op package
* fix:setting not load database data
* refactor:separate the user method from the db package to the op package
* refactor:remove user JoinPath error
* fix:op package user cache
* refactor:fs package list method
* fix:tile virtual paths (close #2743 )
* Revert "refactor:remove user JoinPath error"
This reverts commit 4e20daaf9e
.
* clean path directly may lead to unknown behavior
* fix: The path of the meta passed in must be prefix of reqPath
* chore: rename all virtualPath to mountPath
* fix: `getStoragesByPath` and `GetStorageVirtualFilesByPath`
is_sub_path:
/a/b isn't subpath of /a/bc
* fix: don't save setting if hook error
Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-18 19:51:20 +08:00
foxxorcat
fb64f00640
refactor: obj name mapping and internal path processing ( #2733 )
...
* refactor:Prepare to remove the get interface
* feat:add obj Unwarp interface
* refactor:obj name mapping and program internal path processing
* chore: fix typo
* feat: unwrap get
* fix: no use op.Get to get parent id
* fix: set the path uniformly
Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-17 19:49:05 +08:00
BoYanZh
e58ca686e3
feat: cache static files ( #2715 )
2022-12-15 17:48:29 +08:00
BoYanZh
7947ff1ae4
feat: limit max connection count ( #2701 )
2022-12-14 10:33:58 +08:00
BoYanZh
a2e8e96c71
feat: respond static file on loading storages ( #2686 )
2022-12-12 20:17:58 +08:00
BoYanZh
6f1aeb47fd
feat: index enhancement ( close #2632 pr #2636 )
...
* feat: index paths as setting
* feat: clear index (#2632 )
* feat: check indexMQ more frequently
2022-12-09 10:02:13 +08:00
Noah Hsu
1f7c1b4f43
fix(cors): allow all methods ( close #2640 )
2022-12-08 11:35:21 +08:00
Noah Hsu
2dd30f2b77
feat(search): support with password
2022-12-07 10:45:02 +08:00
BoYanZh
6e23c8b4c0
feat: partial update index ( close #2593 close #2621 pr #2624 )
2022-12-07 10:41:52 +08:00
Noah Hsu
e65e8be59e
fix(search): missed base_path of user for parent ( close #2611 )
2022-12-06 17:28:39 +08:00
Noah Hsu
5b7aa9c1cf
feat: allow all cors headers ( close #2571 )
2022-12-05 20:05:20 +08:00
Noah Hsu
bf8b6f4c2c
feat: customize ignore paths of indexes
2022-12-05 16:45:11 +08:00
Noah Hsu
bd33c200dc
feat: optimize index build
2022-12-05 16:07:36 +08:00
BoYanZh
8c0dfe2f3d
feat: Search enhancement ( #2562 )
...
* feat: ignore AList storage on indexing
* fix: remove unused err in `walkFn`
* chore(ci): fix auto_lang trigger and run it
* feat: batch index
* feat: quit index & init index
* feat: set DocType for bleve data
* fix: build index cleanup check origin err
2022-12-05 13:28:39 +08:00
Ovear
0838feeb82
fix:introduce buffered response writer for webdav, fix status/error return failed. ( #2544 )
...
* fix: introduce buffered response writer for webdav, fix webdav status/error return failed.
* fix: bypass buffered writer for GET/HEAD/POST requests
2022-12-02 17:59:59 +08:00
浅秋枫影
ae791c8634
fix: hide check in `canAccess` ( #2556 )
...
修复 meta.Password 和 meta.Hide 都为空的情况下,会导致无权限访问
2022-12-02 17:44:29 +08:00
BoYanZh
4c5be5f07f
feat: only show `CanAccess` search results ( #2548 )
...
* feat: only show `CanAccess` search results
* have done in frontend
Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-02 10:09:39 +08:00
Noah Hsu
ff0bcfef8a
feat: optional sign all files
2022-11-30 22:10:07 +08:00
Noah Hsu
4980b71ba3
fix: add hide check to `canAccess` ( close #2532 )
2022-11-30 22:01:33 +08:00
Noah Hsu
b5bf5f4325
fix: check if the req path is relative path ( close #2531 )
2022-11-30 21:38:00 +08:00
SiHuaN
f9788ea7cf
feat(webdav): delete privacy header and optimize 302 ( #2534 )
...
* fix: delete set-cookie from sharepoint webdav response header
* fix: avoid two redirects when using webdav
* fix: return the correct Content-Type instead of just `application/octet-stream`
* feat: webdav backend localOnly -> proxyOnly
2022-11-30 20:52:33 +08:00
Noah Hsu
83644dab85
fix: mapping filename in `GetName`
...
some missed filename mapping
2022-11-30 20:46:54 +08:00
Noah Hsu
ddcba93eea
feat: multiple search indexes ( #2514 )
...
* refactor: abstract search interface
* wip: ~
* fix cycle import
* objs update hook
* wip: ~
* Delete search/none
* auto update index while cache changed
* db searcher
TODO: bleve init issue
cannot open index, metadata missing
* fix size type
why float64??
* fix typo
* fix nil pointer using
* api adapt ui
* bleve: fix clear & change struct
2022-11-28 13:45:25 +08:00
BoYanZh
330a767fd7
feat: build index & search with bleve ( close #1740 pr #2386 )
...
* feat: build index & search with bleve (#1740 )
* delete unused struct
Co-authored-by: Noah Hsu <i@nn.ci>
2022-11-24 11:46:47 +08:00
Noah Hsu
85e1350af8
fix: check password while upload ( close #2444 )
2022-11-22 16:14:01 +08:00
Noah Hsu
c09800790b
feat: custom filename char mapping
...
fixes #2447 #2446 #2440 #2409 #2006 #1979 #1507 #324 #691 #518 #430
2022-11-22 15:54:18 +08:00
BoYanZh
a02d9c8463
fix: check error type on file not found ( #2383 )
2022-11-18 01:30:37 +08:00
Noah Hsu
3b6d8987db
chore: add id to resp of create storage
2022-11-13 20:17:10 +08:00
Gerhard Tan
00de9bf16d
fix!: sign with the raw path instead of filename ( #2258 )
2022-11-11 16:24:25 +08:00
Noah Hsu
26a29f20c3
fix: missed encode path while use down proxy ( close #2208 )
2022-11-06 14:46:47 +08:00
Noah Hsu
18cd45d257
fix: disable cache for 302 redirect ( close #2216 )
2022-11-05 15:54:51 +08:00
Noah Hsu
e75f19e9c0
feat: add `Referrer-Policy` while redirect (pr #2160 )
2022-11-01 19:19:08 +08:00
BoYanZh
5f79d665d9
feat: add alist v3 driver ( close #1833 pr #2129 )
...
* feat: add alist v3 driver (close #1833 )
* chore: use generics
Co-authored-by: Noah Hsu <i@nn.ci>
2022-10-27 10:54:49 +08:00
BoYanZh
3e9c38697d
fix: use `utils.Log` during static file router init ( #2100 )
...
formerly the log is not in stderr
2022-10-24 23:33:57 +08:00
Noah Hsu
8c69260972
fix(webdav): set mime by ext if it's empty
2022-10-09 19:29:55 +08:00
Noah Hsu
dc73c2e97d
fix: custom token expires in doesn't work
2022-09-27 14:23:56 +08:00
Noah Hsu
9d9c79179b
feat: custom token expires in
2022-09-27 14:05:00 +08:00
Noah Hsu
b7479651e1
fix: incorrect base_path from site_url ( close #1830 )
2022-09-27 13:56:32 +08:00
Noah Hsu
7c32af4649
refactor!: move `api_url` and `base_path` to config file
2022-09-25 17:57:54 +08:00
Noah Hsu
0039dc18e1
fix: set cdn to basePath if cdn is empty
2022-09-22 17:11:45 +08:00
Noah Hsu
4d6ab53336
feat: add form upload api ( close #1693 #1709 )
2022-09-22 16:53:58 +08:00
Noah Hsu
c7f6684eed
chore: add `provider` to fs list resp
2022-09-22 16:04:10 +08:00
Noah Hsu
ca177cc3b9
fix: set default mimetype to empty string ( close #1710 )
2022-09-19 18:58:40 +08:00
Noah Hsu
5548ab62ac
fix: write does not take effect on the current dir ( close #1711 )
2022-09-19 13:35:37 +08:00
Noah Hsu
d6d82c3138
fix: page crashes if ipa name contains chinese ( close #1712 )
2022-09-19 13:33:23 +08:00
Noah Hsu
2185839236
chore: safe base64 decode ipa name
2022-09-18 20:17:24 +08:00
Noah Hsu
f80be96cf9
chore: replace sep `_` with `@` of ipa name
2022-09-18 16:53:39 +08:00
Noah Hsu
b74b55fa4a
feat: support custom `bundle-identifier` by filename
2022-09-17 21:33:39 +08:00
Noah Hsu
d436a6e676
fix: use base64 encode for ipa install
2022-09-17 17:06:08 +08:00
Noah Hsu
7ad3748a46
feat: update cache after remove instead of clear
2022-09-14 20:28:52 +08:00
Noah Hsu
66b2562d03
fix: allow force root while fetch dirs ( close #1671 )
2022-09-14 19:57:39 +08:00
Noah Hsu
54ae6dce0b
fix(fs/get): rawURL if use proxy ( close #1664 )
2022-09-13 20:02:57 +08:00
foxxorcat
6b5236f52e
feat: add baidu_photo driver
2022-09-12 17:10:02 +08:00
Noah Hsu
6aedd0f425
fix: trim slash suffix of sign
2022-09-11 19:39:24 +08:00
Noah Hsu
5ff0d850d7
feat(aliyundrive): add doc and video preview api
2022-09-11 19:12:54 +08:00
Noah Hsu
77a6aa487b
chore: cancel sign if no password
2022-09-11 14:14:14 +08:00
Noah Hsu
57bcd376b4
fix(webdav): incorrect href if base_path isn't root ( close #1629 )
2022-09-10 19:27:34 +08:00
Noah Hsu
5ad3849bb6
fix: if use down proxy url
2022-09-09 20:54:11 +08:00
Noah Hsu
362d48aa98
chore: replace main color
2022-09-08 22:21:52 +08:00