Commit graph

2554 commits

Author SHA1 Message Date
Michael Mayer ce86e5b6b4 People: Add link to related issue for subject covers
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-31 17:51:36 +02:00
Michael Mayer 78665e5869 Albums: Ignore private pictures only if feature is enabled #2570
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-31 17:42:57 +02:00
Michael Mayer e53bb33ce0 Search: Strip known file extensions from name search string #2667
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-31 16:22:28 +02:00
Michael Mayer a149711073 Metadata: Add test files aurora.jpg and aurora.jpg.json #2640
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-24 21:16:16 +02:00
Michael Mayer 367e0382cf Metadata: Improve Exiftool log messages #2640
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-24 20:14:46 +02:00
Michael Mayer 3403c50c48 Videos: Extract local time from DateTimeOriginal if possible #2640
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-24 17:50:22 +02:00
Michael Mayer c93639937b Metadata: Update XMP link in internal/meta/docs.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-12 20:21:51 +02:00
Michael Mayer fd27f88718 Commands: Update PDF link in show_options.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-10 19:40:28 +02:00
Michael Mayer 8aef5670f6 Commands: Update face options formatting in show_options.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-10 17:24:32 +02:00
Michael Mayer 104d0a80d7 Commands: Update PDF URLs in show_options.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-10 17:11:55 +02:00
Michael Mayer b072a18a17 Backend: Run "make fmt" with Go v1.19
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-10 16:09:21 +02:00
Michael Mayer 22c26547fe Commands: Update index_test.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-10 11:01:28 +02:00
Michael Mayer 194e7d1219 Places: Hide private pictures if "Private" is enabled in Settings #2570
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-02 09:26:42 +02:00
Michael Mayer eba9fd701b Index: Check if the originals folder is empty before indexing #2299
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-01 17:08:46 +02:00
Michael Mayer d8e0364dbb Search: Ignore public album filter if "Private" feat is disabled #2570
This needs to be very well tested and discussed, as these changes can
lead to private photos being accidentally published. Thank you!

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-01 15:57:19 +02:00
Michael Mayer 0e1222c830 Auth: Activate public mode via PHOTOPRISM_AUTH_MODE="public" #2565
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-30 12:34:57 +02:00
Michael Mayer 77aed0a08b Config: Update command help #2536
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-29 17:57:54 +02:00
Michael Mayer f14752f08c Purge: Improve tests and logs for RegenerateIndex() #2540
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-23 11:20:56 +02:00
Michael Mayer d81579071b Purge: Prevent SQL error when the photo ID of a file is missing #2540
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 19:47:16 +02:00
Michael Mayer cd9ec023d3 Cleanup: Remove cached JSON files and further improve logs #2521
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 19:18:42 +02:00
Michael Mayer 3b2f53da07 CI: Update test.sh script and config_filepaths_test.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 14:58:20 +02:00
Michael Mayer c7ad17b60c Metadata: Ignore unknown values when parsing timestamps #2510
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 12:38:25 +02:00
Michael Mayer d2086d5622 Exiftool: Improve metadata extraction and support FocalDistance #2513
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 11:46:53 +02:00
Michael Mayer 989f5c7917 Exiftool: Extract creation time from DateTimeCreated, if available #2513
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 10:21:36 +02:00
Luca Carlon c366d75774
Exif: Extract creation time from DateTimeCreated, if available #2513
Exiftool also seems to be able to extract the compound DateTimeCreated tag. Adding this tag increases the likelihood that you will get a valid date for a photo.
2022-07-22 10:13:18 +02:00
Michael Mayer 372ccb9a29 Config: Improve parameter comments in docker-compose.yml examples #2536
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 09:59:08 +02:00
Michael Mayer 4a4c322779 Cleanup: Refactor deleting related sidecar files #2521
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-21 20:23:00 +02:00
Michael Mayer ca74a76038 Zip: Improve download handler, tests and logging #2532
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-21 15:16:20 +02:00
Michael Mayer 58521190ba Zip: Fix potential filesystem permission and timing issues #2532
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-19 20:41:36 +02:00
Michael Mayer 0852e659c2 API: Improve logs and add /api/v1/connect endpoint for auth callbacks
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-19 16:58:43 +02:00
Michael Mayer a06646a181 Config: Refactor initialization
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-14 23:34:54 +02:00
Michael Mayer 49be9b873e Config: Propagate backend session status
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-14 22:35:42 +02:00
Michael Mayer 86ee51321c Folders: Show no error if fs.Dirs returns at least one result
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-14 17:48:58 +02:00
Michael Mayer 112e845a9c Entity Package: Update database schema documentation
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 16:11:05 +02:00
Michael Mayer 8cd97940da Entity Package: Update database schema documentation
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 16:05:27 +02:00
Michael Mayer 24cdd8f403 Entity Package: Update database schema documentation
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 15:31:53 +02:00
Michael Mayer 97700ae379 Entity Package: Update database schema documentation
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 15:16:47 +02:00
Michael Mayer d02a61d099 Entity Package: Add database schema documentation
see https://github.com/photoprism/photoprism/discussions/1768#discussioncomment-3125601

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 13:37:08 +02:00
Michael Mayer 20a82efda4 Auth: Shorten passwd mode option (password still works) #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-11 05:08:15 +02:00
Michael Mayer a73ee48213 Import/Convert: Improve symbolic link handling to support files #1049
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-07 19:54:22 +02:00
Michael Mayer 591a656270 Auth: Add PHOTOPRISM_AUTH_MODE config option #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-07 19:12:28 +02:00
Michael Mayer 5ec90a5fff Index: Skip redundant thumbs and support symbolic file links #1049 #1874
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-06 23:01:54 +02:00
Michael Mayer e739dd3e89 Auth: Add support for config and routing extensions (WIP) #782 #2478
Enables developers to extend the existing config and API. Initial proof
of concept and work in progress. Implementation details may change.
Feedback welcome!

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-05 23:13:34 +02:00
Michael Mayer b47d71d659 Config: Include disable-webdav and http-compression in CLI report #2476 2022-06-28 16:14:01 +02:00
Michael Mayer b09112058e Videos: Transcode supported formats if bitrate exceeds limit #2461
Implements Option (1) as described in the issue comments.
2022-06-26 19:47:12 +02:00
Michael Mayer c86c68aebe WebDAV: Add assertions to TestConfig_DisableWebDAV #2464 2022-06-25 03:48:05 +02:00
Michael Mayer 95936d0e84 WebDAV: Fully disable endpoint in public mode as it is not needed #2464 2022-06-25 03:44:09 +02:00
Michael Mayer 2125f1ae0a JPEG: Call Seek(0, 0) before opening image #2462 #2463
Found this here, although I'm really not sure how this should fix it:
- https://github.com/golang/go/issues/45902#issuecomment-1007953723

According to the tests I added, the error "unexpected EOF" remains!
At least this change shouldn't break anything either.... Help is more
than welcome if someone has more time to read through all the issue
comments.
2022-06-25 02:16:42 +02:00
Michael Mayer 519f0c49c9 Videos: Stream OGV, VP8, VP9, AV1, WebM, and HEVC if supported #2461 2022-06-24 06:59:22 +02:00
Andre Carrera 95c03afe28
Videos: Skip transcoding of HEVC / HVC1 if supported by the browser #440 #513 (#2379) 2022-06-24 01:30:48 +02:00
Michael Mayer b6d32f828b Search: Increase max number of results from 25k to 100k #2433 2022-06-21 11:50:53 +02:00
Michael Mayer a8db361268 Metadata: Use actual image width and height if available #2447 2022-06-20 11:41:41 +02:00
abgd1234 62120cd5e2
Videos: Fix incorrect NVIDIA hardware transcoding parameters #2442 #2449 2022-06-19 15:32:48 +02:00
Michael Mayer acc779f107 Albums: Restore deleted album when trying to create it again #2429 2022-06-16 18:59:03 +02:00
Michael Mayer 2f91813678 Metadata: Update list of unwanted descriptions 2022-06-16 09:36:34 +02:00
Michael Mayer 23fd9ae731 Colors: Use int16 instead of int8 to avoid (de)serialization issues 2022-06-16 06:30:59 +02:00
Michael Mayer 64e938b0d7 MariaDB: Add migrate test database and dialect_mysql_test.go #2398 2022-06-16 01:27:14 +02:00
Michael Mayer 78c12cabe0 WebDAV: Remove debug logs from pull request for #2391 #2392 2022-06-16 01:20:44 +02:00
chain710 8254c73558
WebDAV: Fix auto indexing/importing in a sub-directory on a shared domain #2391 #2392 2022-06-16 00:47:37 +02:00
Michael Mayer de11a9001f Migrations: Remove UPDATE SET SUBSTR() #2398 2022-06-09 20:28:18 +02:00
theresa 48de8bd0e0 Undo changes 2022-05-31 20:48:02 +02:00
theresa 226ff20b9b Tests: Adapt album tests to run on mobile 2022-05-31 20:36:44 +02:00
Michael Mayer 61dfd2cf50 UX: Update splash screen, button, and footer styles #2360 2022-05-27 18:15:18 +02:00
Michael Mayer 6aa08d64c2 Docs: Update membership info URL
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-05-26 19:33:41 +02:00
Michael Mayer 495c2afb01 Metadata: Remove debug log from data.go
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-05-26 15:04:58 +02:00
theresa dc2a261884 Tests: Add unit tests for new exiftool tags 2022-05-25 17:26:26 +02:00
theresa 3b3276b53e Metadata: Read additional exiftool tags Headline, By-line, CopyrightNotice and Caption-Abstract 2022-05-25 17:25:40 +02:00
Michael Mayer 8af69b81f2 Search: Omit files with unknown Chroma when using mono:true filter #2341 2022-05-21 18:12:08 +02:00
Michael Mayer b250a106b7 UX: Improve nav toolbar, scrollbar, and footer 2022-05-20 21:31:29 +02:00
Michael Mayer d6461e9de6 Auth: Update password length in config/global_flags.go #2339 2022-05-20 19:28:12 +02:00
Michael Mayer fb481ce2d8 CLI: Pass edition in build specific metadata 2022-05-20 19:27:33 +02:00
Michael Mayer 2121dd4307 Auth: Allow short initial passwords to avoid login problems #2339 2022-05-20 19:25:19 +02:00
Michael Mayer c865330876 CLI: Put build specific information in app metadata 2022-05-20 15:41:18 +02:00
Michael Mayer 2de1e338bd Logs: Prevent feedback loops by omitting repeated messages #2335
This also prevents debug and trace messages to be sent to the frontend.
2022-05-20 11:31:39 +02:00
Michael Mayer 53d814e62e Metadata: Prefer SubSecDateTimeOriginal and SubSecCreateDate #2320 2022-05-17 02:03:50 +02:00
Michael Mayer 9808c59282 WebDAV: Update file selection test #2293 2022-05-17 01:10:47 +02:00
Michael Mayer 54700766df Index: Truncate mod time to full seconds #2257 2022-05-17 01:04:26 +02:00
Michael Mayer 9e5b2178cf WebDAV: Omit RAW and Sidecar files if not sharing originals #2293 2022-05-17 00:57:07 +02:00
Michael Mayer 4f8e7c131a WebDAV: Upload of videos, RAWs, moments, months, and states #2293 2022-05-16 23:59:28 +02:00
Michael Mayer 16c30fffdf Backend: Run "make fmt-go" 2022-05-10 23:21:50 +02:00
Michael Mayer 750d4c5dcb CLI: Update "photoprism show" subcommand descriptions #2252 2022-05-10 20:47:45 +02:00
theresa d27e1fa52f Tests: Add to dos to run tests on mariadb 2022-05-03 15:05:45 +02:00
Michael Mayer cc31fdbe9f Videos: Fix bitrate typo in ffmpeg/convert.go #2228 2022-05-01 18:09:46 +02:00
Michael Mayer 7c688f5ea2 Frontend: Update translations and navigation title 2022-05-01 18:05:41 +02:00
Michael Mayer 877a5be8e9 Backend: Update Go package descriptions to improve generated docs
see https://pkg.go.dev/github.com/photoprism/photoprism
2022-04-25 10:45:09 +02:00
Michael Mayer e59041e93f Backend: Update Go package descriptions to improve generated docs
see https://pkg.go.dev/github.com/photoprism/photoprism
2022-04-25 09:53:55 +02:00
Michael Mayer 52d1bfef64 Makefile: Abort installation if directory already exists 2022-04-22 18:46:16 +02:00
Michael Mayer 74b2b03d94 Config: Improve Config.WakeupInterval() and add tests 2022-04-22 18:24:59 +02:00
Michael Mayer b545c92be9 Config: Prevent background worker from running more than once per minute 2022-04-22 18:06:45 +02:00
Michael Mayer 8638929d84 Config: Automatically generate command-flag docs #1017 #2195 #2227 #2250 2022-04-22 17:38:40 +02:00
theresa 0c345d4426 Tests: Update photo fixtures 2022-04-22 10:48:07 +02:00
theresa 16c2db9872 Tests: Correct portrait value for file fixtures 2022-04-22 10:20:15 +02:00
Michael Mayer d4662efd2a Migrations: Increment id of media_id and time_index updates #2265 2022-04-21 22:44:59 +02:00
Michael Mayer 2d41074e60 CLI: Define short names for additional command-line flags #2195
Adds short names for sidecar-path, backup-path, cache-path, import-path,
assets-path, and temp-path command-line flags.
2022-04-21 22:24:45 +02:00
Michael Mayer b595d5df7a Library: Display RAW previews and num of actual files in Originals #2273 2022-04-21 22:17:26 +02:00
Michael Mayer ce709957d6 Search: Update files.media_id and time_index on MariaDB and SQLite #2265 2022-04-21 21:56:53 +02:00
Michael Mayer 94b4173cf9 Search: Fix files.time_index generation on SQLite #2265 2022-04-21 19:47:16 +02:00
theresa b1216fd174 Tests: Add unit tests for search 2022-04-21 17:08:11 +02:00
theresa 1325932208 Report: Update notes for filters report 2022-04-21 16:23:54 +02:00
theresa 1d3284f1a9 Tests: Add unit tests for geo search 2022-04-21 15:27:59 +02:00
theresa 8b96c0cb2e Tests: Add unit tests for geo search 2022-04-21 13:53:15 +02:00
theresa 1f31723095 Tests: Add unit tests for search 2022-04-20 14:49:18 +02:00
theresa bc838fd92d Tests: Add unit tests for landscape and square search filters #2169 2022-04-20 14:48:55 +02:00
theresa c071111d7a Tests: Add gif fixture 2022-04-20 14:47:27 +02:00
Michael Mayer f33f06933f Index: Reduce log level for empty files from error to warning #2257 2022-04-18 17:21:31 +02:00
Michael Mayer b75b4a89a0 Index: Do not skip related files if the main file has no changes 2022-04-18 17:05:14 +02:00
Michael Mayer 27b84365da Convert: Set virtual home in cache path for external CLI commands #2262 2022-04-18 13:55:17 +02:00
theresa 2b7b43f8e5 Reports: Update search filter notes 2022-04-18 12:24:15 +02:00
Michael Mayer 18542bb94c CLI: Update show subcommand aliases and descriptions #2247 #2252 #2169 2022-04-17 15:33:40 +02:00
Michael Mayer 182bc09d87 CLI: Export reports as CSV/TSV for use in spreadsheets #2247 #2252 #2169 2022-04-17 12:30:33 +02:00
Michael Mayer 73be4df8f8 CLI/Docs: Improve photoprism show ... subcommands #2247 #2252 #2169 2022-04-16 19:52:53 +02:00
Michael Mayer e264489dfb Index: Improve log messages #2257 2022-04-16 13:50:35 +02:00
Michael Mayer 79d60a665f Index: Update command flag description #2257 2022-04-16 13:02:16 +02:00
Michael Mayer fefaada1f1 Index: Improve handling of archived photos, skip when possible #2257 2022-04-16 12:39:47 +02:00
Michael Mayer c580b8b55b Index: Fix database errors when rescanning large libraries #2257 2022-04-15 15:48:36 +02:00
Michael Mayer 92e6c4fe1e Download: Add Disabled, Originals, MediaRaw & MediaSidecar Flags #2234
Extends DownloadSettings with 4 additional options:
- Name: File name pattern for downloaded files (existed)
- Disabled: Disables downloads
- Originals: Only download files stored in "originals" folder
- MediaRaw: Include RAW image files
- MediaSidecar: Include metadata sidecar files (JSON, XMP, YAML)
2022-04-15 09:42:07 +02:00
theresa 443c0d789f Report: Add examples and notes for filter report 2022-04-14 17:00:55 +02:00
Michael Mayer 9fdd455924 WebDAV: Skip error reset if an account has not been created yet #1781 2022-04-14 14:26:45 +02:00
Michael Mayer ea3e7f179e UX: Improve Search Navigation and Components, add GIF Symbol #590 #1438 2022-04-14 14:13:54 +02:00
Michael Mayer bc62b38854 CLI: Code clean-up #2252 2022-04-14 12:30:47 +02:00
Michael Mayer e4999db92e Metadata: Add IPTC 2021.1 JSON/YAML Schemas incl. test files #1143 #2252 2022-04-14 12:18:05 +02:00
Michael Mayer 0096243240 Metadata: Report supported Exiftool, XMP, and Dublin Core tags #2252
Replaces the --no-wrap flag with --md in all "photoprism show ..."
subcommands, as this is easier to understand. See also #2247.
Unused code was opportunistically removed along the way.
2022-04-14 10:49:56 +02:00
Michael Mayer b3113e006f Search: Add vector, animated, svg, and gif filters #590 #2207 2022-04-14 08:39:52 +02:00
Michael Mayer 8f2155711f Config/CLI: Rename --config-file flag and improve command help #2250 2022-04-13 22:43:49 +02:00
Michael Mayer 82d61d1f93 File Types: Add experimental support for animated GIFs #590 #2207
Animated GIFs are transcoded to AVC because it is much smaller and
thus also suitable for long/large animations. In addition, this commit
adds support for more metadata fields such as frame rate, number of
frames, file capture timestamp (unix milliseconds), media type,
and software version. Support for SVG files can later be implemented in
a similar way.
2022-04-13 22:17:59 +02:00
Michael Mayer 7291c1d703 Search: Add landscape/square filters, and "show filters" command #2169 2022-04-13 09:48:51 +02:00
Michael Mayer 0427163295 People: Improve face matching, audit command, and logging #2182 2022-04-13 01:59:32 +02:00
Michael Mayer 04609d536d CLI: Show --admin-password flag at the top in command help #2195 #2248
Short name was changed from -a to --pw after the --auth flag was added.
2022-04-12 20:00:06 +02:00
Michael Mayer 915ff42133 Auth: Add --auth flag, increase min password length to 8 chars #98 #2248 2022-04-12 19:44:43 +02:00
Michael Mayer e42b870c09 CLI: Update and display the list of supported file formats #2247 2022-04-12 19:14:21 +02:00
Michael Mayer 68ba289d6c CLI: Add "photoprism show config/formats" subcommands
Replaces "photoprism config", which could only display
current configuration values. Codecs and file formats
have been refactored along the way.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-12 13:28:28 +02:00
Michael Mayer ad345805d9 UX: Skip RAW files by default when downloading albums #2234
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-11 11:53:21 +02:00
Michael Mayer f927c68c4f UX: Skip RAW files by default when clicking Download All #2234
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-10 17:02:09 +02:00
Michael Mayer b97e0e9c3b Albums: Prevent accidental creation of duplicate albums #2233
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-10 14:38:51 +02:00
Michael Mayer f6def1ca2b Exif: Replace if with switch in exif_parser.go #2231
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-10 12:02:55 +02:00
Michael Mayer e1996f80b3 Exif: Ignore IFD1 tags with existing IFD0 values #2231
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-09 19:56:38 +02:00
Michael Mayer 9085f729d2 CLI: Update thumb flag short names #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-09 14:38:56 +02:00
Michael Mayer d9cc0c5a83 CLI: Improve flag order, names, and descriptions #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-08 14:45:03 +02:00
Michael Mayer 30da260a11 Config: Refactor options and flags source files #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-08 14:22:07 +02:00
Michael Mayer 67fdecfbef CLI: Improve parameter aliases, order, and descriptions #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-07 11:56:44 +02:00
Michael Mayer b9ab3befe5 CLI: Add -a alias for --admin-password #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-07 01:23:15 +02:00
Michael Mayer 4ec7dbc90f Config: Add thumb-color option to set a standard color profile #1474
You can leave this blank to disable the conversion from Display P3
to sRGB. We will add more options at a later time.
2022-04-06 18:41:15 +02:00
Michael Mayer 9134c79f4c Config: Add option to skip all RAW images when indexing #2227 2022-04-06 17:46:41 +02:00
Michael Mayer b32d9bf30c Videos: Improve FFmpeg parameters for Intel QSV #2222
This commit also removes PHOTOPRISM_FFMPEG_BUFFERS as it is only
used/required by Video4Linux. 64 seems to be a good value, so we pass
it statically as for the other encoders. Examples have been updated.
2022-04-05 16:48:53 +02:00
Michael Mayer 4afd3f2ca9 Faces: Add Marker and File UID to API error logs #1438 #2201
The file query functions have been refactored and now return pointers.
2022-04-05 13:54:50 +02:00
Michael Mayer 7b508d6ad5 Index: Add tests and refactor database record updates #1438 2022-04-05 11:40:53 +02:00
Michael Mayer 9986986f8f People: Add info on the kind of face to improve matching #2182
This commit also fixes of other potential issues and improves logging.
2022-04-04 21:22:31 +02:00
Michael Mayer 161309e392 Convert: Show relative file name in error and log messages #2214 2022-04-04 14:24:32 +02:00
Michael Mayer c74fcbf282 People: Show real name instead of uid in logs #1438 #2182
Since caching all subject data proved too complex in the time available,
this implementation uses a simple key/value lookup table to cache
subject names and perform backward searches by uid.
2022-04-04 14:21:43 +02:00
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