Commit graph

2305 commits

Author SHA1 Message Date
theresa 1431d54af0 Tests: Refactor unit tests 2022-04-04 13:40:56 +02:00
theresa fe639e1ec6 Tests: Refactor unit tests 2022-04-04 11:41:04 +02:00
Michael Mayer 870ec6455e Revert "People: Add subject cache and show real name in logs #1438 #2182"
This reverts commit 686f6bc47c.
2022-04-04 08:54:03 +02:00
Michael Mayer cbcfa63f5f Labels: Fix saving categories in UpdateClassify()
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-04 00:57:13 +02:00
Michael Mayer 686f6bc47c People: Add subject cache and show real name in logs #1438 #2182 2022-04-04 00:02:08 +02:00
Michael Mayer 41b252d820 People: Add unofficial env variables to tweak face matching #1587 #2182
Adds two unofficial env variables so advanced users can experiment:

1. PHOTOPRISM_FACE_KIDS_DIST=0.6950 (range: 0.1-1.5, -1 to disable)
2. PHOTOPRISM_FACE_IGNORE_DIST=0.86 (range: 0.1-1.5, -1 to disable)
2022-04-03 17:25:37 +02:00
Michael Mayer 4c583f7f1d People: Disable updates if the worker does not run often enough #2182 2022-04-03 14:51:58 +02:00
Michael Mayer cb0f37c4af Index: Improve logging and files table update statements #1438 #2216 2022-04-03 12:43:21 +02:00
Michael Mayer 31e48d2139 UX: Add button to clear error log history in Library > Errors #1683
Note this is disabled in public mode (without authentication).
2022-04-03 12:37:43 +02:00
Michael Mayer 4be948c774 Convert: Add --force flag to replace JPEGs in the sidecar folder #2214 2022-04-03 12:26:07 +02:00
Michael Mayer 0838a71e6e Search: Rename source code file names in search package #1994
Improves readability and maintainability.
2022-04-03 09:45:05 +02:00
Michael Mayer 58a3d0b682 Config: Change "config-path" short name to "conf" in flags.go #2195 2022-04-02 22:44:04 +02:00
Michael Mayer aa8f99bb1a Search: Remove invalid tests from photos_filter_day_test.go #1994 2022-04-02 22:33:18 +02:00
Michael Mayer 85b8ed604b Search: Update photos_filter_name_test.go #1994 2022-04-02 22:28:54 +02:00
Michael Mayer a5f948d68a Search: Improve filter value parsing and update tests #1994 2022-04-02 22:23:38 +02:00
Theresa Gresch bf4005d9ef Tests: Add unit tests 2022-04-02 21:29:51 +02:00
Michael Mayer a2679a0ab9 Search: Update photos_filter_folder_test.go/filename_test.go #1994 2022-04-02 21:16:53 +02:00
Michael Mayer 89c24da88f Search: Fix "or like" condition and update filter tests #1994 2022-04-02 21:07:46 +02:00
Michael Mayer d77d36c977 Config: Update short names for common CLI parameters #2195 2022-04-02 20:34:29 +02:00
Michael Mayer 83209884f6 Config: Update short names for common CLI parameters #2195 2022-04-02 20:15:38 +02:00
Theresa Gresch bfcd0cfde7 Tests: Add unit tests 2022-04-02 20:14:25 +02:00
Theresa Gresch 1da106d4b7 Tests: Add fixtures 2022-04-02 20:13:56 +02:00
Michael Mayer 82f583d5e2 Purge: Regenerate file search index #1438 #2216 2022-04-02 19:26:28 +02:00
Michael Mayer 3328a78a04 SQLite: Improve database migration UPDATE statements #2216 2022-04-02 18:37:39 +02:00
Michael Mayer a1870067ca SQLite: Improve database migration UPDATE statements #2216 2022-04-02 18:33:57 +02:00
Michael Mayer a604e9a9c6 Index: Improve file size/resolution checks, add WebP support #1017 #1226
Renames the config flag to from "megapixel-limit" to "resolution-limit".
Adds native support for the WebP image file format.
2022-04-02 18:04:11 +02:00
Theresa Gresch 05a18bf6f2 Tests: Add unit tests 2022-04-02 18:00:44 +02:00
Theresa Gresch 18b76e74a4 Tests: Add unit tests 2022-04-02 16:53:00 +02:00
Theresa Gresch 968062d2fc Tests: Add fixtures 2022-04-02 16:52:38 +02:00
Theresa Gresch d7f4c46a9b Tests: Add unit tests 2022-04-02 13:31:04 +02:00
Theresa Gresch 946e617808 Tests: Add unit tests 2022-04-02 12:54:00 +02:00
Theresa Gresch 982330effe Tests: Refactor unit test 2022-04-02 11:24:46 +02:00
Michael Mayer 728cb2144c Config: Add option to limit originals size in megapixels #1017
Adds the `megapixel-limit` and `thumb-colorspace` config options.
2022-04-01 21:14:22 +02:00
Michael Mayer 0d5af690cc Migrations: Improve SQLite schema migration statements #2216 2022-04-01 16:49:26 +02:00
theresa b07ec6429a Tests: Add unit tests for search 2022-04-01 16:25:37 +02:00
theresa 5d16c5b530 Tests: Add fixtures 2022-04-01 16:24:45 +02:00
Michael Mayer a61470dfc7 Migrations: Implement "photoprism migrations ls" command #2216
Lists the status of migrations. Changed "migrate" to "migrations run".
2022-04-01 16:02:58 +02:00
Michael Mayer ca4c2ae199 Thumbnails: Rename QualityMedium to QualityDefault #2215
Seems easier to read and understand in context.
2022-04-01 13:30:20 +02:00
Michael Mayer 44efdd232a Config: Improve flag descriptions of JPEG and thumbnail parameters #2215 2022-04-01 13:25:25 +02:00
Michael Mayer 3698a860c6 CI: Improve stability when running unit tests in parallel
Adds SQLite memory namespaces to avoid potential conflicts.
2022-03-31 17:55:40 +02:00
Michael Mayer 16f3c004c9 UX: Refactor photo viewer API and frontend components #1307 #1438 2022-03-31 17:11:43 +02:00
theresa 83d9f7af32 Tests: Add unit tests for search 2022-03-31 16:56:32 +02:00
Michael Mayer 7c58f87c9f Performance: Reduce default JPEG quality from 92 to 85 #1438 2022-03-31 12:23:29 +02:00
Michael Mayer ab5f1629eb UX: Dynamic infinite-scroll-distance based on window height #1438
In addition, you can now change the batch size in settings.yml.
2022-03-31 10:22:01 +02:00
Michael Mayer 9eda12ac20 Performance: Refactor database schema and UI components #995 #1438 #1811 2022-03-30 20:36:25 +02:00
theresa 07abdd1054 Tests: Add unit tests for search 2022-03-30 18:21:43 +02:00
theresa 32c9186112 Tests: Add fixtures 2022-03-30 18:21:14 +02:00
theresa f0479b5163 Tests: Refactor unit tests 2022-03-30 11:44:25 +02:00
theresa 4798ebb9d8 Tests: Add unit tests for search 2022-03-30 11:43:59 +02:00
theresa f53e2bcdd6 Tests: Add fixtures 2022-03-30 11:43:30 +02:00
theresa f4e10822f3 Tests: Add unit tests for search 2022-03-29 17:25:11 +02:00
theresa 491390e348 Tests: Add unit tests for search form 2022-03-29 14:45:54 +02:00
theresa 9b84362099 Tests: Add unit tests 2022-03-29 14:01:22 +02:00
theresa 91177e5dfc Tests: Add search tests 2022-03-29 13:35:26 +02:00
theresa e63c2951cf Tests: Add unit tests 2022-03-29 13:08:24 +02:00
theresa 98eed14859 Tests: Add unit tests 2022-03-29 11:33:21 +02:00
theresa 8f122c6a54 Tests: Add test cases for AND and OR search 2022-03-29 11:23:04 +02:00
theresa d92f6d6e43 Tests: Refactor tests 2022-03-29 11:22:36 +02:00
theresa 4d7584a486 Tests: Add fixtures 2022-03-29 11:21:45 +02:00
Michael Mayer 686a8ab9b4 Search: Refactor photo search, fix test data and unit tests #1994 2022-03-29 00:21:50 +02:00
theresa 2150771b35 Tests: Add unit tests 2022-03-28 19:04:01 +02:00
Michael Mayer 58d7a535c6 Search: Update photos_filter_albums_test.go and file fixtures #1994 2022-03-28 18:43:35 +02:00
Michael Mayer 9e46a66f24 Search: Make special character escaping compatible with SQLite #1994 2022-03-28 17:36:59 +02:00
theresa e693fad8dc Tests: Add unit tests for camera and lens filter #2079 2022-03-28 16:25:40 +02:00
theresa e6e824c754 Tests: Refactor unit tests 2022-03-28 16:18:47 +02:00
Michael Mayer 8e9406153a make fmt-go 2022-03-28 16:16:18 +02:00
Michael Mayer 2f5d1fea50 Config: Refactor initSettings() and initHub()
This prevents redundant initialization when called repeatedly.
2022-03-28 16:13:41 +02:00
Michael Mayer 39b0530313 Metadata: Skip brute-force search if no Exif headers were found #2196 2022-03-28 15:57:29 +02:00
theresa 50ae86aeb5 Tests: Refactor unit tests 2022-03-28 14:42:13 +02:00
theresa 5ebf9fd583 Tests: Add unit tests for photo search 2022-03-28 14:25:39 +02:00
theresa 2912122747 Tests: Add album fixtures 2022-03-28 14:25:03 +02:00
Michael Mayer 72d6af6674 CLI: Add short names for common command parameters/flags #2195 2022-03-28 13:45:29 +02:00
Michael Mayer 9e640a7dc8 Search: Restore commented out test assertions #1994
Adds comment "Needs review, variable number of results." instead.
2022-03-28 12:14:05 +02:00
Theresa Gresch ca0c771826 Tests: Add unit tests for photo search 2022-03-28 11:28:42 +02:00
Theresa Gresch 3ff00c65c5 Tests: Add album fixtures 2022-03-28 11:21:24 +02:00
Michael Mayer 736b03f87f WebDAV: Improve update and reset of remote connection errors #1781 2022-03-27 21:37:11 +02:00
Michael Mayer aaaef5712e WebDAV: Prevent two-way file sync, default to download #1785 2022-03-27 12:49:23 +02:00
Michael Mayer e77a029f13 Search: Improve input sanitation and filter queries #1994 #2079 #2181 2022-03-25 18:01:34 +01:00
Michael Mayer 680686185f Metadata: Improve parsing of (incomplete) timestamp strings #625 #2133 2022-03-25 16:31:09 +01:00
Michael Mayer 0e7fec1cec Albums: Shorten title and slug to avoid "data too long" error #2181
Related GitHub Discussions:
 - https://github.com/photoprism/photoprism/discussions/2151
 - https://github.com/photoprism/photoprism/discussions/2179
2022-03-24 21:46:25 +01:00
Michael Mayer 9d110e8b80 Search: Improve album, albums, lens, and camera filters #1994 #2079
Camera and lens can now also be searched by name. Escaping and parsing
of albums has been improved so that albums whose names start with and/or
contain numbers will be found.
2022-03-24 18:30:59 +01:00
Michael Mayer fdf3d26277 Darktable: Disable CR3 until fully supported by Debian #445 #1632
Even with the latest Darktable 3.8.1 in Debian 12 "Bookworm" CR3 does
not seem to be supported. Probably this is due to an outdated or
incompatible library that needs to be updated by the Debian team first.
2022-03-23 13:31:23 +01:00
Michael Mayer 8c589e3649 Videos: Improve Nvidia hardware transcoding support #2125
- successfully tested with NVIDIA Quadro P620 and driver v470.103.01
- the host Linux kernel should run the same driver version Make sure to
- driver names in PHOTOPRISM_FFMPEG_ENCODER have been simplified
- share /dev/nvidia* as shown in our new docker-compose.yml example
2022-03-23 13:27:25 +01:00
Michael Mayer d0beab3f09 Config: Update expected flags in config_test.go and client_test.go 2022-03-16 17:41:50 +01:00
Michael Mayer 9301a4bb10 Config: Add test and demo flags 2022-03-16 17:34:09 +01:00
Michael Mayer 6bebf9043b Config: Add Docker env string to backend requests (develop, prod)
For easier debugging so that development environments can be identified.
2022-03-02 14:16:49 +01:00
Michael Mayer 3d9cb51641 Darktable: Set explicit cache and config path, log exact commands #2076 2022-03-02 12:20:02 +01:00
Michael Mayer 893810f82f Metadata: Read Zulu formatted timestamps from Exiftool JSON #2082 2022-02-28 19:12:54 +01:00
Michael Mayer c256664a1b WebDAV: Fix upload of complete albums #1376 2022-02-27 17:32:54 +01:00
Michael Mayer 00739770d7 Config: Improve database related flag descriptions 2022-02-23 15:59:13 +01:00
Michael Mayer e512dcef67 Tests: Don't trigger fatal error if cache path is not empty 2022-02-23 15:16:45 +01:00
Michael Mayer 9c1325f38e MariaDB: Connect via Unix domain socket if address starts with "/" 2022-02-23 15:08:28 +01:00
Michael Mayer 1f47a3e2b8 Docker: Update default site caption and fix demo template 2022-02-23 14:24:50 +01:00
Michael Mayer fec195333c Config: Improve faces options flag documentation #2062 2022-02-23 13:26:53 +01:00
Michael Mayer c853b3cd2d Backend: Shorten source file headers and normalize email addresses 2022-02-21 15:30:18 +01:00
Krassimir Valev 92b9423d9f
People: Remove unused face detector property (#2007) 2022-02-20 19:41:58 +01:00
Michael Mayer 6c4fc42415 API: Add Explicit Cache Header for Existing Thumbs #822 2022-02-20 17:36:51 +01:00
Michael Mayer 1d6ab8bd69 Logs: Reduce logs levels of cover and count updates 2022-02-19 19:59:28 +01:00
Michael Mayer 9cfb383867 Config: Improve error messages in TestConfig_ClientConfig 2022-02-19 17:20:48 +01:00
Michael Mayer b29ab34e9a Config: Update fs_test.go and fs/dirs.go after upgrading dev base image 2022-02-19 17:12:39 +01:00
Michael Mayer 2cd71ebb9d RAW: Remove .cr3 ext from darktable blacklist #445 #1632 2022-02-19 15:34:20 +01:00
Michael Mayer 4247066c1b Docker: Reduce image layers and improve build scripts 2022-02-19 15:32:52 +01:00
Michael Mayer 5add962ae0 RAW: Re-add CR3 to Darktable's blacklist (still causing errors) #445 2022-02-16 18:43:58 +01:00
Michael Mayer fdb4c0f9b6 RAW: Remove CR3 from Darktable's blacklist after upgrading to 3.8 #445 2022-02-16 18:11:28 +01:00
Michael Mayer 7c4241fbea Config: Add "imprint" option to display legal info in the footer #1990 2022-02-08 14:41:03 +01:00
Michael Mayer 070988d0f4 Edit Dialog: Improve display of metadata in the files tab #2017 2022-02-07 12:41:11 +01:00
Michael Mayer 8a0e72db66 Exif: Change EXIF to Exif in comments 2022-02-02 17:41:45 +01:00
Michael Mayer 62f5a5f5f0 Exif: Stop search if no header was found in PNG, TIFF, and HEIF 2022-02-02 17:39:16 +01:00
Michael Mayer 01274d6953 Backend: Update sponsor message in config.go 2022-01-29 13:43:47 +01:00
Michael Mayer 448a7e652e Config: Improve command parameter/flag descriptions 2022-01-27 09:17:23 +01:00
Michael Mayer 8b2e1732d6 People: Fix typo in faces optimize command #1957 2022-01-20 11:10:26 +01:00
Michael Mayer 28e3b37944 Config: Reduce RecommendedMem from 5 to 3 GB #1921
This allows servers with 4 GB to run more than one worker if needed.
2022-01-20 11:03:27 +01:00
Paulo Matos 0528a6541b
Places: Fix typo in "not found" log message (#1956)
Fixing simple typo : s/no/not
2022-01-19 16:44:50 +01:00
Michael Mayer eeee5973ad MariaDB: Alter albums.album_filter to VARBINARY(767) and add index #1953
Using a migration for testing on develop so nothing breaks (yet).
2022-01-18 17:34:28 +01:00
Michael Mayer 76c94a1f38 Frontend: Fix other assertions in TestClientManifestUri #1648
Actual name depends on the filesystem timestamp.
2022-01-18 12:48:02 +01:00
Michael Mayer 0caa6992e5 Frontend: Fix TestClientManifestUri #1648 2022-01-18 12:39:21 +01:00
Michael Mayer 9c0a47b8bc Videos: Stream directly without CDN and fix content header #1648 #1937 2022-01-18 12:28:27 +01:00
Michael Mayer 03457bdb75 Frontend: Refactor asset loading #1648 2022-01-18 12:26:33 +01:00
Michael Mayer 76ee491d1c Config: Update config option description for "database-server" 2022-01-17 19:05:27 +01:00
Michael Mayer 4d8292a9c3 Videos: Exclude API from gzip compression #1937 2022-01-17 18:57:09 +01:00
Michael Mayer 62ca7f1e1f Logout: Redirect to base URI instead of "/" #1901 2022-01-17 18:52:35 +01:00
Michael Mayer ff41a94051 Search: Fix query string substitutions and sanitation #1930 2022-01-17 16:07:31 +01:00
Michael Mayer 2e0c40332c Develop: Move MySQL 8 to docker-compose.mariadb.yml 2022-01-16 14:00:37 +01:00
Michael Mayer 6453d30906 Config: Improve CLI help and docker-compose.yml examples 2022-01-11 14:34:30 +01:00
Michael Mayer 1ee5c8b5f1 CLI: Improve --public and --read-only flag description
see https://github.com/photoprism/photoprism-docs/pull/100
2022-01-10 11:06:48 +01:00
Michael Mayer 006b5bb704 Code Quality: Add "gofmt -w -s pkg internal cmd" to "make fmt-go"
gofmt formats Go source code, where -s stands for "simplify"
2022-01-08 12:12:00 +01:00
Michael Mayer f5b7ef834e Index: Prevent two primary files in photo stacks #1823 2022-01-06 14:33:49 +01:00
Michael Mayer d03e28d88e Backups: Rename YAML "backup" files to just YAML files #1887 2022-01-06 13:21:42 +01:00
Michael Mayer 90f7afb1e7 Index: Improve related filename photo match query #1823 2022-01-06 10:09:07 +01:00
Michael Mayer 58cc89e7a4 Index: Find photo stack by filename & recover original names #1823 #1892 2022-01-06 09:55:41 +01:00
Michael Mayer c5301a681d Search: Do not exclude stopwords when "keywords:" filter is used #1859 2022-01-05 18:51:18 +01:00
Michael Mayer d67e325854 Config: Improve initialization, migrations, and debug logs 2022-01-05 18:15:39 +01:00
Michael Mayer 5462b1e69e Metadata: Reduce log level for missing Exif data from warn to info 2022-01-05 16:55:04 +01:00
Michael Mayer 39df843751 Search: Increase query result limit from 10000 to 25000 2022-01-05 16:48:32 +01:00
Michael Mayer dd9d7123d9 Index: Improve indexing and unstacking of related files #1823
This commit also adds initial HDR flag extraction from metadata.
2022-01-05 16:37:19 +01:00
Michael Mayer f6af9f7340 Thumbnails: Improve error log message when crop cannot be saved 2022-01-05 11:46:52 +01:00
Michael Mayer 58a5f94069 Backups: Rename album backups to exports and improve command help #1887 2022-01-05 11:40:44 +01:00
Michael Mayer 1cde378a76 Index: Improve stacking of related files #926 #1823 2022-01-03 17:29:43 +01:00
Michael Mayer 3515d9f266 Copyright: Update year in tests 2022-01-03 13:48:44 +01:00
Michael Mayer 8efe473d30 Copyright: Update year in source files and footer.vue 2022-01-03 13:46:52 +01:00
Michael Mayer e858a34f3e Search: Return empty result if keywords contain stopwords only #1859 2022-01-03 13:30:34 +01:00
Michael Mayer 5f229ecb53 Albums: Exclude private pictures from downloads #1836 2022-01-03 12:51:59 +01:00
Michael Mayer 7823d7faaa Metadata: Limit file projection & color_profile to 40 ASCII chars #1830 2022-01-03 12:09:00 +01:00
Simon Rettberg 35f45f4510
MySQL/MariaDB: Turn subquery-updates into joins for better performance (#1804)
MariaDB/MySQL traditionally have performance issues for queries of
type UPDATE ... WHERE xxx IN (SELECT ...)

Instead, use JOINs which are much faster.

Signed-off-by: Simon Rettberg <simon.rettberg@rz.uni-freiburg.de>
2022-01-03 11:12:08 +01:00
aniqueta 24577aa635
Videos: Apple Video Toolbox hardware acceleration for macOS (#1843) 2022-01-03 11:08:53 +01:00
Michael Mayer e8a1e85f14 Search: Improve query string normalization and sanitation #1814 #1820 2021-12-16 15:26:54 +01:00
Michael Mayer 2636255c95 Search: Add uid:... search filter #1820 2021-12-16 11:42:57 +01:00
Michael Mayer d6e2537b33 Form: Improve serialize warning log message #1814 2021-12-15 12:39:02 +01:00
Michael Mayer 2dedbb83dc Sanitize: Add name, query, state, and username filters #1814 2021-12-15 12:24:05 +01:00
Michael Mayer 0f0c0aaa0b API: Improve path and filename parameter sanitation #1814 2021-12-14 20:01:39 +01:00