asxpio/lib
Sergei Poljanski 903dc17a75
bingo: strip photo metadata, identify to Wikimedia
Photos are served byte-for-byte, and the Commons shot of Medvedkovo
carries GPS coordinates in its EXIF, while the card is meant to stay
city-level. Drop Exif/XMP/IPTC/comment segments from JPEG, text/eXIf
chunks from PNG and EXIF/XMP chunks from WebP on store; pixel data is
left alone and malformed files are rejected.

upload.wikimedia.org answered 429 to the generic agent; its policy asks
for a tool name and contact, so send one.

Add a "re-import all" admin action so photos stored before this change
get re-fetched and stripped.

Assisted-by: Claude:opus-5
2026-10-10 05:19:49 +04:00
..
admin_auth.rb admin: constant-time credential comparison 2026-07-02 17:31:19 +04:00
bingo.rb bingo: strip photo metadata, identify to Wikimedia 2026-10-10 05:19:49 +04:00
bingo_admin.rb bingo: strip photo metadata, identify to Wikimedia 2026-10-10 05:19:49 +04:00
crypto_asset.rb invoices: multi-crypto payment support 2026-07-03 02:01:57 +04:00
crypto_qr.rb invoices: multi-crypto payment support 2026-07-03 02:01:57 +04:00
crypto_rate.rb invoices: multi-crypto payment support 2026-07-03 02:01:57 +04:00
db.rb db: connection helper and invoices migration 2026-05-26 17:43:18 +03:00
fmt.rb invoices: multi-crypto payment support 2026-07-03 02:01:57 +04:00
gel_rate.rb nbg and auto fill GEL exchange rate 2026-06-08 19:29:25 +03:00
invoice.rb invoices: multi-crypto payment support 2026-07-03 02:01:57 +04:00
invoice_pdf.rb invoices: em-dash cleanup in admin form and PDF copy 2026-07-16 20:01:26 +04:00
mailer.rb useful icon and links 2026-05-05 00:57:11 +04:00
rate_limit.rb rate limit: prune stale keys so @hits cannot grow unbounded 2026-07-02 17:31:19 +04:00
s3.rb bingo: serve datacenter bingo on bingo.asxp.io 2026-10-10 04:51:26 +04:00