attachments: strip EXIF metadata from image attachments
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 52/100
Hướng nghiên cứu
Start by locating IncidentFile's add path and tracing how image bytes are stored and passed to sync and PDF generation. Check existing image-processing dependencies and tests; the issue gives no specific test file. Done means metadata is stripped on ingest across supported image formats while orientation is preserved, and merged PDF metadata remains out of scope unless inexpensive.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
What
Lagebuch does not strip EXIF metadata from attached images. A repo-wide search for exif over src/ returns nothing; image bytes go into the .files folder verbatim and into the PDF report verbatim.
Why it matters
A photo taken with a Diensthandy at the Einsatzstelle typically carries GPS coordinates, the exact capture timestamp, and the device model. All of that travels with the attachment: into the incident's .files folder, over the sync connection to every joined device, and into the exported PDF that goes to the Akte and the Kreisbrandinspektion.
The coordinates are usually the address of a private property, and often the address of the person whose name is already in the CO-Messprotokoll. Nothing about the app's UI suggests a photo carries anything beyond what is visible in it.
docs/datenschutz-und-sicherheit.md (#380) names this as a known limit, which is the honest short-term answer, but stripping is the right one.
Shape
Strip on ingest, in IncidentFile's add path, so it applies uniformly to the local store, the sync payload and the PDF — rather than at export, which would leave the stored copy untouched.
Decide deliberately what to keep: orientation must survive or photos display rotated. Everything else (GPS, timestamps, device, serial numbers, thumbnails — which can themselves contain a pre-edit image) can go.
PNG/WebP/GIF carry metadata chunks too and should be handled in the same pass. Merged PDF attachments have their own metadata; out of scope here unless it is cheap.
- Ngôn ngữ chính
- C#
- Star
- 1
- Fork
- 3
- Merge trung bình
- 4 giờ 34 phút
- Pull request đã merge (30 ngày)
- 182
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của CodeForFire/lagebuch
-
bug ux
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
CodeForFire/lagebuch#714 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug ux
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
CodeForFire/lagebuch#713 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
CodeForFire/lagebuch#405 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
CodeForFire/lagebuch#349 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
CodeForFire/lagebuch#348 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của CodeForFire/lagebuch
Issue tương tự
-
/api/oauth/introspect emits clientId and tokenType instead of RFC 7662's client_id and token_typeĐang mởbug P2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
nightscout/nocturne#2317 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[BUG]: Position intent set on a simple order is dropped when it becomes a bracket, OCO or OTO orderCó thể đã có người làm @RaphaelFakhri đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
alpacahq/alpaca-trade-api-csharp#903 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
joinrpg/joinrpg-net#5752 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
dimitar-radenkov/Pointframe#294 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
kind/feature-request
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Altinn/altinn-correspondence#2154 ·
Maintainer thường phản hồi trong vòng 1 ngày