Jacob D
0d487b6490
Faces: Improve performance when manual tagging ( #4691 )
...
This PR implements a strategy to improve Optimize() performance by returning the correct number of modified rows in PurgeOrphanFaces and treating the result 0 as an error condition in MergeFaces. Logging around this has been improved in faces.go and faces_optimize.go.
Related Comments:
- https://github.com/photoprism/photoprism/issues/3124#issuecomment-2566025503
- https://github.com/photoprism/photoprism/pull/4691#issuecomment-2566164179
2025-03-27 01:40:31 +01:00
Michael Mayer
b0eb7aacdd
UX: Rename "Videos" to "Media" in navigation and add audio type #4694
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-26 12:53:15 +01:00
Michael Mayer
9e95c7e71c
Upload: Delete invalid files, improve type checks and import logs #4895
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-25 11:58:59 +01:00
Michael Mayer
1f36d35d23
Upload: Report successful number of files in users_upload.go #4895
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-25 08:48:00 +01:00
Michael Mayer
7de72bd99a
Upload: Allow to limit the types of files users can upload #4895
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-25 06:32:01 +01:00
Michael Mayer
f1d9e85a8f
Sharing: Don't use the album UID twice in the redirect URL
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-19 11:52:46 +01:00
graciousgrey
f4af470894
Tests: Add unit tests
2025-03-18 15:20:51 +01:00
Michael Mayer
8c4bd1f3ed
API: Add unit tests for DownloadName() and AlbumDownloadName() #4344
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-18 14:48:06 +01:00
Michael Mayer
f81a945e74
Albums: Add settings to set a default sort order for each type #405
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-17 17:53:33 +01:00
Michael Mayer
d0239ba209
UX: Improve quota calculation and checks in config and api #4266
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-17 16:12:47 +01:00
Michael Mayer
328d51ee41
Albums: Add settings for downloading album archives #4344 #405
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-16 16:10:47 +01:00
Michael Mayer
0350e5d572
UX: Add UI settings for selecting start page and time zone #577
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-15 14:51:44 +01:00
graciousgrey
a3067a8887
Tests: Add unit tests
2025-03-12 16:34:28 +01:00
Michael Mayer
7f0717e9a0
Auth: Prevent login if additional accounts may not be created #4266
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-12 01:08:16 +01:00
Michael Mayer
eb9371d089
WebDAV: Skip download sync if storage is full or quota is exceeded #4266
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-11 23:45:41 +01:00
Michael Mayer
a66d3278ab
API: Prevent file imports/uploads if there is no free storage #4266
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-11 20:35:07 +01:00
Michael Mayer
7a97b38cb3
UX: Specify files quota in GB instead of MB #4266
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-11 18:04:10 +01:00
Michael Mayer
b1d9f24fc5
Config: Disable uploads and imports when storage is full #4266
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-04 08:28:28 +01:00
Michael Mayer
5e4357c02d
Albums: Refactor permission check in internal/api/albums.go
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-22 14:49:58 +01:00
Michael Mayer
fa487ed64a
Albums: Fix GET /albums/{uid} and GET /photos API permission checks
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-22 14:40:35 +01:00
Michael Mayer
501ef56c97
Videos: Support for detection and streaming of additional formats #4770
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-06 14:27:47 +01:00
Michael Mayer
b2cef94f07
Videos: Assume 10-bit codec variants in content type for HDR #4770
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-05 12:39:46 +01:00
Michael Mayer
b4f57dc992
API: Fix glitch in video.Compatible() and add tests for it #4770
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-05 04:17:03 +01:00
Michael Mayer
ef66ddbb8c
API: Compare video formats by content type for better matching #4770
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-05 03:42:40 +01:00
Michael Mayer
d5ef7bf1bc
Media: Refactor video content type constants #4770
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-05 01:23:22 +01:00
Michael Mayer
6a89519e63
Videos: Refactor codec, content and file type specifications #4770
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-05 00:30:45 +01:00
Michael Mayer
ae5f35259c
Server: Move process handling and shutdown to separate package #4767
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-04 19:05:26 +01:00
Michael Mayer
1f4f65e988
Server: Add "force" and "mode" flags for sockets #4673 #4767 #4765 #4467
...
These changes allow you to force the re-creation of existing Unix domain
sockets and set the permissions of sockets after they have been created.
The flag or variable value for this must be formatted as follows:
--http-host="unix:/var/run/photoprism.sock?force=true&mode=660"
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-04 12:03:00 +01:00
Michael Mayer
c60c0ce3a6
API: Ensure slugs are not empty before saving/creating labels #4761
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-04 03:35:01 +01:00
Michael Mayer
163db703d1
Config: Add "develop" feature flag to disable new viewer sidebar #3168
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-02-03 12:29:02 +01:00
Michael Mayer
06e59d9993
API: Improve content type string generation #1307 #3168
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-29 21:35:07 +01:00
Michael Mayer
933cc5031f
API: Fix content type header for transcoded videos #1307 #3168
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-29 20:16:27 +01:00
Michael Mayer
790de0b146
Videos: Improve MP4 AVC browser playback compatibility #1307 #3168
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-29 14:17:52 +01:00
Michael Mayer
6b3cb0eca8
UX: Refactor video formats and codecs in front and backend #1307 #3168
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-28 23:26:52 +01:00
Michael Mayer
420fa9946c
Viewer: Set native video stream src based on mimetype #1307 #3168 #4698
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-27 13:21:05 +01:00
graciousgrey
bb4eba137b
Annotations: Improve swagger annotations
2025-01-21 16:50:24 +01:00
Michael Mayer
1cd0ec7c62
Metadata: Add backward compatibility for Description field #4603
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-20 19:20:12 +01:00
Michael Mayer
beef2e0c63
API: Add "@Accept json" Swagger doc annotations where applicable
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-19 15:26:18 +01:00
Michael Mayer
73ae88cd4d
API: Add Swagger annotations to /api/v1/services endpoints
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-19 13:00:50 +01:00
Michael Mayer
ebeaaf568b
Metadata: Set labels based on matching keywords in the caption #4603
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-17 06:24:29 +01:00
Michael Mayer
0ada8d1095
API: Add additional fields to label and subject edit forms #383 #3168
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-17 02:55:07 +01:00
Michael Mayer
01f15fa406
Backend: Update copyright notices
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-09 10:28:17 +01:00
Michael Mayer
9f7d2f9434
Frontend: Refactor app bootstrapping templates and CSS imports #3168
2025-01-06 15:05:39 +01:00
Michael Mayer
e0fc604c80
Metadata: Don't generate picture titles based on labels only
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-05 13:33:54 +01:00
Michael Mayer
d4243c8087
API: Embed updated icons for the /api/v1/svg endpoints #3168
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-12-20 05:16:35 +01:00
graciousgrey
076a400868
API: Add Swagger annotations #2132
2024-11-19 16:58:41 +01:00
Michael Mayer
7f02d4efdb
Config: Serve "robots.txt" file to control how site is indexed #4574
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-11-07 19:09:43 +01:00
Michael Mayer
924ddcf2cd
Index: Set labels based on matching keywords in title or subject #4602
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-11-01 12:15:39 +01:00
Michael Mayer
bf4321f358
Server: Add X-Robots-Tag response header to control search engines #4574
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-10-13 11:19:30 +02:00
graciousgrey
505342244e
API: Add Swagger annotations #2132
2024-09-11 13:43:27 +02:00