Commit graph

2560 commits

Author SHA1 Message Date
Michael Mayer
884dea17de Security: Use individual preview tokens for each user account #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-13 22:11:02 +02:00
Michael Mayer
38722e72c8 Config: Use mutex when resolving the path of external binaries
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-12 18:39:30 +02:00
Michael Mayer
0297006876 API: Refactor authentication tests to use conf.SetAuthMode() #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-12 18:11:20 +02:00
Michael Mayer
952f7e1793 API: Skip authentication if app is running in public mode #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-12 16:34:48 +02:00
Michael Mayer
265fdd0dd3 Security: Refactor certs path config #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-12 15:33:35 +02:00
Michael Mayer
d198a1d23f Security: Improve rate limit and HTTP proxy configuration #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-12 14:57:33 +02:00
Michael Mayer
6abbc39017 Security: Add http rate limiter and auto tls mode #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-11 22:44:11 +02:00
Michael Mayer
20904041f9 Session: Remove unnecessary go-cache package from imports
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-11 10:57:04 +02:00
Michael Mayer
3c4cc40882 Security: Refactor log levels and events #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-10 16:34:07 +02:00
Michael Mayer
dc39fc44d2 Security: Add "header" package for setting common response headers #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-09 17:16:49 +02:00
Michael Mayer
075756c421 WebDAV: Refactor basic authentication handler #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-08 23:34:43 +02:00
Michael Mayer
d815123bfb CLI: Add "photoprism users reset" command #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-08 20:48:58 +02:00
Michael Mayer
3512c7be4f Reactions: Ignore error, should a test fixture already exist
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-08 19:13:39 +02:00
Michael Mayer
ff8bc9f5da MariaDB: Show error if an unsupported server version is used #2381
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-08 18:50:49 +02:00
Michael Mayer
3d3b1f10c4 Sharing: Allow to search for photos in shared albums
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-07 21:35:01 +02:00
Michael Mayer
945d602e17 Places: Refactor backend service request
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-07 19:32:08 +02:00
Michael Mayer
929e5ebe50 CLI: Migrate database before adding or deleting users
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-07 19:30:30 +02:00
Michael Mayer
1b89915cc4 HEIF/AVIF/DNG: Improve conversion to JPEG #1246 #2726 #2291 #2593
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-07 16:45:49 +02:00
Michael Mayer
dc33ff690a HEIF: Remove support for deprecated convert script #2726
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-06 22:11:41 +02:00
Michael Mayer
07816bfb77 HEIF: Use heif-convert.sh as wrapper if exists #2726
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-06 21:55:31 +02:00
Michael Mayer
16268216bd Places: Add support for alternate geocoding request retry URLs
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-06 18:17:19 +02:00
Michael Mayer
c7be7c43eb CLI: Refactor tests and config initialization
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-04 12:27:40 +02:00
Michael Mayer
1473df3c58 Search: Hide results needing review if the user is not an admin #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-04 02:57:15 +02:00
Michael Mayer
693108fd53 Sharing: Refactor UserShare entity #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-04 00:54:39 +02:00
Michael Mayer
b390e34b78 Sessions: Clean up auth_session_cache.go #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-03 23:46:20 +02:00
Michael Mayer
05cdcbaf9d Sessions: Cache pointers to improve performance #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-03 23:39:36 +02:00
Michael Mayer
bac6ae0cbd Sessions: Add max age and timeout config options #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-03 22:59:29 +02:00
Michael Mayer
4c516cac38 Auth: Rename database tables and delete temporary tables #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-02 22:09:02 +02:00
Michael Mayer
6e74f16a77 Auth: Open album share links in the regular user interface #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-02 11:38:30 +02:00
Michael Mayer
65e9a58979 Backend: Refactor gorm.DB connection provider in entity package
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-01 15:17:04 +02:00
Michael Mayer
4f425790ab Auth: Remember ownership of uploaded photos and albums #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-30 19:15:10 +02:00
Michael Mayer
323d495840 Auth: Apply user rights and permissions in the search API #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-30 00:42:19 +02:00
Michael Mayer
47929566db Index: Refactor NewMediaFile() so it never returns nil #1049 #2683
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-28 14:00:17 +02:00
Rene Hollander
add115c7e4 Skip resolving paths for symlinks during index if the path isn't a symlink.
godirwalk can inform us if the file currently processed is a symlink or not (which is gathered without extra stat syscalls).Using this information to skip resolving the symlink to the absolute path (which is necessary to get the stat info of the image file instead of the symlink to it) saves on a lot of syscalls. Resolve causes a Stat syscall for each level in the path, which is very expensive and slows down scanning.
2022-09-28 11:40:02 +02:00
blue-kaleidoscope
c2e1989dad Added VAAPI encoder support 2022-09-28 10:03:53 +02:00
Michael Mayer
f5a8c5a45d Auth: Session and ACL enhancements #98 #1746
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-28 09:01:17 +02:00
Michael Mayer
810914a578 Config: Increase default resolution limit from 100 to 150 MP #2677
By default, a limit is set to avoid support-intensive crashes of our
Community Edition and to protect the hosted service from
denial-of-service attacks.

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-18 14:06:13 +02:00
Michael Mayer
a7872a684b SQLite: Set _busy_timeout default to reduce locking issues #2707
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-15 07:29:09 +02:00
Michael Mayer
0cb9cbc56a Import: Refactor indexing of related original filenames #2623
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-15 03:03:49 +02:00
natiz
90567072cd
Import: Save the original filenames of related files (#2623) 2022-09-15 02:50:58 +02:00
Michael Mayer
278ebd1c62 Images: Add AV1 Image File Format (AVIF) support #2706
AVIF can be converted

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-15 00:43:08 +02:00
Michael Mayer
d3d7912b4c Index: Improve CLI command test assertions
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-14 22:14:17 +02:00
Michael Mayer
7f70772d86 Performance: Don't save all albums when the background worker runs #2705
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-14 22:00:20 +02:00
Michael Mayer
9f81151475 RAW: Remove CR3 from Darktable file extension blacklist #2703
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-14 21:04:05 +02:00
Michael Mayer
3e86a88afb Index: Update index_test.go #2702
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-14 11:04:05 +02:00
Michael Mayer
7308379fc4 Index: Delay check for raw files to improve performance #2702
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-14 10:33:54 +02:00
theresa
3ebd2119d7 Search: Add city and state search filter to geo search 2022-09-05 15:35:02 +02:00
theresa
bce509c88b Tests: Add more tests for city search filter 2022-09-05 14:23:51 +02:00
Theresa Gresch
fe5db3ed9d
Merge pull request #2670 from kvalev/kvv-search-by-city
Search photos by city
2022-09-05 11:14:43 +02:00
Michael Mayer
5e7ff6b1b2 Auth: Add unique index to user_slug in auth_users table #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-02 22:55:57 +02:00
Michael Mayer
85561547cc Auth: Add "PHOTOPRISM_ADMIN_USER" option and refactor user table #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-02 21:30:50 +02:00
Michael Mayer
86086753c2 Server: Improve initialization and logging of extensions
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-02 19:09:25 +02:00
Michael Mayer
41fdba3cf7 Auth: Update ACL user roles #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-02 19:06:32 +02:00
Michael Mayer
6da0d4244d Config: Update unit tests after changing develop base image
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-02 16:19:18 +02:00
Krassimir Valev
3badce1bc8 Photos: Search by city 2022-09-01 09:20:40 +03:00
Michael Mayer
fb921a4932 CLI: Generate thumbs for files in the sidecar folder #2669
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-31 18:53:04 +02:00
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