immich/server/src/services
cford256 10141504a2
fix: exif rating rounding (#20457)
* fix_Exlif_Metadata_Rating_Rounding_to_Interger

Rounding Exlif Rating Interger
Images support having numbers other than integers for the rating metadata in EXLIF. The database expects it to be an integer though. Trying to upload an image that has a rating other than an integer results in it failing to parse the image and defaulting to showing a corrupted file icon. 

Rather than changing the database type, I would like to round the rating to the nearest integer so that Immich works with images that have a rating like this in their metadata.

* Changing Metadata validateRange to always round.

* Update server/src/services/metadata.service.ts

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>

---------

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2025-08-04 14:29:51 -05:00
..
activity.service.spec.ts feat(web): display number of likes in asset viewer (#18911) 2025-06-04 12:41:50 -05:00
activity.service.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
album.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
album.service.ts feat!: more permissions (#20250) 2025-07-25 15:25:23 -04:00
api-key.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
api-key.service.ts feat(web): granular api access controls (#18179) 2025-05-28 13:16:43 -05:00
api.service.ts feat: shared links custom URL (#19999) 2025-07-28 14:16:55 -04:00
asset-media.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
asset-media.service.ts fix: send filename when viewing the original file (#20005) 2025-07-18 11:55:24 -05:00
asset.service.spec.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
asset.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
audit.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
audit.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
auth.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
auth.service.ts feat: shared links custom URL (#19999) 2025-07-28 14:16:55 -04:00
backup.service.spec.ts fix: handle cleanup of new backups alongside old backups (#20402) 2025-07-29 13:28:10 +01:00
backup.service.ts fix: handle cleanup of new backups alongside old backups (#20402) 2025-07-29 13:28:10 +01:00
base.service.ts refactor: sync repository (#19581) 2025-06-27 13:47:06 -04:00
cli.service.spec.ts refactor: user factories instead of stubs (#17540) 2025-04-11 11:53:37 -04:00
cli.service.ts fix: automatic media location migration without internal assets (#20489) 2025-07-31 22:58:35 +00:00
database.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
database.service.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
download.service.spec.ts feat!: remove typeorm (#20366) 2025-07-29 17:28:02 -04:00
download.service.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
duplicate.service.spec.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
duplicate.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
index.ts feat: notifications (#17701) 2025-04-28 10:36:14 -04:00
job.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
job.service.ts fix(mobile): add partial index based on library ID to remote assets (#20214) 2025-07-30 23:59:00 +05:30
library.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
library.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
map.service.spec.ts refactor: user factories instead of stubs (#17540) 2025-04-11 11:53:37 -04:00
map.service.ts refactor: last repository (#16042) 2025-02-11 22:15:56 +00:00
media.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
media.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
memory.service.spec.ts feat: sync memories (#19579) 2025-06-27 12:20:13 -04:00
memory.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
metadata.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
metadata.service.ts fix: exif rating rounding (#20457) 2025-08-04 14:29:51 -05:00
notification-admin.service.spec.ts feat: notifications (#17701) 2025-04-28 10:36:14 -04:00
notification-admin.service.ts feat: notifications (#17701) 2025-04-28 10:36:14 -04:00
notification.service.spec.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
notification.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
partner.service.spec.ts refactor: user factories instead of stubs (#17540) 2025-04-11 11:53:37 -04:00
partner.service.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
person.service.spec.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
person.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
search.service.spec.ts chore: remove asset entity (#17703) 2025-04-18 21:39:56 +00:00
search.service.ts feat: find large files utility (#18040) 2025-07-28 18:48:39 -04:00
server.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
server.service.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
session.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
session.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
shared-link.service.spec.ts feat: shared links custom URL (#19999) 2025-07-28 14:16:55 -04:00
shared-link.service.ts feat: shared links custom URL (#19999) 2025-07-28 14:16:55 -04:00
smart-info.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
smart-info.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
stack.service.spec.ts feat(web): Remove from Stack (#19703) 2025-07-22 22:17:06 -04:00
stack.service.ts feat(web): Remove from Stack (#19703) 2025-07-22 22:17:06 -04:00
storage-template.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
storage-template.service.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
storage.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
storage.service.ts fix: migration if media location is set (#20532) 2025-08-01 14:49:51 +00:00
sync.service.spec.ts refactor: remove album entity, update types (#17450) 2025-04-18 23:10:34 +02:00
sync.service.ts fix: user profile images not working in beta timeline (#20203) 2025-07-30 11:09:28 -05:00
system-config.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
system-config.service.ts refactor: event names (#19945) 2025-07-15 13:41:19 -04:00
system-metadata.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
system-metadata.service.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
tag.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
tag.service.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
timeline.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
timeline.service.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
trash.service.spec.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
trash.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
user-admin.service.spec.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
user-admin.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
user.service.spec.ts feat: change default media location to /data (#20367) 2025-07-29 16:58:50 -04:00
user.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
version.service.spec.ts refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
version.service.ts refactor: job names (#19949) 2025-07-15 18:39:00 -04:00
view.service.spec.ts refactor: test mocks (#16008) 2025-02-11 00:47:42 +01:00
view.service.ts refactor: remove album entity, update types (#17450) 2025-04-18 23:10:34 +02:00