Michael Mayer
ebed7fa5b4
Go: Replace strings.Split() with strings.SplitSeq() #5337
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-11-25 14:26:29 +01:00
Michael Mayer
1631aecea6
Pkg: Add fs/README.md to document performance & security improvements
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-11-25 13:09:48 +01:00
Michael Mayer
149f5e5731
CI: Apply Go linter recommendations to remaining "pkg/..." code #5330
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-11-22 16:14:43 +01:00
Michael Mayer
90ab65a9b0
Zip: Harden fs.Unzip() implementation in pkg/fs #5330
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-11-22 14:32:23 +01:00
promalert
5d0aa1068c
refactor: use b.Loop() to simplify the code and improve performance
...
Signed-off-by: promalert <promalert@outlook.com>
2025-11-13 08:54:42 +01:00
Michael Mayer
3874bc5422
Config: Enhance tests for configuration and database file names #5304
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-11-02 11:49:00 +01:00
Michael Mayer
d6f0e808eb
Config: Support YAML filenames with alternative extensions #5304
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-11-02 11:33:40 +01:00
Michael Mayer
b91a7380ea
Media: Associate ".mp.jpg" and ".mp.jpeg" files with ImageJpeg #5289
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-10-23 18:23:24 +02:00
Michael Mayer
f23069dd2c
Security: Improve credential handling across the cluster tooling #98
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-10-20 00:06:17 +02:00
Michael Mayer
a921f82a17
Pkg: Move /service/http/... to /http/... and add package /http/dns
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-10-19 21:08:48 +02:00
Michael Mayer
50abe4ddaf
Config: Automatically download, install and activate cluster theme #98
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-10-19 16:09:26 +02:00
Michael Mayer
1b85f84943
Cluster: Add AppName, AppVersion and Theme request/response fields #98
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-10-19 12:44:21 +02:00
Michael Mayer
627acaf64e
PWA: Add fs constants for "assets.json" and "manifest.json" #5274
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-10-18 09:23:53 +02:00
Michael Mayer
bf6d7e4f94
Config: Add StaticBuildFile() and StaticImgFile() functions #5274
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-10-18 09:09:56 +02:00
Michael Mayer
b00dd133db
Test: Use PascalCase names for all Go subtests in /pkg
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-10-02 15:03:47 +02:00
Michael Mayer
61ced7119c
Auth: Refactor cluster configuration and provisioning API endpoints #98
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-09-24 08:28:38 +02:00
Michael Mayer
9ea5f0596c
Backend: Add security-focused tests, harden WebDAV and use safe.Download
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-09-22 10:42:53 +02:00
Michael Mayer
91804b9652
Backend: Improve Copy()/Move() and increase pkg/internal test coverage
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-09-22 03:07:51 +02:00
Michael Mayer
458a320bb8
Pkg: Add fs.Exists() function to check for any existing file/dir/link
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-09-21 23:09:33 +02:00
Michael Mayer
023fbe3a1d
Pkg: Add service/cluster package & rename media/http → service/http #98
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-09-13 12:58:28 +02:00
Michael Mayer
c36e66c847
Config: Add fs.ExtYml file extension const for transitioning to ".yaml"
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-09-13 02:09:22 +02:00
Michael Mayer
0d572032a9
API: Add GET /cluster/theme endpoint and refactor config package #98
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-09-11 06:47:45 +02:00
Michael Mayer
0bce60c046
Index: Improve logging when PDF documents cannot be indexed #5166
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-08-19 12:24:29 +02:00
Michael Mayer
ab0bd1c732
Config: Change default vision model assets path to assets/models/ #127
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-08-08 19:06:56 +02:00
Michael Mayer
a6d840056c
Media: Log underlying error when MIME type detection fails #5149
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-08-06 09:59:38 +02:00
Michael Mayer
f80ac62e6b
Live Photos: Only flag actual Live and Motion Photos as "Live" #5089
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-07-06 11:07:25 +02:00
Michael Mayer
86fe4404ef
M2TS: Extract embedded metadata with ExifTool #4982 #4892 #5040
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-06-11 19:22:20 +02:00
Michael Mayer
2e2ebab433
Videos: Improve downloading, remuxing, and transcoding #4982 #4892 #5040
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-06-09 15:31:23 +02:00
hardlydearly
060924c19a
Backend: Use slices.Contains to simplify code ( #4975 )
...
Signed-off-by: hardlydearly <799511800@qq.com>
2025-04-30 15:25:05 +02:00
Michael Mayer
35bfe0694b
API: Disable gzip compression for /api/v1/dl endpoint #127 #1090
...
Required for compatibility with the Python HTTP client. In addition,
this commit refactors function names and adds tests.
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-04-11 14:13:25 +02:00
Michael Mayer
35e9294d87
AI: Add vision package and vision API endpoints #127 #1090
...
These changes allow to configure the computer vision models through an
optional vision.yml configuration file. Note that the API endpoints
are not yet functional and require further work.
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-04-06 23:39:37 +02:00
Michael Mayer
b6ca5a1717
Config: Add upload-limit flag to limit total upload size #4929 #4895
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-04-05 15:44:13 +02:00
Michael Mayer
fe424d8966
Upload: Reject files that exceed the originals limit #4929 #4895 #2049
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-04-05 12:43:51 +02:00
Michael Mayer
b0e42bebf1
Upload: Add support for uploading zip archives #4929 #4895
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-04-05 12:02:33 +02: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
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
NinaLua
b3ad0e5b92
refactor: using slices.Contains to simplify the code
...
Signed-off-by: NinaLua <iturf@sina.cn>
2025-03-14 10:06:09 +01:00
Michael Mayer
f747211017
Library: Add support for indexing PDF documents #4600
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-03-12 04:26:04 +01:00
graciousgrey
006ed32838
Tests: Add unit tests #4848
2025-03-10 19:03:59 +01:00
graciousgrey
ad3b00f009
Tests: Add unit tests #4266
2025-03-10 17:33:00 +01:00
Michael Mayer
df09c78ee1
Videos: Add "codec" search filter and auto-enable nvidia encoder #4848
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-03-10 14:30:25 +01:00
Michael Mayer
ace90d95a4
Config: Refactor filesystem usage detection and add tests #4266
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-03-03 21:05:08 +01:00
Michael Mayer
c2cc50b670
Config: Add option to show filesystem usage in sidebar navigation #4266
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-03-03 20:05:56 +01:00
Michael Mayer
e1a9a68b29
FS: Add /pkg/fs/duf to determine mount points and disk usage #4266
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-03-03 11:24:30 +01:00
Michael Mayer
258642b9ac
Videos: Assume that .m4v files are compatible with MP4 #4820
...
Signed-off-by: Michael Mayer <michael@photoprism.app>
2025-02-27 09:37:57 +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
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
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
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