Commit graph

343 commits

Author SHA1 Message Date
327b87a18a perf: correct ffmpeg params for efficient video previews
-ss before -i ("When used as an output option (before an output url), decodes but discards input until the timestamps reach position. ")
discard all non-keyframes
turn off accurate seek
2022-09-11 20:33:41 +02:00
f98f3b2fdb perf: lower seek time for thumbnails 2022-09-11 16:18:08 +02:00
160cf59d4a perf: first check for files in /raw/ 2022-09-11 13:03:07 +02:00
5f9eb24c76 chore: allow CORS from localhost 2022-09-08 21:41:18 +02:00
e0a9ee1c96 fix: limit thumbnail generation to 1 thread per image 2022-09-07 22:28:14 +02:00
91596b284d fix: only get() connection in UpEndConnection when necessary
makes the interface actually respond during rescans, helps improve throughput in general
2022-09-05 21:51:44 +02:00
bc77c993a9 hotfix: disable transactions for now 2022-08-07 14:16:07 +02:00
600918a27e chore: log failed path updates immediately 2022-08-07 12:35:49 +02:00
3f6d239686 chore: switch from log to tracing 2022-08-07 12:13:12 +02:00
41d0e55ca7 fix: add global locks to db, fix sqlite errors (?) 2022-07-31 22:53:24 +02:00
38e6d6b6df chore: add logging to fs tests 2022-07-31 22:53:18 +02:00
afbd3b97ef fix: update project url, fix tests
:)
2022-07-31 22:53:12 +02:00
6fdc3e2f48
add join queries to the language (fixes #3) 2022-04-16 00:55:09 +02:00
459eede174
...
reformat
2022-04-15 22:43:40 +02:00
eec4f96293
reorganize query code in preparation for lang upgrade 2022-04-15 20:35:26 +02:00
3b82b0ee69
remove play button overlay on video thumbnails 2022-04-09 21:37:10 +02:00
ab345bf50b
replace ??? with actual errors 2022-04-02 22:12:51 +02:00
1a05157a9d
fix and/or expressions generating incorrect sql 2022-03-30 12:29:52 +02:00
8c60a617a2
query lang - addresses are denoted by @, values need not match db deserialization format
e.g.` (matches @address ? ?)`, and `(matches ? ? "foo")` instead of "Sfoo"
2022-03-30 12:29:52 +02:00
fd72034571
code cosmetics, lints
useless format! in tests
use raw strings where appropriate
2022-03-30 12:29:51 +02:00
39272a5cb0
add (failing) query lang tests 2022-03-30 12:29:28 +02:00
78b6bac7aa
rudimentary test for db queries 2022-03-28 17:34:11 +02:00
5bb36e9ec6 rudimentary optional authentication for mutating operations 2022-03-24 11:12:59 +01:00
9ee905b3a8 ignore "Undefined" EXIF values during extraction 2022-03-23 12:43:02 +01:00
0213b3c9c1 limit video thumbnails to max 300s into a video file
(didn't realize the majority of the time is spent seeking!)
2022-03-21 00:04:48 +01:00
5051ac25c6 decode valueless entires as NaN
since NaN == NULL in SQLite, apparently
2022-03-20 23:44:10 +01:00
1b823bcce4
respect exif image orientation in previews 2022-03-16 11:30:06 +01:00
c9a79492de
first iteration of EXIF data extraction 2022-03-15 17:20:50 +01:00
b9ea04109e
add explicit autocheckpoint, change db option traces! to debugs! 2022-03-14 14:02:03 +01:00
376d929232
return attribute labels in /all/attributes endpoint 2022-03-02 22:39:05 +01:00
ef3a130855
refactor Jobs and their handling, really fix infinitely hanging jobs 2022-03-02 22:27:51 +01:00
1c316427ab
extract all metadata on vault rescan 2022-03-02 22:27:07 +01:00
1aa779e816
also add attribute labels on id3 extraction 2022-03-02 22:24:17 +01:00
4f36bff549
id3 improvements - extract year/bpm as numbers; fix id3 extract job name; exit early if file isn't audio
also add EntryValue::guess_from
2022-03-02 08:13:35 +01:00
82c7bfcb64
run (all) extractors for manually added blobs and addresses 2022-02-28 22:43:23 +01:00
506727356c
add ID3 metadata extractor 2022-02-28 22:34:38 +01:00
920e67a283
add an "is_needed" check for extractors; add tests for web extractor 2022-02-28 22:34:38 +01:00
27cc6eb31c
refactor - remove unnecessary async fns, add helper fn for running blocking tasks in background
also impl Error for JobInProgressError
2022-02-28 22:34:31 +01:00
ce50f5ad80
implement Drop for Job - prevent jobs from hanging in progress forever 2022-02-28 17:00:27 +01:00
d03998915c
add web::block to all db actions in route handlers 2022-02-27 15:03:15 +01:00
0e1b1765ae
skip over paths which failed to canonicalize 2022-02-23 15:56:22 +01:00
9541c397e3 better handling of invalid paths in store view 2022-02-21 22:25:48 +01:00
583fea153c add store info display // all blob listing 2022-02-21 22:01:31 +01:00
4e54c19ee5
disallow empty attributes in entries 2022-02-19 17:30:55 +01:00
5a393b4ec0
jobs can also have indeterminate progress 2022-02-19 16:31:51 +01:00
dc808aab22
explicit NULL entryvalue 2022-02-19 14:59:21 +01:00
6820e9a174
create extractor trait 2022-02-15 13:32:46 +01:00
add8371776
send cache-control (immutable, 31) for /raw/{hash} 2022-02-15 01:21:04 +01:00
0ef7ea5b3a
also impl From<f64> and From<Address> 2022-02-13 12:56:29 +01:00
b417dad0ec
impl From<AsRef<str>> for EntryValue, replace where appropriate 2022-02-13 12:56:29 +01:00
e81d520993
fix empty string value handling 2022-02-13 12:56:29 +01:00
75f9282ea2
don't label newly created uuids 2022-02-12 22:22:08 +01:00
a74e86e70d
allow uuid generation by server 2022-02-12 21:48:29 +01:00
ebf48c0e5f
allow inserting multiple entries (in transaction) in /api/obj 2022-02-12 14:55:54 +01:00
038e4fd7d2
move InEntry/InAddress to routes 2022-02-12 14:51:28 +01:00
471c60c19e
fix entry PUTting 2022-02-12 13:56:41 +01:00
689350aed5
only return in progress jobs by default on /api/jobs 2022-02-10 15:20:15 +01:00
7c38406b16
thumbnail creation as jobs 2022-02-10 15:11:38 +01:00
0dd5616e9c
allow overriding mime for thumbs 2022-02-10 14:58:00 +01:00
423e039d0a
forgotten debug prints 2022-02-10 11:39:04 +01:00
674663028d
add metadata to urls on insert 2022-02-10 11:38:45 +01:00
bbc871ccf6
typeless jobs 2022-02-10 10:47:10 +01:00
5ad64a6591
make a PUT to /api/obj also insert bare addresses and prepare metadata; bunch of tidying up
/api/obj returns [entry_addr, entity_addr]
ADDED_ATTR is a const
impl TryInto<Address > for InAddress
2022-02-09 20:37:20 +01:00
b5a90ce57c
support denoting entry entities in decomposed format (adding URLs) 2022-02-07 21:59:30 +01:00
686020e579
include decoded address in /api/obj 2022-02-07 20:54:14 +01:00
25bc14e3b4
allow searching in entities (URLs, attrs) 2022-02-07 18:33:57 +01:00
0f2fa6836f
refactor TryFrom<Entry, ImmutableEntry> 2022-02-07 18:27:02 +01:00
2c36373d85
fix redirect to "/" in /api/thumb 2022-02-07 10:25:38 +01:00
34e737d457
"application/x-riff" == WAV audio 2022-02-07 00:01:38 +01:00
a83149e746
switch from GET /api/obj?query endpoint to POST /api/query endpoint
also switch from useSWR shim taking `() => SWRKey` as param
2022-02-06 22:25:33 +01:00
6b9e534270
ALIAS points to LBL, not directly to value (!) 2022-02-06 12:54:51 +01:00
2f664ce820
clear lexpr options just to be safe (no keywords) 2022-02-04 23:01:44 +01:00
172404a2d9
logging, formatting in previews/mod.rs 2022-02-04 20:34:25 +01:00
8d51529f38
retireve_file takes reference 2022-02-04 20:33:07 +01:00
2337cd54c1
only run full rescan on new db, not init scan 2022-02-04 20:32:10 +01:00
f8a0410282
hide desktop features when desktop is disabled 2022-02-04 12:11:00 +01:00
b215cf8e0d
cosmetics 2022-02-04 12:11:00 +01:00
20a6fa0de7
add audio waveform thumbnails 2022-02-03 18:40:19 +01:00
7540b31ab8
add play button to video thumbnails 2022-02-03 18:13:09 +01:00
b80d547689
static dirs are handled for both debug and release 2022-02-03 17:48:24 +01:00
97198848c4
enable mkv previews 2022-02-03 16:54:39 +01:00
6b70d706fa
change video preview format to webp 2022-02-03 16:54:39 +01:00
faed70fe03
content disposition tweaks (attachment by default, ui target=_blank) 2022-02-03 16:54:37 +01:00
2173ca5b51
add a --clean param 2022-02-03 16:54:36 +01:00
dc72b0a34c
only insert ADDED on first add 2022-02-03 10:12:26 +01:00
3cd3df27c0
"ADDED" entry for files 2022-02-03 09:54:51 +01:00
a5912ae3d2
move preview generation off the route thread 2022-02-03 00:11:35 +01:00
f20928ddfe
rustfmt 2022-02-02 17:13:23 +01:00
6aa804584d
add (some) lang tests, implement "in" logic 2022-02-02 17:13:11 +01:00
cb22756a47
separate endpoint for attr overwrites, implement AttributeUpdate 2022-02-02 00:45:05 +01:00
9c940e7c23 add explicit quick_check/disable_synchronous flags, ?full param to rescan endpoint 2022-01-31 17:26:31 +01:00
466f870d6f add Meta queries, check db version on start 2022-01-31 15:57:35 +01:00
768a608b02 add "built" crate 2022-01-31 15:19:48 +01:00
34847f3321
fix search ("contains" query, UpObject params bug) 2022-01-30 16:20:02 +01:00
fa5626af4f
allow only one job of a type to be in progress at once 2022-01-30 16:00:29 +01:00
3a64adc935
containers -> groups 2022-01-28 23:32:13 +01:00
8c8d58847a
separate value_string and value_number columns
to be able to utilize SQL queries better for ranges, comparisons, etc.
2022-01-28 18:17:14 +01:00
8b9947c2e4
fix no-default-features build 2022-01-28 14:21:07 +01:00
ddfe103e7a
add LBLs to base types 2022-01-27 17:42:59 +01:00
19b25666c6
show PDFs in BlobPreview, add ?inline query param to /raw/ 2022-01-27 15:55:48 +01:00