Commit graph

460 commits

Author SHA1 Message Date
Eng Zer Jun
44f7700c0c
Enable module graph pruning and deprecate io/ioutil (#1600)
* Backend: Enable Go module graph pruning and lazy module loading

This commit applies the changes by running `go mod tidy -go=1.17` to
enable module graph pruning and lazy module loading supported by Go 1.17
or higher.

Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>

* Backend: Move from io/ioutil to io and os package

The io/ioutil package has been deprecated as of Go 1.16, see
https://golang.org/doc/go1.16#ioutil. This commit replaces the existing
io/ioutil functions with their new definitions in io and os packages.

Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2021-10-06 07:10:50 +02:00
Michael Mayer
734b01bc34
Update flags.go 2021-10-06 01:44:58 +02:00
Michael Mayer
5c89b3f16a
Update flags.go 2021-10-06 01:36:14 +02:00
Michael Mayer
22f9d653fc CLI: Improve config flag help and change command order 2021-10-05 23:34:21 +02:00
Michael Mayer
de63227767 CLI: Update help texts for commands and flags 2021-10-05 22:33:29 +02:00
Michael Mayer
f7153cdd21 People: Improve logging, command help, and handling of broken files #22 2021-10-05 18:42:39 +02:00
Michael Mayer
57aa8811fc People: Add additional face cluster config options #22 2021-10-05 10:12:48 +02:00
Michael Mayer
dae9ed9bb4 People: Improve config flag descriptions #22 2021-10-03 11:43:33 +02:00
Michael Mayer
ac70e0f324 Labels: Improve photo count accuracy for MariaDB / MySQL users #584 2021-10-01 19:23:08 +02:00
Michael Mayer
4f1d038515 People: Always drop deprecated development tables #22 2021-09-24 14:30:15 +02:00
Michael Mayer
9db8b804f3 RAW: Add "dng" to Darktable file extension blacklist defaults #1362 2021-09-24 07:44:36 +02:00
Michael Mayer
5f0336d0f7 UX: Improve "disable-tensorflow" flag description 2021-09-24 05:42:06 +02:00
Michael Mayer
cb12a1447c People: Increase default min face size to 50px #22 2021-09-24 03:00:37 +02:00
Michael Mayer
5b9315728d Config: Change field order in ClientDisable struct 2021-09-24 02:07:00 +02:00
Michael Mayer
a1822f9b19 Config: Add options to disable classification and/or facial recognition 2021-09-24 01:53:42 +02:00
Michael Mayer
b4bcfe499c People: Add min face size config option #22 2021-09-23 13:47:18 +02:00
Michael Mayer
82fccb23c4 People: Improve face overlap config flag description #22 2021-09-23 13:21:21 +02:00
Michael Mayer
ee2b49ef4b People: Add config options for face detection and clustering #22 2021-09-23 13:16:05 +02:00
Michael Mayer
b83625a653 RAW: Improve JPEG converter logging #1362 2021-09-21 16:29:03 +02:00
Michael Mayer
b081f27e17 RAW: Add File Extension Blacklists for Darktable and RawTherapee #1362 2021-09-21 15:33:46 +02:00
Michael Mayer
e8ac1abbe3 CLI: Improve "disable-ffmpeg" flag description 2021-09-21 14:11:15 +02:00
Michael Mayer
6503008cc0
People: Prepare for release #22 (#1541) 2021-09-21 12:11:51 +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
c520cb4ee4 People: Add autocomplete for selecting a person #22 2021-09-03 16:14:09 +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
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
Michael Mayer
ec792aa13a Tests: Disable TestConfig_CreateDirectories2 2021-08-29 16:32:22 +02:00
theresa
af83a51496 Tests: Add unit tests 2021-08-26 18:02:53 +02:00
theresa
3c24481750 Tests: Add tests for internal/config 2021-08-25 13:41:51 +02:00
theresa
b707f1cb0c Tests: Add tests for internal/config 2021-08-24 19:09:09 +02:00
Michael Mayer
fa8e02b430 Auth: Refactor user management commands #98 2021-08-20 00:10:26 +02:00
Michael Mayer
6a450c463e People: Add PhotoUID to Subject entity #22 2021-08-18 11:33:23 +02:00
Michael Mayer
da94e9ed0f People: Refactor faces worker and related entities #22 2021-08-16 00:29:36 +02:00
Michael Mayer
d767e50b37 People: Improve face clustering #22
Work in progress.
2021-08-12 12:05:10 +02:00
Michael Mayer
733b84a03b People: Add person entity and people count #22 2021-08-11 21:42:31 +02:00
Timo Volkmann
177367e78d Auth: add change password tests #98 2021-08-11 12:58:38 +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
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
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
87e1188c52 Config: Update command flag description for "jpeg-quality" 2021-05-01 11:15:37 +02:00
Michael Mayer
f0b627b8f6 Config: Rename DarktablePresets to RawPresets #1245 2021-05-01 10:25:34 +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
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
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
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
58005012b1 Video: Add config option for FFmpeg num_capture_buffers #703 2021-02-16 08:57:21 +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
951498be2a Config: Update testdata/settings.yml 2021-02-08 14:10:35 +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
1e023c5302 QA: Implement test mode 2021-02-06 17:04:00 +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
75fb5823b0 UX: Add early-access info dialog #700 2021-01-19 21:28:16 +01:00
Michael Mayer
bc0bde4771 UI: Add Greyscale theme #700 2021-01-15 18:30:26 +01:00
Michael Mayer
0ffdc9c457 Config: Update docker-compose.yml examples 2021-01-14 19:23:24 +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
b408538f68 HTTP: Add optional gzip compression 2021-01-10 15:30:21 +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
a808f4a5fb PWA: Add anti-cache param to manifest.json 2021-01-08 18:32:08 +01:00
Michael Mayer
92df3aa724 API: Refactor response headers #822 #846 2021-01-08 09:02:30 +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
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
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
29a57fd846 Settings: Add estimate feature flag #622 2020-12-30 11:11:58 +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
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
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
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
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
28880e682d Database: Improve config and SQL queries 2020-12-15 20:14:06 +01:00
Michael Mayer
c2e5663da0 Indexer: Add folder albums while indexing 2020-12-14 20:37:54 +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
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
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
d0f8c577b3 Indexer: Add optimize command & automatically fix location data #546 2020-12-05 00:13:44 +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
5daa689975 Backend: Format go imports 2020-11-21 18:08:41 +01:00
Michael Mayer
edb52b85a4 Backend: Use version 0.0.0 for all tests 2020-11-16 19:39:40 +01: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
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
5fa47652ee Backend: Refactor config initialization
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-08 08:52:03 +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
b87e860444 Add feedback form
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-04 22:22:53 +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
Michael Mayer
d38c84bbfb Update trademark
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 02:48:22 +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
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
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
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
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
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
1ad34478de Increase default jpeg-size to 7680 x 4320 px #388
It's easier to decrease this when you've made a mistake than the other way.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 08:30:28 +02:00
Michael Mayer
c0f10e2288 Use gettext for backend translations too
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 01:26:54 +02:00
Michael Mayer
f4e8b59c3b Rename PHOTOPRISM_CONVERT_SIZE to PHOTOPRISM_JPEG_SIZE #388
Naming more consistent with PHOTOPRISM_JPEG_QUALITY.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 14:30:19 +02:00
Theresa Gresch
f270b67632 Backend: Add unit tests for internal/config 2020-07-14 09:18:47 +02:00
Theresa Gresch
434bbd751c Backend: Add unit tests for internal/config 2020-07-14 09:18:24 +02:00
Theresa Gresch
832715f861 Backend: Improve Dsc regular expression and add test 2020-07-14 08:46:20 +02:00
Michael Mayer
b1eac027f3 Remove database DSN and init call from test config
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 20:41:16 +02:00
Michael Mayer
161b36f8a4 Refactor config and worker tests for better performance
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 20:25:47 +02:00
Theresa Gresch
119784ef2c Backend: Add unit tests for internal/config 2020-07-13 19:25:27 +02:00
Theresa Gresch
6504c7ae74 Backend: Add unit tests for internal/config 2020-07-13 18:48:56 +02:00
Theresa Gresch
6cea8f0d3b Backend: Add unit tests for internal/config 2020-07-13 18:05:10 +02:00
Theresa Gresch
c827df2c04 Backend: Add unit tests for internal/config 2020-07-13 17:37:43 +02:00
Michael Mayer
4d42222caf Rename "thumbnails" to "thumbs" and group api functions in one file
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 17:25:27 +02:00
Michael Mayer
212857318b UX: Rename group(ed) to stack(ed) #394
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:59:54 +02:00
Michael Mayer
4a9f992056 Thumbs: Use fit_4096 in favor of fit_3840 and add convert limit #362 #388
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:23:54 +02:00