Commit graph

1261 commits

Author SHA1 Message Date
Michael Mayer 9c1518c5ef Backend: Remove unused duplicate filter from photo search
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 13:09:22 +02:00
Michael Mayer 812e550d76 Backend: Remove unused duplicate field from file entity
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 12:39:04 +02:00
Michael Mayer 66a71d7271 Backend: Reduce YAML backup log level
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 17:38:22 +02:00
Michael Mayer cc946b8ea8 Use int64 for file modification timestamps #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 16:09:55 +02:00
Michael Mayer 31647943d9 Add file timestamp map for faster indexing #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 12:47:12 +02:00
Michael Mayer ac0ce0aaf0 Backend: Index symlinks as folders
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 10:10:33 +02:00
Michael Mayer 13fe9af2fc Backend: Fix panorama detection #352
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 10:10:01 +02:00
Michael Mayer 716aa082d8 Metadata: Upgrade to go-exif v3
See https://github.com/dsoprea/go-exif/issues/43

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 09:41:37 +02:00
Michael Mayer 4c72df7610 Metadata: Upgrade go-exif v2
See https://github.com/dsoprea/go-exif/issues/43

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 09:28:31 +02:00
Michael Mayer 08d89bfb1d Metadata: Add *.heic parser and upgrade go-exif
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 20:32:45 +02:00
Michael Mayer 6847b8b5f9
Complete file browser with symlink support and full folder / file names (#412)
* Backend: Code clean-up

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* File Browser: Show complete, original file and folder names #408

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* File Browser: Follow symlinks #201 #403 #407

Warning: Following symlinks can make folder lists non-deterministic
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 15:43:23 +02:00
Michael Mayer 6c13b75562 Backend: Improve places logging #399
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 14:00:22 +02:00
Michael Mayer 0e5fe5eb43 Index image projection and add panorama filter
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 13:02:48 +02:00
Michael Mayer db5edb8e4d Add flag for 360° panoramas #352
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 20:59:33 +02:00
Michael Mayer b1b6e438f7 Backend: Improve log messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 11:28:54 +02:00
Michael Mayer 36919b69a0 Backend: Improve logging and enforcement of file size limit
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 10:13:54 +02:00
Michael Mayer f484dd004c Add Huawei P20 and P20 Pro #399
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 09:18:58 +02:00
Michael Mayer d6b848c0e9 Backend: Use common log prefix for places and their cells
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 08:31:36 +02:00
Michael Mayer 1ad34478de Increase default jpeg-size to 7680 x 4320 px #388
It's easier to decrease this when you've made a mistake than the other way.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 08:30:28 +02:00
Michael Mayer c0f10e2288 Use gettext for backend translations too
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 01:26:54 +02:00
Theresa Gresch a7380357d5 Backend: Add unit tests for internal/api 2020-07-14 18:08:48 +02:00
Theresa Gresch f47256b49f Backend: Add unit tests for internal/api 2020-07-14 18:08:48 +02:00
Michael Mayer b62af742ae Backend: Improve log messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 18:00:32 +02:00
Theresa Gresch c027e31304 Backend: Add unit tests for internal/api 2020-07-14 17:02:39 +02:00
Theresa Gresch 2db97ef168 Backend: Add unit tests for internal/api 2020-07-14 15:05:03 +02:00
Theresa Gresch e6cc639040 Backend: Add unit tests for internal/api 2020-07-14 14:46:27 +02:00
Michael Mayer 6090f875db Rename darktable-size to jpeg-size in config command output #388
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 14:41:38 +02:00
Michael Mayer f4e8b59c3b Rename PHOTOPRISM_CONVERT_SIZE to PHOTOPRISM_JPEG_SIZE #388
Naming more consistent with PHOTOPRISM_JPEG_QUALITY.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 14:30:19 +02:00
Theresa Gresch 75ad59cd17 Backend: Add unit tests for internal/api 2020-07-14 14:00:39 +02:00
Michael Mayer be94ff624c Edit photo type and sort by recently edited #394
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 12:42:31 +02:00
Michael Mayer 7a7c5aa190 UX: Reduce some levels to keep logs clean
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 12:39:56 +02:00
Theresa Gresch 4cf4c1973d Backend: Add unit tests for internal/api 2020-07-14 12:36:41 +02:00
Theresa Gresch a5987a0b33 Backend: Add unit tests for internal/api 2020-07-14 11:24:00 +02:00
Michael Mayer 8989c987a2 Unstack all types, except primary and sidecar files #394
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 11:00:49 +02:00
Theresa Gresch 0cb609fc87 Backend: Add unit tests for internal/api 2020-07-14 10:31:37 +02:00
Theresa Gresch f270b67632 Backend: Add unit tests for internal/config 2020-07-14 09:18:47 +02:00
Theresa Gresch 434bbd751c Backend: Add unit tests for internal/config 2020-07-14 09:18:24 +02:00
Theresa Gresch 832715f861 Backend: Improve Dsc regular expression and add test 2020-07-14 08:46:20 +02:00
Michael Mayer b1eac027f3 Remove database DSN and init call from test config
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 20:41:16 +02:00
Michael Mayer 161b36f8a4 Refactor config and worker tests for better performance
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 20:25:47 +02:00
Michael Mayer 70c6a68169 Use date from file name if no metadata was found #396
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 19:34:21 +02:00
Theresa Gresch 119784ef2c Backend: Add unit tests for internal/config 2020-07-13 19:25:27 +02:00
Michael Mayer faba5c3195 Backend: Fix worker tests
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 18:54:37 +02:00
Theresa Gresch 6504c7ae74 Backend: Add unit tests for internal/config 2020-07-13 18:48:56 +02:00
Michael Mayer 9f88bacb13 ACL: Add download permission for guests #398
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 18:20:05 +02:00
Michael Mayer a507f21740 Backend: Remove unused notes field from file entity
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 18:09:44 +02:00
Theresa Gresch 6cea8f0d3b Backend: Add unit tests for internal/config 2020-07-13 18:05:10 +02:00
Theresa Gresch c827df2c04 Backend: Add unit tests for internal/config 2020-07-13 17:37:43 +02:00
Michael Mayer 4d42222caf Rename "thumbnails" to "thumbs" and group api functions in one file
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 17:25:27 +02:00
Theresa Gresch dac846ba01 Backend: Add unit tests for internal/workers 2020-07-13 16:44:17 +02:00
Theresa Gresch 579da46f11 Backend: Add unit tests for internal/workers 2020-07-13 16:12:32 +02:00
Michael Mayer 212857318b UX: Rename group(ed) to stack(ed) #394
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:59:54 +02:00
Michael Mayer 4a9f992056 Thumbs: Use fit_4096 in favor of fit_3840 and add convert limit #362 #388
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:23:54 +02:00
Michael Mayer c14985095b Backend: Improve description string sanitation and auto add keywords
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:16:09 +02:00
Michael Mayer 849225e1ea Backend: Tweak db connection params and add stack to panic logs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:16:09 +02:00
Theresa Gresch 0b55a9278e Backend: Add unit tests for internal/query 2020-07-13 13:12:32 +02:00
Theresa Gresch 0144458664 Backend: Add unit tests for internal/query 2020-07-13 12:29:11 +02:00
Theresa Gresch f71dd8359f Backend: Add unit tests for internal/query 2020-07-13 11:40:49 +02:00
Theresa Gresch b21433479e Backend: Add unit tests for internal/query 2020-07-13 11:11:52 +02:00
Theresa Gresch f18ac917ab Backend: Add unit tests for internal/photoprism 2020-07-13 10:20:46 +02:00
Theresa Gresch 2866cb9215 Backend: Add unit tests for internal/photoprism 2020-07-13 10:19:50 +02:00
Michael Mayer 4fb263f8a4 Add location field to album metadata
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 16:36:39 +02:00
Theresa Gresch b6461dca36 Backend: Add unit tests for internal/entity 2020-07-12 15:41:30 +02:00
Theresa Gresch 7c1ef53be6 Backend: Add unit tests for internal/photoprism 2020-07-12 15:21:42 +02:00
Theresa Gresch edb9bba671 Backend: Add unit tests for internal/photoprism 2020-07-12 14:36:36 +02:00
Michael Mayer 5648c9616e Backend: Refactor location data tables and entities
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 08:27:05 +02:00
Michael Mayer 8c53049b4a Backend: Remove deprecated columns from geo and places
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 06:54:07 +02:00
Michael Mayer f08405d96c Backend: Fix location test after updating places server
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 06:14:22 +02:00
Michael Mayer 2bef7e7e9d Backend: Reduce location estimate time difference to 3 days
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 05:20:16 +02:00
Michael Mayer 8bf6a7b678 Backend: Fix location estimate query
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 05:10:00 +02:00
Michael Mayer 00e334657a Photo: Set defaults for PlaceID, GeoID, CameraID and LensID
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 04:48:17 +02:00
Michael Mayer e1c45c4d5f Rename "location" to "geo" to have a short, common prefix for geo data
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 23:43:29 +02:00
Michael Mayer 8fd381860a Backend: Refactor Google Photos metadata parsing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 20:47:52 +02:00
Michael Mayer 4d93749b06 Backend: Don't index sidecar files without photo
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 20:35:41 +02:00
Michael Mayer 99eaae0816 Backend: Import JSON metadata from Google Photos
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 16:46:29 +02:00
Michael Mayer 711522db68 Metadata: Add patterns to unwanted descriptions list
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 10:19:06 +02:00
Michael Mayer 2c6552ff73 Backend: Remove log in Photo.Create()
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 09:41:35 +02:00
Theresa Gresch d4935c2d13 Backend: Add unit tests for internal/entity 2020-07-10 17:35:22 +02:00
Theresa Gresch dcc43ed45d Backend: Add unit tests for internal/entity 2020-07-10 17:27:06 +02:00
Michael Mayer 174e6d53c9 Backend: Use FirstOrCreate() instead of Create() when adding new photos
Not perfect as metadata should rather be merged. Ideally some kind of mutex avoids database conflicts / locks / errors in the future. Right now, we're (intentionally) using the database as "mutex" so that the application code needs less complexity. This is especially problematic on powerful servers with many CPUs and index workers. See also issue #392.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-10 17:09:39 +02:00
Theresa Gresch dad0ba9d27 Backend: Add unit tests for internal/entity 2020-07-10 15:15:56 +02:00
Theresa Gresch d6c910c16b Backend: Add unit tests for internal/entity 2020-07-10 15:06:37 +02:00
Theresa Gresch 4196420dc7 Backend: Add unit tests for internal/entity 2020-07-10 13:57:51 +02:00
Theresa Gresch 560849ec52 Backend: Add unit tests for internal/entity 2020-07-10 11:44:51 +02:00
Theresa Gresch 1f9528562f Backend: Add unit tests for internal/entity 2020-07-10 10:58:06 +02:00
Theresa Gresch b480bbefcc Backend: Add unit tests for internal/entity 2020-07-10 10:29:56 +02:00
Michael Mayer 3f9454876d Concurrency fix for photo details #357
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-09 17:45:56 +02:00
Theresa Gresch f857198178 Backend: Add unit tests for internal/entity 2020-07-09 16:46:13 +02:00
Michael Mayer eeeff27ba5 Frontend: Update favicons
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-09 16:06:58 +02:00
Theresa Gresch 6212c8d63d Backend: Add unit tests for internal/entity 2020-07-09 15:37:30 +02:00
Theresa Gresch dd7b5b3a1b Backend: Add unit tests for internal/entity 2020-07-09 12:24:44 +02:00
Theresa Gresch 131e822a58 Backend: Add unit tests for internal/entity 2020-07-09 11:50:58 +02:00
Theresa Gresch 15d66fc304 Backend: Add unit tests for internal/entity 2020-07-09 11:27:44 +02:00
Theresa Gresch 006e833249 Backend: Fix unit test 2020-07-08 18:36:37 +02:00
Theresa Gresch 226eafec7b Backend: Add unit tests for internal/entity 2020-07-08 18:09:18 +02:00
Theresa Gresch e1487238e6 Backend: Add unit tests for internal/entity 2020-07-08 17:36:06 +02:00
Theresa Gresch 3e6c21a566 Backend: Add unit tests for internal/entity 2020-07-08 17:06:23 +02:00
Theresa Gresch 380aa0ba4b Backend: Add unit tests for internal/entity 2020-07-08 15:25:33 +02:00
Theresa Gresch a0d858e56f Backend: Add unit tests for internal/mutex 2020-07-08 13:18:19 +02:00
Theresa Gresch b3487fa3b3 Backend: Add unit tests for internal/meta 2020-07-08 10:13:11 +02:00