Commit graph

2250 commits

Author SHA1 Message Date
theresa
98eed14859 Tests: Add unit tests 2022-03-29 11:33:21 +02:00
theresa
8f122c6a54 Tests: Add test cases for AND and OR search 2022-03-29 11:23:04 +02:00
theresa
d92f6d6e43 Tests: Refactor tests 2022-03-29 11:22:36 +02:00
theresa
4d7584a486 Tests: Add fixtures 2022-03-29 11:21:45 +02:00
Michael Mayer
686a8ab9b4 Search: Refactor photo search, fix test data and unit tests #1994 2022-03-29 00:21:50 +02:00
theresa
2150771b35 Tests: Add unit tests 2022-03-28 19:04:01 +02:00
Michael Mayer
58d7a535c6 Search: Update photos_filter_albums_test.go and file fixtures #1994 2022-03-28 18:43:35 +02:00
Michael Mayer
9e46a66f24 Search: Make special character escaping compatible with SQLite #1994 2022-03-28 17:36:59 +02:00
theresa
e693fad8dc Tests: Add unit tests for camera and lens filter #2079 2022-03-28 16:25:40 +02:00
theresa
e6e824c754 Tests: Refactor unit tests 2022-03-28 16:18:47 +02:00
Michael Mayer
8e9406153a make fmt-go 2022-03-28 16:16:18 +02:00
Michael Mayer
2f5d1fea50 Config: Refactor initSettings() and initHub()
This prevents redundant initialization when called repeatedly.
2022-03-28 16:13:41 +02:00
Michael Mayer
39b0530313 Metadata: Skip brute-force search if no Exif headers were found #2196 2022-03-28 15:57:29 +02:00
theresa
50ae86aeb5 Tests: Refactor unit tests 2022-03-28 14:42:13 +02:00
theresa
5ebf9fd583 Tests: Add unit tests for photo search 2022-03-28 14:25:39 +02:00
theresa
2912122747 Tests: Add album fixtures 2022-03-28 14:25:03 +02:00
Michael Mayer
72d6af6674 CLI: Add short names for common command parameters/flags #2195 2022-03-28 13:45:29 +02:00
Michael Mayer
9e640a7dc8 Search: Restore commented out test assertions #1994
Adds comment "Needs review, variable number of results." instead.
2022-03-28 12:14:05 +02:00
Theresa Gresch
ca0c771826 Tests: Add unit tests for photo search 2022-03-28 11:28:42 +02:00
Theresa Gresch
3ff00c65c5 Tests: Add album fixtures 2022-03-28 11:21:24 +02:00
Michael Mayer
736b03f87f WebDAV: Improve update and reset of remote connection errors #1781 2022-03-27 21:37:11 +02:00
Michael Mayer
aaaef5712e WebDAV: Prevent two-way file sync, default to download #1785 2022-03-27 12:49:23 +02:00
Michael Mayer
e77a029f13 Search: Improve input sanitation and filter queries #1994 #2079 #2181 2022-03-25 18:01:34 +01:00
Michael Mayer
680686185f Metadata: Improve parsing of (incomplete) timestamp strings #625 #2133 2022-03-25 16:31:09 +01:00
Michael Mayer
0e7fec1cec Albums: Shorten title and slug to avoid "data too long" error #2181
Related GitHub Discussions:
 - https://github.com/photoprism/photoprism/discussions/2151
 - https://github.com/photoprism/photoprism/discussions/2179
2022-03-24 21:46:25 +01:00
Michael Mayer
9d110e8b80 Search: Improve album, albums, lens, and camera filters #1994 #2079
Camera and lens can now also be searched by name. Escaping and parsing
of albums has been improved so that albums whose names start with and/or
contain numbers will be found.
2022-03-24 18:30:59 +01:00
Michael Mayer
fdf3d26277 Darktable: Disable CR3 until fully supported by Debian #445 #1632
Even with the latest Darktable 3.8.1 in Debian 12 "Bookworm" CR3 does
not seem to be supported. Probably this is due to an outdated or
incompatible library that needs to be updated by the Debian team first.
2022-03-23 13:31:23 +01:00
Michael Mayer
8c589e3649 Videos: Improve Nvidia hardware transcoding support #2125
- successfully tested with NVIDIA Quadro P620 and driver v470.103.01
- the host Linux kernel should run the same driver version Make sure to
- driver names in PHOTOPRISM_FFMPEG_ENCODER have been simplified
- share /dev/nvidia* as shown in our new docker-compose.yml example
2022-03-23 13:27:25 +01:00
Michael Mayer
d0beab3f09 Config: Update expected flags in config_test.go and client_test.go 2022-03-16 17:41:50 +01:00
Michael Mayer
9301a4bb10 Config: Add test and demo flags 2022-03-16 17:34:09 +01:00
Michael Mayer
6bebf9043b Config: Add Docker env string to backend requests (develop, prod)
For easier debugging so that development environments can be identified.
2022-03-02 14:16:49 +01:00
Michael Mayer
3d9cb51641 Darktable: Set explicit cache and config path, log exact commands #2076 2022-03-02 12:20:02 +01:00
Michael Mayer
893810f82f Metadata: Read Zulu formatted timestamps from Exiftool JSON #2082 2022-02-28 19:12:54 +01:00
Michael Mayer
c256664a1b WebDAV: Fix upload of complete albums #1376 2022-02-27 17:32:54 +01:00
Michael Mayer
00739770d7 Config: Improve database related flag descriptions 2022-02-23 15:59:13 +01:00
Michael Mayer
e512dcef67 Tests: Don't trigger fatal error if cache path is not empty 2022-02-23 15:16:45 +01:00
Michael Mayer
9c1325f38e MariaDB: Connect via Unix domain socket if address starts with "/" 2022-02-23 15:08:28 +01:00
Michael Mayer
1f47a3e2b8 Docker: Update default site caption and fix demo template 2022-02-23 14:24:50 +01:00
Michael Mayer
fec195333c Config: Improve faces options flag documentation #2062 2022-02-23 13:26:53 +01:00
Michael Mayer
c853b3cd2d Backend: Shorten source file headers and normalize email addresses 2022-02-21 15:30:18 +01:00
Krassimir Valev
92b9423d9f
People: Remove unused face detector property (#2007) 2022-02-20 19:41:58 +01:00
Michael Mayer
6c4fc42415 API: Add Explicit Cache Header for Existing Thumbs #822 2022-02-20 17:36:51 +01:00
Michael Mayer
1d6ab8bd69 Logs: Reduce logs levels of cover and count updates 2022-02-19 19:59:28 +01:00
Michael Mayer
9cfb383867 Config: Improve error messages in TestConfig_ClientConfig 2022-02-19 17:20:48 +01:00
Michael Mayer
b29ab34e9a Config: Update fs_test.go and fs/dirs.go after upgrading dev base image 2022-02-19 17:12:39 +01:00
Michael Mayer
2cd71ebb9d RAW: Remove .cr3 ext from darktable blacklist #445 #1632 2022-02-19 15:34:20 +01:00
Michael Mayer
4247066c1b Docker: Reduce image layers and improve build scripts 2022-02-19 15:32:52 +01:00
Michael Mayer
5add962ae0 RAW: Re-add CR3 to Darktable's blacklist (still causing errors) #445 2022-02-16 18:43:58 +01:00
Michael Mayer
fdb4c0f9b6 RAW: Remove CR3 from Darktable's blacklist after upgrading to 3.8 #445 2022-02-16 18:11:28 +01:00
Michael Mayer
7c4241fbea Config: Add "imprint" option to display legal info in the footer #1990 2022-02-08 14:41:03 +01:00
Michael Mayer
070988d0f4 Edit Dialog: Improve display of metadata in the files tab #2017 2022-02-07 12:41:11 +01:00
Michael Mayer
8a0e72db66 Exif: Change EXIF to Exif in comments 2022-02-02 17:41:45 +01:00
Michael Mayer
62f5a5f5f0 Exif: Stop search if no header was found in PNG, TIFF, and HEIF 2022-02-02 17:39:16 +01:00
Michael Mayer
01274d6953 Backend: Update sponsor message in config.go 2022-01-29 13:43:47 +01:00
Michael Mayer
448a7e652e Config: Improve command parameter/flag descriptions 2022-01-27 09:17:23 +01:00
Michael Mayer
8b2e1732d6 People: Fix typo in faces optimize command #1957 2022-01-20 11:10:26 +01:00
Michael Mayer
28e3b37944 Config: Reduce RecommendedMem from 5 to 3 GB #1921
This allows servers with 4 GB to run more than one worker if needed.
2022-01-20 11:03:27 +01:00
Paulo Matos
0528a6541b
Places: Fix typo in "not found" log message (#1956)
Fixing simple typo : s/no/not
2022-01-19 16:44:50 +01:00
Michael Mayer
eeee5973ad MariaDB: Alter albums.album_filter to VARBINARY(767) and add index #1953
Using a migration for testing on develop so nothing breaks (yet).
2022-01-18 17:34:28 +01:00
Michael Mayer
76c94a1f38 Frontend: Fix other assertions in TestClientManifestUri #1648
Actual name depends on the filesystem timestamp.
2022-01-18 12:48:02 +01:00
Michael Mayer
0caa6992e5 Frontend: Fix TestClientManifestUri #1648 2022-01-18 12:39:21 +01:00
Michael Mayer
9c0a47b8bc Videos: Stream directly without CDN and fix content header #1648 #1937 2022-01-18 12:28:27 +01:00
Michael Mayer
03457bdb75 Frontend: Refactor asset loading #1648 2022-01-18 12:26:33 +01:00
Michael Mayer
76ee491d1c Config: Update config option description for "database-server" 2022-01-17 19:05:27 +01:00
Michael Mayer
4d8292a9c3 Videos: Exclude API from gzip compression #1937 2022-01-17 18:57:09 +01:00
Michael Mayer
62ca7f1e1f Logout: Redirect to base URI instead of "/" #1901 2022-01-17 18:52:35 +01:00
Michael Mayer
ff41a94051 Search: Fix query string substitutions and sanitation #1930 2022-01-17 16:07:31 +01:00
Michael Mayer
2e0c40332c Develop: Move MySQL 8 to docker-compose.mariadb.yml 2022-01-16 14:00:37 +01:00
Michael Mayer
6453d30906 Config: Improve CLI help and docker-compose.yml examples 2022-01-11 14:34:30 +01:00
Michael Mayer
1ee5c8b5f1 CLI: Improve --public and --read-only flag description
see https://github.com/photoprism/photoprism-docs/pull/100
2022-01-10 11:06:48 +01:00
Michael Mayer
006b5bb704 Code Quality: Add "gofmt -w -s pkg internal cmd" to "make fmt-go"
gofmt formats Go source code, where -s stands for "simplify"
2022-01-08 12:12:00 +01:00
Michael Mayer
f5b7ef834e Index: Prevent two primary files in photo stacks #1823 2022-01-06 14:33:49 +01:00
Michael Mayer
d03e28d88e Backups: Rename YAML "backup" files to just YAML files #1887 2022-01-06 13:21:42 +01:00
Michael Mayer
90f7afb1e7 Index: Improve related filename photo match query #1823 2022-01-06 10:09:07 +01:00
Michael Mayer
58cc89e7a4 Index: Find photo stack by filename & recover original names #1823 #1892 2022-01-06 09:55:41 +01:00
Michael Mayer
c5301a681d Search: Do not exclude stopwords when "keywords:" filter is used #1859 2022-01-05 18:51:18 +01:00
Michael Mayer
d67e325854 Config: Improve initialization, migrations, and debug logs 2022-01-05 18:15:39 +01:00
Michael Mayer
5462b1e69e Metadata: Reduce log level for missing Exif data from warn to info 2022-01-05 16:55:04 +01:00
Michael Mayer
39df843751 Search: Increase query result limit from 10000 to 25000 2022-01-05 16:48:32 +01:00
Michael Mayer
dd9d7123d9 Index: Improve indexing and unstacking of related files #1823
This commit also adds initial HDR flag extraction from metadata.
2022-01-05 16:37:19 +01:00
Michael Mayer
f6af9f7340 Thumbnails: Improve error log message when crop cannot be saved 2022-01-05 11:46:52 +01:00
Michael Mayer
58a5f94069 Backups: Rename album backups to exports and improve command help #1887 2022-01-05 11:40:44 +01:00
Michael Mayer
1cde378a76 Index: Improve stacking of related files #926 #1823 2022-01-03 17:29:43 +01:00
Michael Mayer
3515d9f266 Copyright: Update year in tests 2022-01-03 13:48:44 +01:00
Michael Mayer
8efe473d30 Copyright: Update year in source files and footer.vue 2022-01-03 13:46:52 +01:00
Michael Mayer
e858a34f3e Search: Return empty result if keywords contain stopwords only #1859 2022-01-03 13:30:34 +01:00
Michael Mayer
5f229ecb53 Albums: Exclude private pictures from downloads #1836 2022-01-03 12:51:59 +01:00
Michael Mayer
7823d7faaa Metadata: Limit file projection & color_profile to 40 ASCII chars #1830 2022-01-03 12:09:00 +01:00
Simon Rettberg
35f45f4510
MySQL/MariaDB: Turn subquery-updates into joins for better performance (#1804)
MariaDB/MySQL traditionally have performance issues for queries of
type UPDATE ... WHERE xxx IN (SELECT ...)

Instead, use JOINs which are much faster.

Signed-off-by: Simon Rettberg <simon.rettberg@rz.uni-freiburg.de>
2022-01-03 11:12:08 +01:00
aniqueta
24577aa635
Videos: Apple Video Toolbox hardware acceleration for macOS (#1843) 2022-01-03 11:08:53 +01:00
Michael Mayer
e8a1e85f14 Search: Improve query string normalization and sanitation #1814 #1820 2021-12-16 15:26:54 +01:00
Michael Mayer
2636255c95 Search: Add uid:... search filter #1820 2021-12-16 11:42:57 +01:00
Michael Mayer
d6e2537b33 Form: Improve serialize warning log message #1814 2021-12-15 12:39:02 +01:00
Michael Mayer
2dedbb83dc Sanitize: Add name, query, state, and username filters #1814 2021-12-15 12:24:05 +01:00
Michael Mayer
0f0c0aaa0b API: Improve path and filename parameter sanitation #1814 2021-12-14 20:01:39 +01:00
Michael Mayer
cce371d35a Sharing: Fix link redirect on shared domains #1617 2021-12-14 18:36:36 +01:00
Michael Mayer
4e94919030 API: Improve request parameter sanitation #1814 2021-12-14 18:34:52 +01:00
Michael Mayer
9a8144c046 Log4j: Sanitize user input in logs like filenames and album titles #1814 2021-12-14 17:07:38 +01:00
Michael Mayer
ccfa99543d Config: Add ClientConfig.SiteDomain info based on SiteUrl 2021-12-14 15:47:30 +01:00
Michael Mayer
058091fcf8 Import: Improve logs when another job is running simultaneously #1810 2021-12-14 14:08:42 +01:00
Michael Mayer
052d54f3e7 Config: Add PHOTOPRISM_DEFAULT_LOCALE Option 2021-12-12 22:09:22 +01:00
Michael Mayer
35ac1e730c Docs: Update URL 2021-12-12 20:48:05 +01:00
Michael Mayer
5a939e1bce Downloads: Update URL 2021-12-12 20:15:52 +01:00
Michael Mayer
3ae3fe29bc SQLite: Rename dialect constant to SQLite3 for consistency #319 #1791 2021-12-09 07:47:23 +01:00
Michael Mayer
9f3ebf671f SQLite: Reduce routine index maintenance log levels #1791 2021-12-09 07:41:07 +01:00
Michael Mayer
a4d5a81b97 SQLite: Rename "sqlite" to "sqlite3" to fix migrations #319 #1791 2021-12-09 07:37:49 +01:00
Michael Mayer
5be456a09f JPEG: Convert Apple "Display P3" colors to standard sRGB #1474
Other color profiles and file formats are not supported yet. Should
be easy to add though. Main difficulty will be profile name comparison:
For example "Adobe RGB (1998)" vs just "Adobe RGB".
2021-12-09 07:00:39 +01:00
Michael Mayer
1b583e071e People: Add mutex so changes don't get processed concurrently 2021-12-09 02:33:41 +01:00
Michael Mayer
4e358bbfd4 Places: Improve handling of unknown S2 cell ids 2021-12-09 01:10:15 +01:00
Michael Mayer
7fb63e7df7 Config: Change position of global config flags 2021-12-02 16:39:19 +01:00
Michael Mayer
e7e1f0d3a6 CLI: Ask to delete cache folder when running reset command #1787 2021-12-02 14:30:50 +01:00
Michael Mayer
d0a291a679 CLI: Remove "(optional)" from command argument help #1735
Should be clear enough like that.
2021-12-02 13:57:32 +01:00
Michael Mayer
333825f973 CLI: Replace [path] with [originals subfolder (optional)] in help #1735 2021-12-02 13:30:47 +01:00
Michael Mayer
2e1295e304 Config: Update log-filename flag description #1778 2021-12-02 13:21:55 +01:00
Michael Mayer
d6e5774ec7 Places: Update location_test.go #1776 2021-11-30 15:42:32 +01:00
Michael Mayer
8c7037175a Videos: Move Live Photos page to "Videos" sub-navigation #1761
As requested, live photos are not included in video search
results anymore until we find a better solution.
2021-11-30 15:38:24 +01:00
Michael Mayer
19bb0aa21e Videos: Include Live Photos in Search Results #1761 2021-11-30 12:37:43 +01:00
Michael Mayer
c7941c325c UX: Update app icon names 2021-11-29 18:12:35 +01:00
Michael Mayer
4e8b9e79e2 Albums: Code clean-up #1777 2021-11-29 15:04:13 +01:00
Michael Mayer
cb3009b045 UX: Add PNG icon files and update icon names 2021-11-29 14:57:58 +01:00
Michael Mayer
981379c2e7 Albums: Update albums_test.go #1777 2021-11-29 14:55:06 +01:00
Michael Mayer
f71aa17047 Albums: Sort regular albums by name on overview page #1777 2021-11-29 14:48:42 +01:00
Michael Mayer
65e83a9eee UX: Add app icons and use select icon on slash screen 2021-11-29 14:39:21 +01:00
Michael Mayer
7e8974fd20 MySQL 8: Improve migrate command, ignore errors when dropping indexes 2021-11-28 13:52:27 +01:00
Michael Mayer
9df31e2592 CLI: Update command descriptions, log messages and levels 2021-11-27 18:41:10 +01:00
Michael Mayer
f8d64daf00 Places: Reduce GeoJON response size 2021-11-27 09:30:29 +01:00
Michael Mayer
1eca490f74 Places: Fix sort order when searching for nearby pictures 2021-11-27 00:16:19 +01:00
Michael Mayer
9e5861bef5 Places: Always load viewer contents from API and format ISO date 2021-11-26 22:32:13 +01:00
Michael Mayer
1652f0b033 Places: Reduce viewer JSON response size 2021-11-26 21:26:44 +01:00
Michael Mayer
6c51049bf7 Places: Change sort order for showing nearby photos in viewer 2021-11-26 21:24:12 +01:00
Michael Mayer
2d350c190f Places: Only show nearby photos in viewer if > 50 results on map 2021-11-26 21:10:52 +01:00
Michael Mayer
650817a9e0 API: Add prefix to the source filename of search request handlers
Finding the right code is easier when the name matches related
functionality in other packages.
2021-11-26 14:28:50 +01:00
Michael Mayer
3e6c7052bb Places: Refactor GeoJSON API endpoint 2021-11-26 13:59:10 +01:00
Michael Mayer
34e1773595 PWA: Add square and glow app icons 2021-11-25 17:24:53 +01:00
Michael Mayer
ff66b3bccc Metadata: Remove location labels when photo doesn't have a location 2021-11-25 14:52:26 +01:00
Michael Mayer
08fe7326e5 Metadata: Make sure unknown camera and lens fixtures have an ID 2021-11-25 12:48:07 +01:00
Michael Mayer
45700e886b PWA: Update app icons 2021-11-25 11:44:31 +01:00
Michael Mayer
05f11b65d8 Metadata: Refactor EstimateLocation() function #1668 2021-11-25 09:38:59 +01:00
Michael Mayer
84bb58daa5 Metadata: Don't estimate position of non-photographic images #1668 2021-11-24 21:06:30 +01:00
Michael Mayer
a0c70941de Albums: Return error when removing duplicate moments fails 2021-11-24 17:58:08 +01:00
Michael Mayer
eafa00c54f Albums: Remove duplicate moments 2021-11-24 17:51:39 +01:00
Michael Mayer
87831c0a94 Metadata: More accurate location estimates #1668 2021-11-24 16:56:57 +01:00
Michael Mayer
80a9005510 Metadata: Don't change an existing location from an unknown source 2021-11-24 14:46:06 +01:00
Michael Mayer
22b0a44fa7 Stacks: Only merge photos with trusted time and location #1668 2021-11-24 14:32:40 +01:00
Michael Mayer
c86d57cdaf Albums: Find moments and states by slugs and filters when updating #1740 2021-11-24 13:30:43 +01:00
Michael Mayer
83746097eb Metadata: Set altitude even if coordinates are missing #1749 2021-11-24 12:49:20 +01:00
Michael Mayer
7a47177105 Database: Add migrations #319 2021-11-24 12:42:18 +01:00
Michael Mayer
32fb22c039 Months, Countries & States: Update album title and slug if needed #1664 2021-11-23 20:25:32 +01:00
Michael Mayer
45d1360c18 Metadata: Improve location estimates and UTC handling #1668 2021-11-23 19:23:10 +01:00
Michael Mayer
de72abcfa4 Places: Create and update only one place at a time #1664 2021-11-22 18:30:46 +01:00