Commit graph

2460 commits

Author SHA1 Message Date
Michael Mayer
8882cf0c61 People: Tweak face detection thresholds #22 2021-09-21 11:03:07 +02:00
Michael Mayer
0050478be3 People: Tweak face detection thresholds #22 2021-09-21 09:51:48 +02:00
Michael Mayer
ebe22d7bb7 People: Improve marker entity logs #22 2021-09-21 09:23:17 +02:00
Michael Mayer
11f7e76ca3 People: Remove orphan face crop thumbnails #22 2021-09-21 08:56:35 +02:00
Michael Mayer
4df0e4167a People: Upgrade dev database table names #22 2021-09-20 23:37:27 +02:00
Michael Mayer
070efcbc66 Search: Improve "year", "month", and "day" filters 2021-09-20 23:32:35 +02:00
Michael Mayer
a66de2e822 Search: Improve "album" and "albums" filter 2021-09-20 22:58:11 +02:00
Michael Mayer
b5964ffd38 Search: Improve "keywords" filter 2021-09-20 22:39:29 +02:00
Michael Mayer
534517a3d7 People: Improve face detection #22 2021-09-20 22:19:54 +02:00
Michael Mayer
8e5a97ed4a People: Simplify thumbnail API for face crops #22 2021-09-20 16:17:10 +02:00
theresa
895d41cd61 People: Add unit tests #22 2021-09-20 14:05:44 +02:00
theresa
9e786a42f0 People: Add unit tests #22 2021-09-20 13:12:28 +02:00
Michael Mayer
c96d775432 People: Remove experimental feature flag check #22 2021-09-20 12:51:01 +02:00
Michael Mayer
04d2cfa650 People: Use slug as search filter #22 2021-09-20 12:36:59 +02:00
Michael Mayer
94b8a6ad65 People: Improve search for names in photos #22 2021-09-20 09:57:48 +02:00
theresa
68dbcf4039 People: Add unit test #22 2021-09-20 09:31:30 +02:00
Michael Mayer
caa22742aa People: Improve search on overview page #22 2021-09-19 17:48:48 +02:00
Michael Mayer
6c555457a0 People: Improve face thumbnail selection #22 2021-09-19 15:59:29 +02:00
Michael Mayer
1f92f294dd People: Normalize names #22 2021-09-19 13:35:44 +02:00
Michael Mayer
f7cc61edbc People: Shorten names in titles #22 2021-09-18 21:40:57 +02:00
Michael Mayer
e82533cdf0 People: Add unknown faces overview page #22 2021-09-18 20:41:30 +02:00
Michael Mayer
ed22f245db People: Add faces API endpoint & JS model #22 2021-09-18 15:32:39 +02:00
Michael Mayer
8492efebcf People: Improve face thumbnails on overview page #22 2021-09-17 18:51:24 +02:00
theresa
885b2b0e00 People: Add unit tests #22 2021-09-17 17:23:42 +02:00
Michael Mayer
6bcfb29fa2 Labels: Show photo count #584 #1444 2021-09-17 16:13:47 +02:00
Michael Mayer
0f90258ef9 Search: Omit full text index if query is too short #1517 2021-09-17 15:52:25 +02:00
Michael Mayer
79961ec11b MySQL: Fix compatibility issues #22 #1519 2021-09-17 14:39:08 +02:00
Michael Mayer
ece15c6ade People: Add overview page with search and context menu #22 2021-09-17 14:26:12 +02:00
Michael Mayer
6d30419b35 Search: Add "at" as an alias for "and" #22 2021-09-06 16:07:29 +02:00
Michael Mayer
d51aa86f0d Search: Add "in" as an alias for "and" #22 2021-09-06 15:59:38 +02:00
Michael Mayer
4a6b0baacf Search: Add "with" as an alias for "and" #22 2021-09-06 15:54:38 +02:00
Michael Mayer
ed89552631 People: Add "people" search alias for "faces" #22 2021-09-06 15:42:30 +02:00
Michael Mayer
deaca4b588 Backend: Fix typo in comment 2021-09-06 14:39:30 +02:00
Michael Mayer
24107eef82 People: Remove deprecated development database tables #22 2021-09-06 14:32:31 +02:00
Michael Mayer
960fce2933 People: Improve searching for names #22 2021-09-06 14:16:46 +02:00
Michael Mayer
afcf78efe2 Calendar: Update albums_test.go #1456 2021-09-06 11:22:44 +02:00
Michael Mayer
92748180c1 Calendar: Improve hiding empty months #1456 2021-09-06 11:19:18 +02:00
Michael Mayer
fb10bda98f People: Limit sample radius to reduce false positives #22 2021-09-06 05:25:20 +02:00
Michael Mayer
aae4997da1 People: Avoid adding duplicates faces #22 2021-09-06 05:13:53 +02:00
Michael Mayer
b853317cdf People: Tweak face clustering parameters #22 2021-09-06 03:24:11 +02:00
Michael Mayer
527a3ff015 People: Refresh photo metadata after faces got identified #22 2021-09-06 01:16:36 +02:00
Michael Mayer
0ebff285e5 People: Refresh photo metadata when subjects change #22 2021-09-06 00:52:10 +02:00
Michael Mayer
29ed7168d1 People: Sort subject names by file count and add new to the top #22 2021-09-05 22:32:24 +02:00
Michael Mayer
bd8f8b1ddb People: Remove review flag from markers with recognized faces #22 2021-09-05 21:34:51 +02:00
Michael Mayer
82e1fe12a4 People: Use server generated face crops #22 2021-09-05 21:19:52 +02:00
Michael Mayer
cdde0c5d84 People: Optimize face crop quality by using larger thumbs #22 2021-09-05 19:10:44 +02:00
Michael Mayer
6d1179dc03 People: Refactor face cropping #22 2021-09-05 17:10:52 +02:00
Michael Mayer
b9d1c7afb3 People: Improve thumb size config and flag descriptions #22 2021-09-05 13:48:53 +02:00
Michael Mayer
d21dc3457c People: Refactor thumb package and variable names #22 2021-09-05 12:32:08 +02:00
Michael Mayer
6f5e839e2f People: Move crop package to internal #22 2021-09-05 11:05:33 +02:00
Michael Mayer
9ba396e50f Search: Detect and set filters based on search terms
Reduces the amount of typing necessary to search for faces, videos,
favorites, stacks, panoramas, scans, and monochrome pictures.
2021-09-03 20:14:11 +02:00
Michael Mayer
2bde7e5696 Panoramas: Increase projection type string limit to 32 characters #1508 2021-09-03 19:02:26 +02:00
Michael Mayer
34c8f9d7b1 People: Implement crop thumbnail API #22 2021-09-03 17:42:37 +02:00
Michael Mayer
57b79f983a People: Upgrade temp dev table names #22 2021-09-03 16:26:01 +02:00
Michael Mayer
6ad1fffd77 People: Fix typo in previews.go #22 2021-09-03 16:15:43 +02:00
Michael Mayer
c520cb4ee4 People: Add autocomplete for selecting a person #22 2021-09-03 16:14:09 +02:00
Michael Mayer
68f21146ba People: Add face detection logs #22 2021-09-03 01:17:12 +02:00
Michael Mayer
e8bfec677f People: Tweak face detection parameters #22 2021-09-03 00:57:59 +02:00
Michael Mayer
02932c3758 People: Change field order in marker_json.go #22 2021-09-02 23:50:39 +02:00
Michael Mayer
c179a790b8 People: Improve face crop caching #22 2021-09-02 23:47:37 +02:00
theresa
c61a0f7d0e Tests: Add unit tests 2021-09-02 17:44:27 +02:00
theresa
157823e65d Tests: Update fixtures 2021-09-02 17:43:46 +02:00
Michael Mayer
97af133763 People: Add subjects API #22 2021-09-02 16:12:31 +02:00
Michael Mayer
5f07b8bb10 Config: Refactor client data types 2021-09-02 14:45:26 +02:00
Michael Mayer
9acd4a25b9 People: Generate photo titles from subject names #22 2021-09-02 14:23:40 +02:00
Michael Mayer
1be409d654 People: Add SubjectNames() to file entity #22 2021-09-02 11:12:42 +02:00
Michael Mayer
e923391427 People: Improve collision handling and subject renaming #22 2021-09-01 21:16:08 +02:00
Michael Mayer
69014e8216 People: Switch to UIDs for marker API and entity #22 2021-09-01 20:46:15 +02:00
theresa
c931851ed2 People: Add unit tests #22 2021-09-01 15:06:54 +02:00
theresa
995b87373c Tests: Refactor tests to prevent nil pointer 2021-09-01 14:05:15 +02:00
Michael Mayer
fd785faf68 People: Automatically resolve face cluster collisions #22 2021-09-01 12:48:17 +02:00
Michael Mayer
a2ff0477c9 People: Fix face cluster optimization #22 2021-08-31 20:08:53 +02:00
Michael Mayer
7f6fd7f47a Backend: Update Go build tags after upgrading to 1.17 2021-08-31 18:49:08 +02:00
Michael Mayer
feb0c557c1 Docker: Update multi-arch development image and config #1158
Now comes with Go 1.17 pre-installed. To match production
docker-compose.yml examples, the development database was
renamed from "photoprism-db" to "mariadb".
2021-08-31 18:08:37 +02:00
theresa
e5bfa6d78e Tests: Add unit tests 2021-08-31 17:18:48 +02:00
theresa
bf2d4ceb43 Tests: Add unit tests 2021-08-31 16:33:55 +02:00
Michael Mayer
86f8bf58a7 People: Improve MergeFaces() resilience and logging #22 2021-08-31 15:33:42 +02:00
theresa
6b10ae5511 People: Add unit tests #22 2021-08-31 14:59:53 +02:00
Michael Mayer
5db93bb731 People: Abort marker API request if feature is disabled #22 2021-08-31 13:34:29 +02:00
Michael Mayer
72b517d7c7 API: Add code comments 2021-08-31 13:33:27 +02:00
Michael Mayer
bc3036599b People: Refactor album, subject, and label previews #22 2021-08-30 18:58:27 +02:00
theresa
847f41d98c People: Add unit tests #22 2021-08-30 17:48:56 +02:00
theresa
052ff011ac People: Add unit tests #22 2021-08-30 17:20:39 +02:00
theresa
1e33ce9e17 People: Add unit tests #22 2021-08-30 15:34:41 +02:00
theresa
5e88c386b6 People: Add unit tests #22 2021-08-30 14:58:37 +02:00
theresa
fb5cf1b9c0 People: Add unit tests #22 2021-08-30 13:40:14 +02:00
theresa
6187525f07 People: Add fixtures #22 2021-08-30 13:39:53 +02:00
Michael Mayer
fe321b946f People: Add subjects.* websocket event subscription #22 2021-08-30 12:22:23 +02:00
Michael Mayer
38eadb095e People: Default to AND search for subject names #22 #882 2021-08-30 11:56:34 +02:00
Michael Mayer
c0a21045fb People: Improve search query parser #22 #882 2021-08-30 11:26:57 +02:00
Michael Mayer
f5fc97be27 Calendar: Automatically toggle visibility of months #1456 2021-08-29 19:54:50 +02:00
Michael Mayer
cbf604b477 People: Lower wildcard threshold for subject and keyword search #22 #882 2021-08-29 19:19:54 +02:00
Michael Mayer
ec792aa13a Tests: Disable TestConfig_CreateDirectories2 2021-08-29 16:32:22 +02:00
Michael Mayer
11d1034752 People: Add keywords, subjects, and albums search filters #22 #882 2021-08-29 16:16:49 +02:00
Michael Mayer
a0f49f2d56 People: Sync subject name with markers table #22 2021-08-29 13:42:34 +02:00
Michael Mayer
d198a056a7 People: Improve face matching performance and accuracy #22
By default, matching is now limited to unmatched faces and markers.
2021-08-29 13:26:05 +02:00
Michael Mayer
199d713312 People: Rename "faces audit" command to "faces update" #22 2021-08-28 17:32:26 +02:00
Michael Mayer
ee7fbef4b5 People: Improve "faces audit" command #22 2021-08-28 17:27:37 +02:00
Michael Mayer
0503011f87 People: Add "faces audit" command #22 2021-08-28 15:26:26 +02:00
Michael Mayer
327cd20a50 Run "make fmt" 2021-08-28 13:55:37 +02:00
theresa
630a599955 People: Add unit tests #22 2021-08-27 16:21:10 +02:00
theresa
64ad674f5f Tests: Add user fixtures and unit test 2021-08-27 15:33:33 +02:00
theresa
3bdabdedef People: Add fixtures unit tests #22 2021-08-27 15:33:06 +02:00
theresa
49ad7bb64a People: Add unit tests #22 2021-08-27 09:53:47 +02:00
theresa
af83a51496 Tests: Add unit tests 2021-08-26 18:02:53 +02:00
theresa
d0d62f470a Tests: Add unit tests 2021-08-26 17:26:48 +02:00
theresa
cfa105d3d6 Tests: Add file fixture 2021-08-26 17:24:48 +02:00
theresa
a2671b3428 People: Add unit tests #22 2021-08-26 16:31:05 +02:00
theresa
29be2cca27 People: Throw correct error in ReportCollision when embedding is empty #22 2021-08-26 16:00:11 +02:00
theresa
1761e139de People: Add unit tests #22 2021-08-26 15:51:21 +02:00
theresa
3a601f3953 People: Add unit tests #22 2021-08-26 11:58:52 +02:00
theresa
01742c13ea People: Add face + subject fixtures #22 2021-08-26 11:58:28 +02:00
theresa
c51452a90a People: Add unit tests #22 2021-08-25 17:54:06 +02:00
theresa
c99059567a People: Skip midpoint calculation if dimensions don't match #22 2021-08-25 17:53:45 +02:00
theresa
7a90c0209e Tests: Add tests for internal/entity 2021-08-25 15:29:00 +02:00
theresa
3c24481750 Tests: Add tests for internal/config 2021-08-25 13:41:51 +02:00
Michael Mayer
06835a3c5c People: Optimize face clustering and matching #22 2021-08-24 20:15:36 +02:00
theresa
b707f1cb0c Tests: Add tests for internal/config 2021-08-24 19:09:09 +02:00
theresa
73df6d68ec Tests: Add tests for internal/classify 2021-08-24 19:06:47 +02:00
Timo Volkmann
e71c398b1e Auth: Set role admin on user creation #98 2021-08-24 18:17:03 +02:00
Timo Volkmann
1bcdd4c6b1 Auth: Improve users update cli description #98 2021-08-24 18:17:03 +02:00
Michael Mayer
3fc7b1b523 People: Match faces less often by default #22 2021-08-24 15:20:05 +02:00
Michael Mayer
03cdc8bb7d People: Improve edit UI and stability #22 2021-08-24 14:27:34 +02:00
theresa
9238d569e4 Tests: Update fixtures 2021-08-23 17:20:03 +02:00
Michael Mayer
fefe70f9a4 People: Improve face clustering and matching #22 2021-08-23 16:22:01 +02:00
Timo Volkmann
5442c04c75 Auth: Add user delete Tests #98 2021-08-23 11:52:37 +02:00
Timo Volkmann
8facd101f6 Auth: Use promptui in user add command #98 2021-08-23 11:05:42 +02:00
Michael Mayer
981c51f977 People: Optimize manually clustered faces #22 2021-08-22 21:06:44 +02:00
Michael Mayer
07f0886893 People: Update code comments #22 2021-08-22 16:36:24 +02:00
Michael Mayer
2e85b3cccd People: Split facial recognition into smaller functions #22
Clustering and matching have been improved along the way. This opens
the door for further optimizations while keeping the code readable.
2021-08-22 16:14:34 +02:00
Michael Mayer
acde5c2dae People: Reset related fields when clearing marker subject #22 2021-08-21 17:11:02 +02:00
Michael Mayer
d88d9b3781 People: Add API endpoint for removing marker subject associations #22 2021-08-21 16:36:00 +02:00
Michael Mayer
080c0b5f23 People: Match faces after files have been uploaded #22 2021-08-20 00:28:22 +02:00
Michael Mayer
4d915af2b5 Auth: Remove DeleteUserByName() #98 2021-08-20 00:13:49 +02:00
Michael Mayer
fa8e02b430 Auth: Refactor user management commands #98 2021-08-20 00:10:26 +02:00
Michael Mayer
5cec098524 People: Improve face matching #22 2021-08-19 23:12:51 +02:00
Michael Mayer
885024d592 People: Improve face clustering and indexing #22 2021-08-19 21:12:38 +02:00
Timo Volkmann
7fbe1a6614 Auth: Modify users email now works properly #98 2021-08-19 15:53:23 +02:00
Michael Mayer
29a65dbaab People: Fork clusters library with fixed dbscan implementation #1478 2021-08-19 14:24:30 +02:00
Michael Mayer
2e18c2ef9c Metadata: Upgrade all go-exif image structure libs to v2 #1326 #1463 2021-08-19 13:28:12 +02:00
Michael Mayer
babc6a2d6c API: Add more detailed upload error logs #1486 2021-08-19 12:51:55 +02:00
Michael Mayer
b14d7d140a API: Improve code docs 2021-08-19 12:49:07 +02:00
Michael Mayer
6911c9f78b People: Change unknown face id #22 2021-08-19 11:36:45 +02:00
Timo Volkmann
80d6fc3d1d Auth: Add CLI commands for user management #98 2021-08-18 20:19:14 +02:00
Timo Volkmann
da7e4fbc97 Auth: Refactor user entity functions #98 2021-08-18 20:18:39 +02:00
Michael Mayer
6a450c463e People: Add PhotoUID to Subject entity #22 2021-08-18 11:33:23 +02:00
Michael Mayer
db95ceba65 People: Add threshold option for faces worker #22 2021-08-17 22:49:32 +02:00
theresa
e8d07e070c Tests: Update fixtures 2021-08-17 17:26:47 +02:00
theresa
48c1bd5e43 Tests: Adapt test to fixture updates 2021-08-17 17:26:47 +02:00
theresa
b2fe042cf3 Tests: Update file fixtures 2021-08-17 17:26:47 +02:00
theresa
e27d363c3e Tests: Update photo fixtures 2021-08-17 17:26:47 +02:00
Timo Volkmann
19e9c7560e Auth: Add user entity functions and tests #98 2021-08-16 20:51:55 +02:00
theresa
35869c6620 Tests: Adapt tests to fixture updates 2021-08-16 18:19:23 +02:00
theresa
2a02bf74e8 Tests: Update file fixtures 2021-08-16 18:18:55 +02:00
theresa
cb427cf5d5 Tests: Update photo fixtures 2021-08-16 18:18:37 +02:00
theresa
41f0e08ba6 Tests: Adapt tests to updated fixtures 2021-08-16 17:15:06 +02:00
theresa
8895f95841 Tests: Update file fixtures 2021-08-16 17:14:37 +02:00
theresa
6c86800d97 Tests: Update photo fixtures 2021-08-16 17:14:18 +02:00
theresa
b877c14ada Tests: Adapt tests to fixture updates 2021-08-16 15:19:10 +02:00
theresa
2f674c5bb7 Tests: Update places fixtures 2021-08-16 15:18:30 +02:00
theresa
49c40b9d9a Tests: Update file fixtures 2021-08-16 15:18:06 +02:00
theresa
0deba0d4c7 Tests: Update photo fixtures 2021-08-16 15:17:43 +02:00
Michael Mayer
c315c58bb5 People: Revert marker form and test #22 2021-08-16 01:52:02 +02:00
Michael Mayer
003982afe0 People: Remove face embeddings and landmarks from JSON response #22
Improves performance by reducing response size.
2021-08-16 01:45:36 +02:00
Michael Mayer
da94e9ed0f People: Refactor faces worker and related entities #22 2021-08-16 00:29:36 +02:00
Michael Mayer
39856657d5 People: Refactor faces worker and related entities #22 2021-08-15 20:57:26 +02:00
Michael Mayer
494dea4880 People: Add "photoprism faces reset" command #22 2021-08-15 14:14:27 +02:00
Michael Mayer
6291b406b6 People: Improve face clustering #22 2021-08-15 12:17:14 +02:00
Michael Mayer
b7d9557f67 People: Automatically update faces and people on user input #22 2021-08-14 21:37:57 +02:00
Michael Mayer
41cc0c596d People: Match markers with known faces and people #22 2021-08-14 20:48:38 +02:00
Michael Mayer
0cb44f7b45 People: Skip clustering when there are no new face markers #22 2021-08-14 19:52:49 +02:00
Michael Mayer
5ea6f70938 People: Fix assertion in TestFaces() #22 2021-08-14 18:16:47 +02:00
Michael Mayer
57c5f1f2fb People: Match known faces in one go #22
This commit also adds additional test fixtures.
2021-08-14 18:13:03 +02:00
Michael Mayer
b6b38b54bb People: Move detectFaces() to index_faces.go #22 2021-08-14 16:01:44 +02:00
Michael Mayer
9057e39fb2 People: Add sample threshold to faces worker #22 2021-08-14 15:45:51 +02:00
Michael Mayer
42027962aa People: Add face clustering and matching to meta worker #22 2021-08-14 14:24:48 +02:00
Michael Mayer
05daa9f7be Indexer: Update info log message 2021-08-14 01:54:01 +02:00
Michael Mayer
33905d95b9 People: Update faces command help text #22 2021-08-13 21:51:25 +02:00
Michael Mayer
67bf46dd9a Auth: Refactor ACL Roles and Resources #98
Renamed ResourcePeople to ResourceUsers. Work in progress.
Added a few "default" roles as a reminder for later.
2021-08-13 21:23:34 +02:00
Michael Mayer
28a4ed88c4 Run make fmt 2021-08-13 20:50:49 +02:00
Michael Mayer
45355c7303 People: Update entity database table names #22
Work in progress.
2021-08-13 20:31:41 +02:00
Michael Mayer
a974b3a7ea People: Improve Facial Recognition Accuracy, Command, and UI #22
Work in progress. Performed refactoring along the way.
2021-08-13 20:04:59 +02:00
Timo Volkmann
754a48c8d5 Auth: adapt tests for recent changes 2021-08-12 20:33:14 +02:00
Timo Volkmann
8dfec4e5fe Auth: add permissions for non-admins 2021-08-12 20:33:14 +02:00
Timo Volkmann
62c38f00b9 Auth: do not allow user to change other users passwords 2021-08-12 20:33:14 +02:00
Timo Volkmann
7f90e3615b Auth: Add tests for finding users by uid #98 2021-08-12 20:33:14 +02:00
Michael Mayer
e78c4df22e People: Create person based on existing marker labels #22
Work in progress.
2021-08-12 17:49:48 +02:00
Michael Mayer
35f0a1925c API: Update config_test.go 2021-08-12 12:06:55 +02:00
Michael Mayer
d767e50b37 People: Improve face clustering #22
Work in progress.
2021-08-12 12:05:10 +02:00
Michael Mayer
1fc4ef123b People: Add face clustering worker #22
Work in progress. No performance optimizations yet.
2021-08-12 04:54:20 +02:00
Michael Mayer
733b84a03b People: Add person entity and people count #22 2021-08-11 21:42:31 +02:00
Michael Mayer
5d9e26719c Run make fmt 2021-08-11 13:23:17 +02:00
Michael Mayer
2b0e266b16 People: Multiple embeddings per face crop #22 2021-08-11 13:21:22 +02:00
Timo Volkmann
177367e78d Auth: add change password tests #98 2021-08-11 12:58:38 +02:00
Timo Volkmann
daf81b20ee Auth: fix wrong api test init sequence #98 2021-08-11 12:57:54 +02:00
Michael Mayer
371a9b3c45 Run make fmt 2021-08-11 11:01:14 +02:00
Timo Volkmann
3829377824 Auth: fixed typo in tests 2021-08-11 10:47:52 +02:00
Timo Volkmann
dd0ee298cd Auth: added api tests for user sessions #98 2021-08-10 17:22:15 +02:00
Timo Volkmann
e5b1b7b5f6 Auth: Add user and password fixtures #98 2021-08-10 12:30:04 +02:00
Michael Mayer
b458a32994 Config: Update info message
see #1135, #1390, and #1397
2021-08-05 21:57:01 +02:00
Michael Mayer
c8b82d2ba4 Config: Reduce minimum memory requirement to 2 GB
see #1135, #1390, and #1397
2021-08-05 21:54:57 +02:00
Michael Mayer
403afc69aa Config: Don't disable ffmpeg even when server has < 3 GB memory
see #1135, #1390, and #1397
2021-08-05 20:18:52 +02:00
Michael Mayer
6dee522472 Config: Improve warning message shown when server has < 3 GB memory
see #1135, #1390, and #1397
2021-08-05 19:10:53 +02:00
Michael Mayer
a4289ec9f0 Config: Limit workers and disable transcoding if < 3 GB of memory
see #1135, #1390, and #1397
2021-08-05 15:15:33 +02:00
theresa
9263895408 Tests: Adapt tests to fixture changes 2021-08-05 12:33:52 +02:00
theresa
c13af0408d Tests: Update photo fixtures 2021-08-05 12:33:02 +02:00
theresa
a0cb73bd12 Tests: Update photo fixtures 2021-08-05 10:30:08 +02:00
theresa
c0cd45afe8 Tests: Update photo fixtures 2021-08-04 18:43:39 +02:00
theresa
8b47775315 Tests: Adapt tests for internal/query to fixture updates 2021-08-04 17:10:26 +02:00
theresa
4f10fdc83a Tests: Adapt tests for internal/photoprism to fixture updates 2021-08-04 17:10:00 +02:00
theresa
a5152bad4d Tests: Adapt tests for internal/entity to fixture updates 2021-08-04 17:09:36 +02:00
theresa
7c16183998 Tests: Adapt tests for internal/api to fixture updates 2021-08-04 17:09:12 +02:00
theresa
c241faf248 Tests: Update file fixtures 2021-08-04 17:08:26 +02:00
Michael Mayer
0c42ded320 Tests: Reformat link_fixtures.go
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2021-07-25 23:48:34 +02:00
theresa
09c51c8db6 Tests: Update test fixtures 2021-07-23 13:25:28 +02:00
theresa
ca390351d8 Tests: Update fixtures 2021-07-22 18:31:56 +02:00
theresa
de1eee18bf Tests: Update fixtures 2021-07-22 15:05:23 +02:00
theresa
dcebf32c2c Tests: Adapt tests to fixture changes 2021-07-22 13:53:28 +02:00
theresa
830fba9d0b Tests: Update test fixtures 2021-07-22 13:53:28 +02:00
Michael Mayer
bc86997ba3 Backend: Replace gopkg.in/ugjka/go-tz with gopkg.in/photoprism/go-tz
Original package was archived and not maintained anymore.
2021-07-17 15:21:03 +02:00
Michael Mayer
c79558a039 Backend: Run make fmt 2021-07-16 19:32:33 +02:00
Michael Mayer
07c711a0b4 RAW: Skip Darktable when converting Canon CR3 and Fuji RAF files #1362 2021-07-16 18:12:42 +02:00
Michael Mayer
63094e7b17 MariaDB: Set default table engine, charset and collation #1371 2021-07-16 18:02:51 +02:00
Michael Mayer
2d9918e72b People: Store detected face embeddings in markers table #22 #1406 2021-07-16 14:34:05 +02:00
Garrett Gu
46a3773c8e
Sessions: Fix unhandled error (#1349) 2021-07-15 17:47:43 +02:00
Michael Mayer
4fcd009b8b Metadata: Fix time zone for Quicktime videos #1388
Assume UTC, same as for MP4 videos.
2021-07-13 18:08:47 +02:00
Michael Mayer
c819e9159c Metadata: Fix time zone for MP4 videos #1388
As it turned out, the exiftool -api QuickTimeUTC parameter converts
CreateDate to local time using the server's time zone. This doesn't
help as it's technically still a local time and not UTC. Had to
implement this manually in our Exiftool JSON parser for MP4 videos only.
2021-07-13 17:56:26 +02:00
Michael Mayer
513a7e9257 Exiftool: Fix CLI parameters and add tests #1388 #1401 2021-07-12 21:41:44 +02:00
Michael Mayer
aa119c72ea Exiftool: Add command params to fix time zone for videos #1388 #1401
This also enables large file support to read metadata from
movie length video files.
2021-07-08 18:33:41 +02:00
Michael Mayer
4a2e4fc99f Config: Update manifest.json location for generating hash #425 #1351 2021-07-08 18:31:06 +02:00
Michael Mayer
c87d5da2e3 Config: Add CDN URL option #425 #1351 2021-07-05 16:41:43 +02:00
Michael Mayer
1a78bc7052 Tests: Code clean-up 2021-06-28 12:45:00 +02:00
theresa
1a90f4a454 Tests: Add tests for internal/entity 2021-06-23 15:34:19 +02:00
Michael Mayer
49fd531420 People: Implement marker update API #22 2021-06-02 17:25:04 +02:00
Michael Mayer
f37b740ec8 People: Select best thumbnail depending on config options #22 2021-06-02 12:12:30 +02:00
Michael Mayer
72c50ef2aa People: Increase face score threshold for high-res images #22 2021-06-01 18:57:41 +02:00
Michael Mayer
e29e9977a9 UI: Add people tab to photo edit dialog #22
Work in progress. Buttons don't work yet.
2021-06-01 17:39:03 +02:00
Michael Mayer
11b4fbd5a0 People: Refactor face marker indexing #22 2021-05-31 15:40:52 +02:00
Michael Mayer
64d45c6dab People: Save face markers #22 2021-05-26 14:41:59 +02:00
Michael Mayer
65b779823d People: Reduce face detection score threshold #22 2021-05-26 11:55:10 +02:00
Michael Mayer
0d160fe833 People: Simplify "faces" search #22 2021-05-26 10:46:32 +02:00
Michael Mayer
5ecba4926a People: Show number of faces in edit dialog #22 2021-05-26 09:51:00 +02:00
Michael Mayer
171a4e799a People: Change search filter behavior #22 2021-05-25 19:32:36 +02:00
Michael Mayer
a6bf89d104 People: Detect number of faces (experimental) #22 2021-05-25 18:01:21 +02:00
Michael Mayer
f5a1cc6231 People: Add feature checkbox in Settings UI #22 2021-05-25 14:55:41 +02:00
Michael Mayer
1da02bd48e People: Calculate relative face markers #22 2021-05-25 14:30:24 +02:00
Michael Mayer
27b14087e2 People: Add "people" search filter #22 2021-05-25 11:55:44 +02:00
Michael Mayer
07d1a74be8 People: Add PhotoPeople property to Photo struct #22 2021-05-25 11:39:22 +02:00
Michael Mayer
c2a8098b6c People: Add Marker entity #22 2021-05-25 11:38:04 +02:00
Michael Mayer
cf36ef3f3d People: Refactor face landmark detection #22 2021-05-24 17:57:44 +02:00
Michael Mayer
3619cf3635 People: Proof-of-concept for face detection via Pigo #22
see https://github.com/esimov/pigo
2021-05-24 15:54:22 +02:00
Michael Mayer
b1856b9d45 RawTherapee: Add -s cli param to use existing sidecar files #1267
see https://rawpedia.rawtherapee.com/Command-Line_Options
2021-05-23 16:02:39 +02:00
Michael Mayer
65c3967384 Import: Never remove ignored directories #1319 2021-05-23 13:49:07 +02:00
Michael Mayer
bc67e8349e Metadata: Fix TestMediaFile_Exif_HEIF 2021-05-20 16:46:15 +02:00
Michael Mayer
80981c2566 Import: Only convert RAW to JPEG if enabled in index options 2021-05-17 17:32:19 +02:00
Michael Mayer
44415bc78e Import: Check if "convert to jpeg" is disabled 2021-05-17 16:01:52 +02:00
Michael Mayer
365e582ffd Backend: Upgrade dsoprea/go-exif and revert exif test assertion
see https://github.com/dsoprea/go-exif/issues/55
2021-05-14 18:24:10 +02:00
Michael Mayer
daab99015a TensorFlow: Improve panic log messages #1270 2021-05-06 12:50:53 +02:00
Michael Mayer
cd0f201ef4 TensorFlow: Add panic handlers #1270 2021-05-06 12:45:38 +02:00
Michael Mayer
e10118a65f Metadata: Merge keywords if priority is the same #1153
Also reduces length limit for latin words to 2 letters.
2021-05-04 15:02:54 +02:00
Michael Mayer
87e1188c52 Config: Update command flag description for "jpeg-quality" 2021-05-01 11:15:37 +02:00
Michael Mayer
630de81c9f Metadata: Don't remove stopwords from existing keywords #1153 2021-05-01 11:06:51 +02:00
Michael Mayer
2d7becdbbc Metadata: Add keywords tests #1153 2021-05-01 10:52:28 +02:00
Michael Mayer
f0b627b8f6 Config: Rename DarktablePresets to RawPresets #1245 2021-05-01 10:25:34 +02:00
Michael Mayer
6cbf0696c4 Metadata: Don't remove stopwords from keywords #1153 2021-04-30 17:37:37 +02:00
Michael Mayer
8851271d55 WebDAV: Mark uploaded files as favorite #1210 2021-04-30 16:52:54 +02:00
Michael Mayer
f87c9c01da Config: Add options to disable specific image / video converters #1245 2021-04-30 14:24:01 +02:00
Michael Mayer
28c5c1be7b Metadata: Upgrade dsoprea/go-exif
See https://github.com/dsoprea/go-exif/issues/55
2021-04-30 10:59:06 +02:00
Michael Mayer
6ca3dde25f Sessions: Change log levels & add docs #1103 2021-04-30 10:07:20 +02:00
Theresa Gresch
da6e948f31
Metadata: Add support for XMP sidecar CreateDate and Keywords (#1161)
* Metadata: Read title, description, date and keywords from apple xmp

* Metadata: Add testfiles and tests

* Metadata: Add support for XMP sidecar CreateDate and Keywords #1151

Co-authored-by: Michael Mayer <michael@lastzero.net>
2021-04-26 13:54:14 +02:00
Michael Mayer
180e46b95f Frontend: Add Yellowstone theme, unlock Grayscale for everyone 2021-04-26 12:37:52 +02:00
Michael Mayer
27c106863d Metadata: Merge existing keywords #1153 2021-04-25 14:17:34 +02:00
Michael Mayer
cd63d33bc1 Convert: Pass sub folder as first argument to limit scope #1081
see https://github.com/photoprism/photoprism/discussions/1081
2021-04-20 08:54:44 +02:00
Michael Mayer
55d502bbca Restore: Improve command flags and usage docs #1190 #1193 2021-04-20 08:40:39 +02:00
Michael Mayer
fd078fe323 Backup: Improve command usage docs #1190 #1193 2021-04-19 13:54:38 +02:00
Michael Mayer
7de3713024 Backup: Improve command flags and usage docs #1190 #1193 2021-04-19 13:48:46 +02:00
Michael Mayer
25adf01d79 Backend: Upgrade Go dependencies 2021-04-19 12:24:14 +02:00
Kyle Roth
17600e5259
docs(backup): add usage text to describe argument (#1193) 2021-04-19 11:25:45 +02:00
Aaron Wood
cabee7ab61
Fix locking (#1141)
* Fix unprotected section

* Optimize lock where only reads are performed
2021-03-28 19:51:38 +02:00
theresa
1532e6b748 Tests: Add test and testfiles for bug #1153 2021-03-25 11:45:32 +01:00
theresa
bc714059c3 Meta: Add charset=Ascii to unwanted descriptions 2021-03-24 14:24:24 +01:00
theresa
fc6227ae58 Tests: Add tests for internal/api 2021-03-11 09:36:47 +01:00
theresa
816aca7420 Tests: Add tests for internal/api 2021-03-10 16:55:55 +01:00
theresa
c0d5da40e1 Tests: Add tests for internal/api 2021-03-10 15:52:38 +01:00
theresa
aadc870c11 Tests: Add tests for internal/api 2021-03-10 11:30:26 +01:00
theresa
b2eee0d34d Tests: Add test fixtures 2021-03-10 11:30:09 +01:00
theresa
a01288a5ac Tests: Add tests for internal/thumb 2021-03-03 14:44:30 +01:00
theresa
3f68c2f6e4 Tests: Add tests for internal/query 2021-03-03 11:49:32 +01:00
theresa
10983e73d4 Tests: Add tests for internal/photoprism 2021-03-02 14:59:48 +01:00
theresa
59512b0e50 Tests: Add tests for internal/photoprism 2021-03-02 11:59:52 +01:00
theresa
4c03ef074f Tests: Add tests for internal/photoprism 2021-02-26 13:04:48 +01:00
theresa
0192f976bc Tests: Add tests for internal/meta 2021-02-25 16:03:07 +01:00
theresa
539562368e Tests: Add tests for internal/entity 2021-02-25 15:42:20 +01:00
theresa
bd8b5d9954 Tests: Add tests for internal/entity 2021-02-25 15:17:47 +01:00
theresa
c7a9c437ad Tests: Add tests for internal/entity 2021-02-24 18:10:15 +01:00
theresa
6c4c07f064 Tests: Add tests for internal/entity 2021-02-24 15:31:10 +01:00
theresa
7714ab893b Tests: Add tests for internal/entity 2021-02-24 11:38:28 +01:00
Michael Mayer
ac5a9d5ee4 Demo: Restore albums from YAML backups 2021-02-22 21:21:14 +01:00
Michael Mayer
4c5a730da4 Thumbs: Fix orientation for HEIF, TIFF, and PNG #1064 2021-02-22 21:09:50 +01:00
theresa
b147130817 Tests: Update config tests 2021-02-22 11:07:00 +01:00
Michael Mayer
01d4b1ee31 Exif: Refactor JPEG rotation based on orientation flag #1064
We now manually detect and change the rotation, the imaging
autorotation functionality was disabled for our core use-cases.

anymore.
2021-02-21 22:53:25 +01:00
Michael Mayer
f7f0b8d17a Metadata: Add unwanted descriptions 2021-02-21 17:54:26 +01:00
Michael Mayer
d42eb4e01b Classify: Improve moments & location labels 2021-02-21 17:18:36 +01:00
Michael Mayer
32ef03083d Restore: Find album backups in originals folder as well 2021-02-21 15:48:46 +01:00
Michael Mayer
13534b3193 Config: Fix db tests 2021-02-20 13:13:59 +01:00
theresa
a9f64f98c2 Tests: Add tests for internal/config 2021-02-18 14:39:08 +01:00
theresa
67594db4a2 Tests: Add unit tests for internal/config 2021-02-18 11:41:51 +01:00
Michael Mayer
4903936839 Video: Add ffmpeg-bitrate config option #703 2021-02-17 18:19:52 +01:00
Michael Mayer
f326590bb6 Metadata: Default to landscape orientation if value is invalid #1052 2021-02-17 17:10:50 +01:00
Michael Mayer
2d5c259a7f Video: Use aac audio for transcoding #703 #1060 2021-02-17 16:58:55 +01:00
Michael Mayer
0414e09d58 Video: Update ffmpeg transcoding parameters #703 #1060 2021-02-17 16:48:20 +01:00
theresa
d6f7601246 Meta: Add default to unwanted descriptions list 2021-02-17 09:47:15 +01:00
Michael Mayer
4939e36ac6 Video: Update docker-compose.yml ARM64 example #703
Renamed PHOTOPRISM_FFMPEG_CODEC to PHOTOPRISM_FFMPEG_ENCODER as well.
Log level for errors has been increased to warn.
2021-02-16 11:40:40 +01:00
Michael Mayer
f77d9062a2 Video: Add ffmpeg-buffers to config command output #703 2021-02-16 09:02:34 +01:00
Michael Mayer
635053346f Backup: Always use TCP connection for MySQL #1034 2021-02-16 08:59:57 +01:00
Michael Mayer
58005012b1 Video: Add config option for FFmpeg num_capture_buffers #703 2021-02-16 08:57:21 +01:00
Michael Mayer
0990e54a66 Video: Increase num_capture_buffers to 32 #703 2021-02-15 23:57:12 +01:00
Michael Mayer
4c2a991a66 Video: Improve transcoding logs #703 2021-02-15 23:40:14 +01:00
Michael Mayer
d9b204a268 Index: Reduce log level when extracting metadata fails 2021-02-15 21:05:00 +01:00
Michael Mayer
5c3ca4ea5d Video: Implement fallback to default software codec #703 2021-02-15 20:52:14 +01:00
Michael Mayer
341270c779 Video: Remove debug log #703 2021-02-15 20:26:32 +01:00
Michael Mayer
d4bb89ada3 Classify: Reduce basket label priority to -1 2021-02-15 20:02:46 +01:00
Michael Mayer
2e0870f664 Videos: Add -crf 23 parameter to ffmpeg #703
See https://slhck.info/video/2017/02/24/vbr-settings.html
2021-02-15 18:13:49 +01:00
theresa
74663f53b0 Meta: Add binary comment to unwanted descriptions #1046 2021-02-15 17:25:22 +01:00
Michael Mayer
e12eac7b23 Metadata: Re-enable gopro camera model assertion in test #990 #1046 2021-02-15 16:40:47 +01:00
Michael Mayer
0747b6d667 Videos: Reduce bitrate estimate #703 2021-02-15 15:52:35 +01:00
Michael Mayer
0c1bdbfac6 Videos: Limit transcoding bitrate to 50M #703 2021-02-15 15:48:45 +01:00
Michael Mayer
50101cffdc Videos: Update ffmpeg transcoding params #703
Increase num_output_buffers and num_capture_buffers.
2021-02-15 14:35:52 +01:00
Michael Mayer
5c52407e61 Videos: Add additional ffmpeg transcoding params #703 2021-02-15 14:32:03 +01:00
Michael Mayer
005b064e47 Delete: Make sure to permanently remove all related sidecar files #167 2021-02-15 14:09:30 +01:00
Michael Mayer
6ae0002930 Videos: Improve avc bitrate bitrate estimate #703 2021-02-14 19:23:52 +01:00
Michael Mayer
2671edf982 Videos: Add bitrate and pixel format to ffmpeg transcoding params #703 2021-02-14 19:14:12 +01:00
Michael Mayer
a78a5f6f48 Metadata: Add workaround for exif strings containing \n or \r
See: https://github.com/dsoprea/go-exif/issues/55
2021-02-13 18:11:44 +01:00
Michael Mayer
aacb524f1e Add video transcoding support to convert command #703 2021-02-11 21:37:44 +01:00
Michael Mayer
45272cd2f5 Videos: Add ffmpeg-codec config parameter #703 2021-02-11 20:22:00 +01:00
Michael Mayer
07ed8ed914 Search: Allow negative values for lat / lng filter 2021-02-11 20:06:23 +01:00
Michael Mayer
f986f21f47 Metadata: Remove estimate when setting a new country #1018 2021-02-11 19:48:33 +01:00
Michael Mayer
cc93e78bc0 Albums: Improve database query #1010 2021-02-08 14:52:33 +01:00
Michael Mayer
951498be2a Config: Update testdata/settings.yml 2021-02-08 14:10:35 +01:00
Michael Mayer
1db5b36dde Purge: Fix and simplify database queries #599 #1010 2021-02-08 14:09:58 +01:00
Michael Mayer
0bcef4726f Settings: Add feature flag to hide Videos from navigation #996 2021-02-08 09:04:44 +01:00
Michael Mayer
9b43e96659 Index: Improve log messages #1010 2021-02-08 08:19:30 +01:00
Michael Mayer
b09edde419 Index: Improve log messages #1010 2021-02-08 08:09:23 +01:00
Michael Mayer
568685f991 Index: Improve query for photos with missing primaries #1010 2021-02-08 07:39:29 +01:00
Michael Mayer
84ab1bc575 Index: Shorten log message for missing primaries #1010 2021-02-08 07:17:10 +01:00
Michael Mayer
906376ea31 Index: Reduce log level for missing primaries to info #1010 2021-02-08 07:14:55 +01:00
Michael Mayer
63ce5ea933 Backend: Remove log from FolderCoverByUID #1011 2021-02-07 20:30:50 +01:00
Michael Mayer
c7753b87ff Library: Show folder covers in Originals #1011 2021-02-07 19:04:17 +01:00
Michael Mayer
a1a967786a Import: Reduce log level to info for duplicates #991 2021-02-06 17:09:11 +01:00
Michael Mayer
1e023c5302 QA: Implement test mode 2021-02-06 17:04:00 +01:00
Michael Mayer
1bfb2e1774 Index: Improve save / update functions, remove orphans 2021-02-06 16:30:30 +01:00
Michael Mayer
31fb402a28 Import: Re-add error log #991 2021-02-05 22:00:44 +01:00
Michael Mayer
303a3f77f9 Index: Reduce log level to warn for related files 2021-02-05 21:42:25 +01:00
Michael Mayer
ee555e8f6a Upload: Add duplicates to selected album(s) as well #991 2021-02-05 21:12:40 +01:00
Michael Mayer
8177f36f43 Search: Remove unused countries from dropdown #982 2021-02-05 20:40:37 +01:00
Michael Mayer
2a96c019f4 Metadata: Update camera model map 2021-02-05 19:48:53 +01:00
Michael Mayer
128cdf4bac Backend: Fix typo in photo entity 2021-02-05 19:18:33 +01:00
Krassimir Valev
c27e809308
Additional photo location unit tests (#918) 2021-02-05 18:32:32 +01:00
Michael Mayer
63ba28426e Navigation: Update counts when saving a photo #996 2021-02-05 18:22:52 +01:00
Michael Mayer
bf592bdf7c Backup: Restore archive flag from yaml files #912 2021-02-05 16:32:08 +01:00
Michael Mayer
8b361093be Metadata: Upgrade Go dependencies #990 2021-02-05 09:45:28 +01:00
Michael Mayer
a99c6978d2 Metadata: Update camera make map 2021-02-05 09:12:13 +01:00
theresa
fadb19ec64 Metadata: Add copyright to metadata 2021-02-04 14:39:18 +01:00
Michael Mayer
b55c06dca1 Metadata: Rename SetTimeZone to UpdateTimeZone #930 2021-01-27 23:39:46 +01:00
Michael Mayer
480b186b3c Metadata: Ignore UTC time zone estimates #930 2021-01-27 23:31:13 +01:00
Michael Mayer
28e2e85d48 Metadata: Apply time zone estimate if date was not set manually #930 2021-01-27 22:47:37 +01:00
Michael Mayer
993e7466fa Download all related files using their existing name by default #449
Related issues:
- Configure download name for files and albums #848
- When downloading live photos, zip all the associated files #437
2021-01-27 21:30:10 +01:00
Michael Mayer
40ccb29313 Metadata: Improve date extraction for mod time and file names #930 2021-01-27 15:21:54 +01:00
Michael Mayer
e175251783 Metadata: Remove time zone if taken date is from file name #930 2021-01-27 12:36:23 +01:00
Michael Mayer
67259fbca6 Metadata: Add "SAMSUNG CAMERA PICTURES" to unwanted descriptions 2021-01-27 12:13:09 +01:00
Michael Mayer
24f8c1acfa Metadata: Add strings to unwanted descriptions in sanitize.go 2021-01-27 12:00:56 +01:00
Michael Mayer
2d0ba9c60e Backend: Add "OLYMPUS CORPORATION" to camera.go 2021-01-27 12:00:02 +01:00
Michael Mayer
527aa38c96 Albums: Use same cover placeholder as folders 2021-01-26 19:28:42 +01:00
Michael Mayer
52532c4579 Metadata: Improve handling of time zones and estimates #930 2021-01-26 19:18:37 +01:00
Michael Mayer
05b417acfa Metadata: Apply existing time zone when changing TakenAt 2021-01-26 13:00:54 +01:00
Michael Mayer
91e6a33197 Config: Reduce auto index & import safety delay defaults
New auto indexing safety delay default is 5 min.
New auto import safety delay default is 3 min.
Previous was the same as wakeup interval, which is 15 min by default.
2021-01-26 12:06:33 +01:00
Michael Mayer
ef2f231d5b Indexer: Improve taken date fallback when other metadata is missing #930 2021-01-25 21:41:57 +01:00
Michael Mayer
378dd0812e Metadata: Simplify keyword indexing #920 2021-01-25 20:30:52 +01:00
Michael Mayer
899419383a Metadata: Fix indexing keywords in original file name and path #920 2021-01-25 19:30:29 +01:00
Michael Mayer
997a7c126a WebDAV: Improve service discovery #496 2021-01-25 15:11:21 +01:00
Michael Mayer
a71946a2ea Albums: Hide folders with private photos only #942 2021-01-25 12:36:10 +01:00
Michael Mayer
274c9347f5 Purge: Hide missing files in UI and set new primary if needed #917 2021-01-24 20:40:40 +01:00
Michael Mayer
e04f0f937f Add cleanup command that removes orphaned thumbnails and index entries 2021-01-24 17:46:18 +01:00
Michael Mayer
2c79340bb7 Archive: Permanently Delete Files After Confirmation #167 2021-01-24 15:28:59 +01:00
Michael Mayer
cb27fc1928 API: Apply limit and sort order when searching for IDs #890 2021-01-20 12:08:48 +01:00
Krassimir Valev
791fbe683c
Remove database DSN from photoprism config (#922) 2021-01-19 21:29:01 +01:00
Michael Mayer
75fb5823b0 UX: Add early-access info dialog #700 2021-01-19 21:28:16 +01:00
Michael Mayer
6ee2613e90 Metadata: Improve time zone estimates #914 2021-01-19 13:47:41 +01:00
Michael Mayer
019a649c61 Metadata: Set time zone based on pictures taken at a similar time #914 2021-01-19 11:41:25 +01:00
Michael Mayer
9dad595c3e Photo: Allow overwriting estimated locations #918 2021-01-19 11:38:35 +01:00
Krassimir Valev
a90ee62cd6
Search albums by country (#905) 2021-01-16 12:48:43 +01:00
Michael Mayer
bc0bde4771 UI: Add Greyscale theme #700 2021-01-15 18:30:26 +01:00
Michael Mayer
3e4bce800d API: Remove Year and Month from editable album values #897 2021-01-15 16:53:00 +01:00
Michael Mayer
0ffdc9c457 Config: Update docker-compose.yml examples 2021-01-14 19:23:24 +01:00
Michael Mayer
512141dea2 Import: Use current copy / move setting for auto import #879 2021-01-11 17:09:19 +01:00
Michael Mayer
0a6d9fc376 UX: Find all media types via /browse by default #859 2021-01-11 14:06:48 +01:00
Michael Mayer
3fc4336e58 Config: Fix detection of CPU cores to limit number of workers 2021-01-11 13:00:46 +01:00
Michael Mayer
5eea2eac41 API: Add composite id to photo search results 2021-01-10 15:30:21 +01:00
Michael Mayer
b408538f68 HTTP: Add optional gzip compression 2021-01-10 15:30:21 +01:00
Alexander Konovalov
dcf94e26a5
Backend: Optimize photos search query (#871) 2021-01-10 12:38:51 +01:00
Michael Mayer
19b2f1de13 Import: Improve handling of severe errors (panics) #261 2021-01-09 13:50:14 +01:00
Michael Mayer
dcaf22b329 Config: Detect physical CPU cores to limit number of workers 2021-01-09 12:18:59 +01:00
Michael Mayer
8627153288 Config: Reduce workers default
CPUs with with hyper-threading can't properly manage the load otherwise.
2021-01-09 04:44:36 +01:00
Michael Mayer
39595ee34d PWA: Add service worker #374 #852 2021-01-08 19:11:50 +01:00
Michael Mayer
a808f4a5fb PWA: Add anti-cache param to manifest.json 2021-01-08 18:32:08 +01:00
Michael Mayer
6811a07e8a Backend: Remove allegro/bigcache in favor of patrickmn/go-cache #807 2021-01-08 13:29:01 +01:00
Michael Mayer
54e2ca3dab API: Improve thumbnail performance & caching #807 #822 2021-01-08 12:52:26 +01:00
Michael Mayer
2952728098 API: Clear album cover cache when updating private flag(s) #807 #822 2021-01-08 12:20:41 +01:00
Michael Mayer
4f8af03b55 API: Reduce cache TTL for album / folder cover images #822 #846 2021-01-08 09:09:59 +01:00
Michael Mayer
92df3aa724 API: Refactor response headers #822 #846 2021-01-08 09:02:30 +01:00
Michael Mayer
60499867af API: Add Cache-Control and X-Preview-Token headers #822 #846
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2021-01-07 22:55:50 +01:00
Michael Mayer
9d8e10e288 Indexer: Create JPEGs for sidecar files as well #813 2021-01-05 19:54:01 +01:00
Michael Mayer
40d734d073 Import: Extract metadata with ExifTool before moving #810 2021-01-04 20:07:24 +01:00
Michael Mayer
c9c5f684fd Import: Add folder album when importing 2021-01-04 19:26:15 +01:00
Michael Mayer
c8322373ca Config: Add UI.Zoom, Features.Albums & Features.People to Settings #799 2021-01-04 19:08:44 +01:00
Michael Mayer
65fd839bcf WebDAV: Refactor logging 2021-01-04 10:32:43 +01:00
Michael Mayer
ff758c3ed6 WebDAV: Changes trigger auto indexing / importing #281
The safety delay may be configured individually using
PHOTOPRISM_AUTO_INDEX and PHOTOPRISM_AUTO_IMPORT. A negative value
disables the feature.
2021-01-02 18:56:15 +01:00
Michael Mayer
51fe6cf526 Config: Improve preview token security 2021-01-02 15:08:39 +01:00
Michael Mayer
ed0aa11ee8 UX: Document min password length and reduce to 4 chars 2021-01-02 14:06:34 +01:00
Michael Mayer
7d82f0364d Testdata: Update download URLs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2021-01-02 04:14:16 +01:00
Michael Mayer
9ec2381307 Update copyright after year change 2021-01-01 22:37:25 +01:00
Michael Mayer
8e22fbf8f6 Metadata: Store and compare data source for details #755 2020-12-31 13:51:31 +01:00
Michael Mayer
f439a6d050 Shares: Show all albums on overview page #776 2020-12-31 12:34:06 +01:00
Michael Mayer
bbd0af3dd3 Shares: Allow reuse of the same share slugs & tokens #776 2020-12-31 12:02:26 +01:00
Michael Mayer
650cfd28d7 UX: Update "albums" and "empty album" icons 2020-12-31 10:23:08 +01:00
Michael Mayer
06f80f8702 Metadata: Reduce exiftool log level 2020-12-30 19:20:05 +01:00
Michael Mayer
4e91771afd Tests: Update fixtures and folder test 2020-12-30 18:12:30 +01:00
Michael Mayer
fd4cf7b598 UX: Move folders next to Library in navigation & fix folder icon 2020-12-30 18:10:20 +01:00
Michael Mayer
884839331a Frontend: Improve album UX
Moves albums to the top next to photos, and replaces album icons.
2020-12-30 16:07:03 +01:00
Michael Mayer
d4139d6a78 Metadata: Fix reading ExifTool sidecar files #755 #759 2020-12-30 14:49:35 +01:00
Michael Mayer
f7e7073f35 Metadata: Rename metadata.go to mediafile_meta.go #755 #759 2020-12-30 13:36:23 +01:00
Michael Mayer
8cfabe3205 Metadata: Cache ExifTool JSON by original file hash #755 #759 2020-12-30 13:33:47 +01:00
Michael Mayer
29a57fd846 Settings: Add estimate feature flag #622 2020-12-30 11:11:58 +01:00
Michael Mayer
91acaaa573 Index shorter keywords in languages like Chinese #746
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-27 16:37:28 +01:00
Michael Mayer
13bd176f0f Albums: Handle missing entries and pure emoji titles
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-27 13:11:08 +01:00
Michael Mayer
4ac0ef3556 Indexer: Improve merging and performance
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-27 07:43:39 +01:00
Michael Mayer
fd53d30caa Indexer: Reset photo quality after merging
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-26 23:08:08 +01:00
Michael Mayer
bfadc9fd6c Config: Add info log for case-insensitive file systems
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-26 18:30:04 +01:00
Michael Mayer
02722ab861 Config: Detect case-insensitive file systems
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-26 18:06:54 +01:00
Michael Mayer
4cc812fc65 Config: Fix settings loading in non-public mode
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-25 20:30:18 +01:00
Michael Mayer
d430ae24ee Indexer: Fix JSON sidecar creation using Exiftool
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-25 20:29:06 +01:00
Michael Mayer
45c0e2f60d Folders: Fix title capitalization #737
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-25 14:31:06 +01:00
Michael Mayer
837fc495f9 Metadata: Ignore invalid Exif GPS coordinates #736
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-23 18:43:52 +01:00
Michael Mayer
b433c630ed Metadata: Fix negative time offsets in timestamps with zone #727 2020-12-22 09:43:19 +01:00
Michael Mayer
8859a23fd8 Metadata: Add iPhone X mov example JSON file #727
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-22 09:28:52 +01:00
Michael Mayer
2ed6880270 Metadata: Add support for CreationDate in ExifTool JSON files #727 2020-12-22 07:47:16 +01:00
Michael Mayer
bc535b6248 Metadata: Support time zones in ExifTool JSON files #727 2020-12-22 01:52:36 +01:00
Michael Mayer
1ad8eb343d Photo: Omit Stack property in YAML files if 0 2020-12-21 18:43:31 +01:00
Michael Mayer
adfd347791 Config: Update command flag help 2020-12-21 15:16:27 +01:00
Michael Mayer
51c36e3fe4 Config: Update command flag help 2020-12-21 15:00:18 +01:00
Michael Mayer
30231ccc74 Albums: Remove YAML backup files when running photoprism reset 2020-12-21 14:05:02 +01:00
Michael Mayer
12cb89eca5 Stacks: Use "Stackable" int8 instead of "Unstacked" bool #616 #667 2020-12-19 19:15:32 +01:00
Michael Mayer
7b5ae77e61 Search: Reduce chroma threshold for mono filter to 0 #596 2020-12-19 01:56:00 +01:00
Michael Mayer
5f94f023ef API: Refactor ACL 2020-12-19 01:54:48 +01:00
Michael Mayer
651c4f12c1 API: Re-add /api/v1/config endpoint 2020-12-19 01:54:29 +01:00
Michael Mayer
de955f8fc6 UX: Add Downscaling and RAW Conversion options to Advanced Settings tab 2020-12-19 01:11:22 +01:00
Michael Mayer
a067fe46ec UX: Add global server config options tab to Settings UI 2020-12-18 20:42:12 +01:00
Michael Mayer
43714c00d5 UX: Refactor Library UI 2020-12-18 13:05:48 +01:00
Michael Mayer
0925d7179c UX: Refactor Settings UI 2020-12-18 10:59:21 +01:00
Michael Mayer
7940786ce9 UX: Refactor config options to be more intuitive
Make sure to update your local config files when upgrading as
the name of some config values has changed. The default
config path has changed from "settings" to "config".
2020-12-18 09:11:42 +01:00
Michael Mayer
449fb7a2c1 Backup and restore albums from YAML files #567 2020-12-17 18:24:55 +01:00
Michael Mayer
859e4f7d8c Indexer: Set a default color for photos with multiple files #715 2020-12-17 12:32:53 +01:00
Michael Mayer
3d7c9323d8 Indexer: Improve color & chroma classification #596 2020-12-17 11:47:31 +01:00
Michael Mayer
1f386533cf Indexer: Use lookup table to prioritize metadata sources 2020-12-17 10:23:17 +01:00
Michael Mayer
5a801f442d Frontend: Fix layout of live photos in landscape orientation 2020-12-16 15:52:44 +01:00
Michael Mayer
37f79324ce Language dropdown: Don't translate locales #712 2020-12-16 13:27:44 +01:00
Michael Mayer
a5b9bc695e Indexer: Update picture dates derived from file names 2020-12-16 12:50:53 +01:00
Michael Mayer
717da1bd34 Downloads: Configure file name schema #675
There is no UI for this setting yet.
2020-12-16 11:59:16 +01:00
Michael Mayer
373578b9a9 Additional translations: Workaround for backend & date library #710 2020-12-15 20:44:18 +01:00
Michael Mayer
cd38e507f9 Additional translations: Workaround for backend & date library #710 2020-12-15 20:41:53 +01:00
Michael Mayer
28880e682d Database: Improve config and SQL queries 2020-12-15 20:14:06 +01:00
Michael Mayer
6b38a06bf5 Logs: Reduce http recover log level to debug 2020-12-15 17:43:05 +01:00
Michael Mayer
0999eca362 Search: Use | as OR separator 2020-12-14 22:57:07 +01:00
Michael Mayer
387452858e Indexer: Use mutex when saving photos to avoid concurrency issues 2020-12-14 20:56:33 +01:00
Michael Mayer
c2e5663da0 Indexer: Add folder albums while indexing 2020-12-14 20:37:54 +01:00
Michael Mayer
430d16bf95 Indexer: Find existing camera via slug, return unknown camera by default 2020-12-14 19:24:08 +01:00
Michael Mayer
5383553cd1 Moments: Update folder search filter when path changes 2020-12-14 14:11:14 +01:00
Michael Mayer
35659f25cf Indexer: Improve logging and locking 2020-12-14 13:31:18 +01:00
Michael Mayer
c6dd1c608d Search: Use quotes for serializing strings containing ":" 2020-12-14 10:35:37 +01:00
Michael Mayer
e3190a9f3f Videos: Don't transcode the same file twice #703 2020-12-14 09:23:07 +01:00
Michael Mayer
1321192eff Search: Ignore escaped ":" in query parser 2020-12-14 09:21:29 +01:00
Michael Mayer
43e324700b Indexer: Avoid adding the same entity simultaneously 2020-12-13 15:43:01 +01:00
Michael Mayer
801dc49dd7 Settings: Add "delete" feature flag and share page title #167 2020-12-13 14:53:26 +01:00
Michael Mayer
ce471de921 Indexer: Refactor photo merge #616 2020-12-12 22:02:14 +01:00
Michael Mayer
7bae7edf50 Videos: Set explicit content type header for MPEG-4 AVC #603 2020-12-12 17:53:19 +01:00
Michael Mayer
473566f404 Videos: Enforce transcoding to MPEG-4 AVC #603 2020-12-12 17:20:31 +01:00
Michael Mayer
fe72a1ab52 Frontend: Improve sharing UX 2020-12-12 15:13:16 +01:00
Michael Mayer
73a00efae8 Workaround for bad image rotation in Exif headers #637 2020-12-12 13:05:58 +01:00
Michael Mayer
03d3dd0f02 Unstack related sidecar files #616 2020-12-12 11:08:53 +01:00
Michael Mayer
6b9d0ce584 Indexer: Don't merge edited photos 2020-12-12 08:14:44 +01:00
Michael Mayer
468e177cd3 Indexer: Ignore sequential names for single photos 2020-12-11 23:45:12 +01:00
Michael Mayer
645df39c33 Fix RenameSidecars test 2020-12-11 23:28:52 +01:00
Michael Mayer
9fe9ca747f Indexer: Improve unstacking of single files 2020-12-11 23:09:06 +01:00
Michael Mayer
9f4066edb6 Indexer: Improve stacking and indexing of moved files 2020-12-11 22:09:11 +01:00
Michael Mayer
8a86fbc60f Indexer: Update index after renaming related sidecar files 2020-12-11 19:39:42 +01:00
Michael Mayer
424c0ce616 Indexer: Automatically rename related sidecar files 2020-12-11 19:17:07 +01:00
Michael Mayer
04c17fb77b Indexer: Improve stacking settings and merging 2020-12-11 17:21:13 +01:00
Michael Mayer
8f80026b3e Database: Add restore command 2020-12-11 13:52:34 +01:00
Michael Mayer
20feb6f0a0 Database: Add backup command and make config more compatible #460 2020-12-11 12:46:28 +01:00
Michael Mayer
d82a0ab525 Indexer: Don't optimize merged photos
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-09 22:15:10 +01:00
Michael Mayer
fe9884331f make fmt
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-09 21:49:41 +01:00
Michael Mayer
0d16e31154 Albums: Disable date update queries on SQLite #692 2020-12-09 21:44:39 +01:00
Michael Mayer
c0fb3deb06 Indexer: Stack photos while optimizing 2020-12-09 21:44:04 +01:00
Michael Mayer
382e001053 Albums: Improve update queries 2020-12-09 13:36:01 +01:00
Michael Mayer
004400b118 Albums: Improve folder indexing 2020-12-09 13:10:21 +01:00
Michael Mayer
b7cd2facb9 Indexing: Use fallback for MySQL to improve performance on MariaDB #599 2020-12-09 13:08:55 +01:00
Michael Mayer
5645cb1d0e Albums: Update folder album slug when path changes
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-09 00:44:33 +01:00
Michael Mayer
5096e6201d Indexer: Show folder names while indexing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-09 00:07:11 +01:00
Michael Mayer
ee49073cf2 Albums: Improve UX and indexing 2020-12-08 22:40:13 +01:00
Michael Mayer
466a1bc3dd Albums: Hide empty folder albums after re-indexing #684 2020-12-08 19:47:27 +01:00
Michael Mayer
a43f8be231 Stacks: Repair merge query #681 #667 #593 2020-12-07 17:51:35 +01:00
Michael Mayer
63a8dbf4ce Stacks: Improve advanced indexing options #681 #667 #593 2020-12-07 17:03:06 +01:00
Michael Mayer
c466291405 SQLite: Reduce worker limit to 4 to prevent locking #680 #558 #392 2020-12-07 16:20:35 +01:00
Michael Mayer
ae0af699c6 Stacks: Add advanced indexing options #681 #667 #593 2020-12-07 16:19:03 +01:00
Michael Mayer
5acc02e248 Config: Initialize storage folder with serial
To detect non-permanent storage and configuration issues.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-05 06:21:16 +01:00
Michael Mayer
846c635f22 Video: Transcoding to AVC1 #636 #513 #624 #603 #533 $440 2020-12-05 04:24:10 +01:00
Michael Mayer
0b16a67c90 WebDAV: Sync video files #504 2020-12-05 02:18:45 +01:00
Michael Mayer
56851f4892 WebDAV: Add timeout for fetching directories #664 2020-12-05 01:24:33 +01:00
Michael Mayer
604f110277 Metadata: Add test case for bad Exif rotation #637 2020-12-05 00:46:54 +01:00
Michael Mayer
d0f8c577b3 Indexer: Add optimize command & automatically fix location data #546 2020-12-05 00:13:44 +01:00
Michael Mayer
6d791f8a59 Indexer: Improve logging #546 2020-12-04 23:16:22 +01:00
Michael Mayer
c4a94f8135 Indexer: Update changed Exif metadata #563 2020-12-04 22:06:23 +01:00
Michael Mayer
e77fefd78f Indexer: Improve stacking SQL #576 2020-12-04 20:33:17 +01:00
Michael Mayer
902aacece9 Indexer: Merge identical photos (stack files) #576 2020-12-04 19:51:51 +01:00
Michael Mayer
390dc7f7e5 Refactor backend api package 2020-12-04 13:10:32 +01:00
Michael Mayer
b3abe6840a Config: Create settings.yml if it doesn't exist 2020-12-04 12:15:59 +01:00
Michael Mayer
b7876711ad Fallback to backup path if storage path is not defined or writable 2020-12-04 11:37:31 +01:00
Michael Mayer
3464bf35ed Config: Add backup path parameter 2020-12-04 11:02:19 +01:00
Michael Mayer
8ea5a882b4 Backend: Add filename search filter
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-03 21:07:38 +01:00
Michael Mayer
3992785095 Backend: Update location test 2020-12-02 07:53:44 +01:00
Michael Mayer
7134266794 Backend: Update geolocation api url and tests 2020-12-02 00:18:56 +01:00
Simon Waldherr
f10459c447
Backend: Add comments (#562) 2020-11-22 10:38:45 +01:00
Michael Mayer
dfd9cb53ac Update link entity test #621
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-22 03:22:21 +01:00
Michael Mayer
49a299b3b0 Fix links with expiration #621
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-22 03:12:31 +01:00
Michael Mayer
cfa369cf17 Backend: Clear folder cache after indexing #623
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-22 01:30:48 +01:00
Michael Mayer
25e88bb1fc Use mutex when extracting Exif metadata #600
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-21 23:43:53 +01:00
Michael Mayer
59a806c685 Indexer: Fix purge and restore of RAW files #568 #614
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-21 23:28:03 +01:00
Michael Mayer
590350a6dd Backend: Fix logging in File.Rename() #568 2020-11-21 18:33:19 +01:00
Michael Mayer
8516c749b7 Fix search for folders with special characters in their name #581 #587
This will remove the ability to search for multiple folders.
2020-11-21 18:32:04 +01:00
Michael Mayer
5daa689975 Backend: Format go imports 2020-11-21 18:08:41 +01:00
Michael Mayer
668025c050 Fix album cover after update #575 2020-11-21 18:05:20 +01:00
Michael Mayer
ef316c98b7 Implement batch approve #489 2020-11-21 17:36:41 +01:00
Michael Mayer
1ad2d53e16 Indexer: Recover all missing files #568 2020-11-21 15:43:13 +01:00
Michael Mayer
a45aca5da9 Indexer: Improve log messages for purge #568 2020-11-20 17:41:44 +01:00
Michael Mayer
7d87062436 Indexer: Fix handling of renamed and previously missing files #568 2020-11-20 17:25:46 +01:00
Michael Mayer
edb52b85a4 Backend: Use version 0.0.0 for all tests 2020-11-16 19:39:40 +01:00
Michael Mayer
df3b125f27 Import: Create thumbs for related JPEG files #602 2020-11-15 15:55:02 +01:00
Michael Mayer
28f59947df Indexer: Update index when files were renamed #568 2020-11-15 15:15:56 +01:00
Michael Mayer
068d38820f Indexer: Reset file lookup table if count changes #568 2020-11-15 13:40:21 +01:00
Michael Mayer
2bad5b3cdd Backend: Wrap SQL select for MySQL 8 #599
In MySQL, you can't modify the same table which you use in the
SELECT part (DELETE and UPDATE with subquery):
https://dev.mysql.com/doc/refman/8.0/en/update.html

We need to verify how this affects large photo libraries
as it probably "breaks" the query optimizer. So might lead to
bad performance as well as high CPU and/or memory usage.
2020-11-15 12:15:14 +01:00
Michael Mayer
e22e6c6d37 Indexer: Improve duplicate detection #568
Only non-sidecar files in the originals folder will be added to the
duplicates table to avoid side effects.
In addition, the duplicates table is cleaned before and after indexing.
2020-11-15 10:31:46 +01:00
Theresa Gresch
67287a2d57 Backend: Add testdata 2020-10-27 09:30:20 +01:00
Michael Mayer
0a5b460295 Backend: Label minivans as car
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-25 16:54:45 +01:00
Michael Mayer
c048a71716 Improve comments for MediaFile.RelatedFiles() #560
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-21 07:39:25 +02:00
Michael Mayer
28ec2df70f Limit number of default workers when using SQLite #558
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-21 07:33:24 +02:00
Michael Mayer
458dfcefdc Strict matching for related files when stripSequence is false #560
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-21 07:25:19 +02:00
Theresa Gresch
ce4960e2b8 Backend: Add unit tests 2020-10-20 12:06:16 +02:00
Theresa Gresch
f38434dfb0 Backend: Add unit tests 2020-10-20 11:05:02 +02:00
Theresa Gresch
c72ddbedcb Backend: Add unit tests 2020-10-20 10:07:27 +02:00
Theresa Gresch
7b9f21207e Backend: Add tests for entity 2020-10-20 09:25:19 +02:00
Theresa Gresch
b19e01396a Backend: Add tests for entity 2020-10-19 17:06:09 +02:00
Theresa Gresch
1cd2dfbd22 Backend: Add tests for api 2020-10-19 16:11:42 +02:00
Michael Mayer
5bafb17c4b Metadata: Sanitize keywords, subject & artist #490
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-19 11:50:54 +02:00
Michael Mayer
45f1a34018 Backend: Use constants for home dir and path separator
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-19 09:52:52 +02:00
Michael Mayer
c288dc37a9 Backend: Fix test logging
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-13 23:13:18 +02:00
Michael Mayer
fc9e3d1c58 Config: Improve docker-compose.yml examples
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-09 15:25:46 +02:00
Michael Mayer
3b02449903 Backend: Fix config tests
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-09 11:35:05 +02:00
Michael Mayer
bd44d9cb77 Backend: Fix typo
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-08 09:02:38 +02:00
Michael Mayer
5fa47652ee Backend: Refactor config initialization
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-08 08:52:03 +02:00
Michael Mayer
95e51a9754 Config: Refresh expired sessions on startup
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-07 12:47:12 +02:00
Michael Mayer
13383ac701 Config: Don't error if settings path does not exist #535
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-07 12:22:45 +02:00
Michael Mayer
4e172c450a Improve feedback form
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-05 07:40:11 +02:00
Michael Mayer
b87e860444 Add feedback form
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-04 22:22:53 +02:00
Michael Mayer
4fc693fb0b Permanently delete non-primary files #435
This is a fix for unstacking issues in certain situations. More general
photo delete functionality will be added later, see #167.

Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-04 14:21:40 +02:00
Michael Mayer
2e51e84605 Backend: Index camera make & model for video files #506 2020-10-04 12:47:53 +02:00
Michael Mayer
9826e57149 Docker: Refactor images to be more compatible with prod environments #411 #468
You should now be able to provide UMASK, UID and GID as environment variables
when using our production images. Work in progress.
2020-10-04 11:23:01 +02:00
Michael Mayer
78f2470421 Backend: Refresh api keys and send to frontend
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-10-04 04:47:54 +02:00
Michael Mayer
46b9239026 Backend: Refactor user entity and add pro package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-10-03 13:50:30 +02:00
Phil Davis
c90f19ec21
Fix minor typos 2020-10-01 16:00:43 +05:45
Theresa Gresch
c5b657ba05
Merge pull request #503 from nvllsvm/optimize
Optimize images
2020-09-30 10:48:40 +02:00
Theresa Gresch
f8e2b5800f Backend: Add testdata for json files belonging to videos with information about camera 2020-09-23 16:36:55 +02:00
Andrew Rabert
443789a7e0 Optimize images
Used:
- `oxipng --zopfli --opt max`
- `jpegoptim --all-progressive`
2020-09-21 17:40:58 -04:00
Michael Mayer
226f218f80 Backend: Count login attempts and localize error messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 09:40:35 +02:00
Michael Mayer
6d58b76394 Backend: Remove GlobalUID from Address entity
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 08:55:33 +02:00
Michael Mayer
b81b8e62cd Backend: Add "qrf" to unwanted descriptions
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 03:54:40 +02:00
Michael Mayer
d38c84bbfb Update trademark
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 02:48:22 +02:00
Michael Mayer
02c3cdc8b9 Backend: Code clean-up in album download API
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-20 19:14:50 +02:00
Michael Mayer
dc8640ca2b Person: Revert previous commit
EulaSigned might cause confusion as it's commonly used for proprietary software.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-17 19:20:12 +02:00
Michael Mayer
48ec25bcba Person: Add EulaSigned date field
Users might need to accept terms & conditions when using external services / APIs.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-16 18:14:09 +02:00
Michael Mayer
9950bc9975 Person: Rename UserActive to IsActive #98 #144
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-16 16:44:20 +02:00
Michael Mayer
a44351f332 Person: Refactor / rename entity fields #98 #144
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-16 16:24:03 +02:00
Michael Mayer
d18414e468 Person: Rename optional UserUUID to GlobalUID #98 #144
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-16 15:35:35 +02:00
Michael Mayer
3af6e9b83e Frontend: Update user model #98 #144
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-13 18:10:31 +02:00
Michael Mayer
84b17194af Backend: Refactor person entity #98 #144
Database column types are now UPPERCASE so that developers can easily recognize them. After upgrading to GORM 2.0, we can use generic types instead.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-13 17:51:43 +02:00
Michael Mayer
a071642629 Backend: Refactor person entity fields #144
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-07 17:10:43 +02:00
Michael Mayer
01c4b483dd Backend: Refactor person entity for smaller db row size #144
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-07 12:18:12 +02:00
Andreas Rammhold
2a827739e0
Backend: stream album ZIP files (#492)
ZIP files generated for albums will no longer be written to disk prior
serving them to users. The zip file will be written directly into the
HTTP response.
2020-09-06 14:58:08 +02:00
Michael Mayer
641ffd397d Backend: Add signature to PhotoPrism Places API requests
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-06 14:48:09 +02:00
Michael Mayer
33888fd231 Backend: Add credentials and extend person entity #98 #144
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-06 14:18:40 +02:00
Michael Mayer
53c48cd570 Config: Remove deprecated "sidecar-hidden" flag #488
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-06 12:42:38 +02:00
Michael Mayer
6577d99363 Postgres: Add docker-compose.postgres.yml, see #47
Postgres support additionally requires a GORM upgrade to 2.0 (v1.20) as the current version doesn't support generic column types like "bytes" (VARBINARY in MySQL, different in Postgres and other SQL dialects).

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-06 12:38:23 +02:00
Michael Mayer
7d95a2cd5d Improve sidecar config hints #488
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-06 12:26:25 +02:00
Michael Mayer
b39d660686 Exif: Fallback to SearchFileAndExtractExif for broken JPEG files #469
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-28 09:27:25 +02:00
Michael Mayer
b476916936 Restore initial admin password when running photoprism reset
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-19 15:36:31 +02:00
Michael Mayer
b3bb2883fc Frontend: Disable route when PHOTOPRISM_SETTINGS_HIDDEN is true #474
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-19 12:45:26 +02:00
Michael Mayer
1c0d6cba2c Add photoprism reset command
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-19 11:35:38 +02:00
Michael Mayer
db4749a6f8 Config: Show helpful error message when a path is missing #418
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-18 19:09:46 +02:00
Theresa Gresch
7e7b53590a Backend: Add validation for valid dates in setTakenAt() 2020-08-18 10:42:09 +02:00
Michael Mayer
6e2849fba2 Index: Don't stack files based on XMP InstanceID
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-18 00:45:53 +02:00
Michael Mayer
d43d3a22e0 Backend: Improve country estimate from folder name
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-14 15:36:48 +02:00
Michael Mayer
757cfc4bfb RAW: Index CR3 metadata and use custom RawTherapee profile #445
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-12 20:12:04 +02:00
Theresa Gresch
68d490c975 Backend: Add new stopword 2020-08-12 19:14:01 +02:00
Michael Mayer
ebe5143fc6 RAW: Render CR3 files using Rawtherapee 5.8 #445
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-12 13:16:25 +02:00
Michael Mayer
336ad3e751 Backend: Rename test files #442
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-12 04:39:05 +02:00
Michael Mayer
e0eaa72843 Backend: Fix nil pointer panic in RelatedFiles() #454
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-12 03:36:49 +02:00
Michael Mayer
3ffe74a7d6 Metadata: Revert tests after upgrading go-exif #431
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-07 10:38:40 +02:00
Michael Mayer
d2eccd00c0 Metadata: "Fix" broken tests after upgrading go-exif #431
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-06 15:50:18 +02:00
Michael Mayer
7c18863287 Metadata: Disable additional broken tests #431
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-06 11:06:25 +02:00
Michael Mayer
b232d374ad Metadata: Update Exif tests and dependencies #431
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-06 10:55:15 +02:00
Michael Mayer
28595497b1 Backend: Limit place estimates to 36h time difference
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-24 14:06:26 +02:00
Michael Mayer
91a1a1ca27 Backend: Ignore image unique IDs that are not standard UUIDs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-23 15:34:20 +02:00
Michael Mayer
fc9442b6a3 Index: Don't expose full directory names in logs #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-21 15:01:46 +02:00
Michael Mayer
7d00e68d92 Index: Refactor mime type detection #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-21 14:43:45 +02:00
Michael Mayer
710888c59f Darktable: Disable presets by default
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-21 12:18:53 +02:00
Michael Mayer
d20d9c50dd Metadata: Upgrade go-exif v3
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-21 10:52:39 +02:00
Michael Mayer
ab6228fb9a Index: Skip empty files #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-21 10:44:41 +02:00
Michael Mayer
4cda0fd9a8 Backend: Adjust metadata log levels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 23:29:14 +02:00
Michael Mayer
a01e54070d Index: Skip duplicates and handle files with wrong extension #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 19:48:31 +02:00
Michael Mayer
5839bc9c79 Metadata: Add test jpeg with "slice bounds out of range" error
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 13:53:08 +02:00
Michael Mayer
0da72687e6 Backend: Add Huawei P10 models to camera model lookup table
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 13:03:14 +02:00
Michael Mayer
cd7cd064b6 Backend: Add Huawei Mate models to camera model lookup table
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 12:43:57 +02:00
Michael Mayer
54c8a25ff8 Index: Also compare camera serial before stacking a file
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 12:32:50 +02:00
Michael Mayer
b14bddca9d Backend: Index xmp error messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 11:40:55 +02:00
Michael Mayer
8ebb6b85ed Backend: Index file error messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 11:39:16 +02:00
Michael Mayer
9a2b75781e Backend: Adjust log levels and messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 11:29:38 +02:00
Michael Mayer
5118d3a604 Index: Shorten restore log message #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 10:52:28 +02:00
Michael Mayer
334e5ff0d3 Index: Refactor skipping for improved performance #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 10:13:04 +02:00
Michael Mayer
3f46f95894 Index: Use automatically detected relative name #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 09:31:01 +02:00
Michael Mayer
48407b4526 Tweak indexing of related files #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-19 19:28:41 +02:00
Michael Mayer
f8170e30c7 Index: Remove main files from related files list #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-19 17:43:54 +02:00
Michael Mayer
f0cfe5ff3a Index: Skip with continue, not return nil #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-19 17:33:40 +02:00
Michael Mayer
d3f3b24ba3 Event Hub: Use NonBlockingSubscribe to avoid deadlocks #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-19 16:48:04 +02:00
Michael Mayer
138dabd0c8 Metadata: Use mime type to determine file format and exif parser #391
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-19 16:39:43 +02:00
Michael Mayer
0023fdb1e2 Fix indexing aborts when encountering broken symlink #414
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-19 14:45:49 +02:00
Michael Mayer
24cfa1aea2 Backend: Refactor file indexing / skipping
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 20:58:35 +02:00
Michael Mayer
ee8d9ad919 Show max cached thumbnail size if uncached is disabled #413
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 17:33:02 +02:00
Michael Mayer
df0868e3d3 Backend: Adjust log levels and messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 16:54:13 +02:00
Michael Mayer
ff56de1ab2 Backend: Adjust log levels and messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 15:40:05 +02:00
Michael Mayer
28ff51d5cf Backend: Adjust log levels and messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 13:21:43 +02:00
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