Releases: jlian/wingdex
Releases · jlian/wingdex
Release list
ios-v0.9.1
v1.24.2
v1.24.1
v1.24.0
1.24.0 (2026-08-10)
Bug Fixes
- address app review feedback (6dad5cf)
- align geocoding provider contract (f7380d0)
- api: harden provider credential ownership (329f5de)
- auth: accept only invalid_grant as an idempotent Apple revocation (9ae9dd9)
- auth: bind Apple revocation grants to subject (4ac055e)
- Auth: keep Apple sign-in after revocation token capture fails (ebcc1db)
- auth: reject a null JSON body on Apple credential capture (e7b90af)
- auth: revoke providers before account deletion (98fcb07)
- auth: route every account deletion through provider revocation (b1ab9a4)
- auth: send the GitHub revocation body as JSON (de12285)
- auth: treat already-revoked Apple grants as idempotent success (fed6934)
- birdId: accept the occurrence blob however the host encodes it (fae9515)
- BirdID: drop the BirdLife credit from the identification caption (dc53d7a)
- ci: inspect iOS release archives (17591a4)
- ci: restore TestFlight artifact path (d50a45f)
- ci: rotate native Apple client secret (2570ac8)
- ci: validate iOS before publishing releases (60189c3)
- geocoding: defer dropping coordination tables until worker is live (e22c2d0)
- geocoding: preserve current search provenance (4dfb72e)
- geocoding: rate limit the Geoapify-backed routes (40bbc1d)
- geocoding: reject a null JSON body on the geocoding routes (efd52de)
- geocoding: repair the Geoapify places lookup (dce0dbb)
- Health: hide internal outcome headers (dabd348)
- migrations: restore the original apple revocation migration filename (26d3657)
- Privacy: disclose location handling (3feb81b)
- privacy: disclose proxied geocoding (1d313d3)
- privacy: enforce geocoding retention (530cb94)
- release: harden privacy and version detection (61b0deb)
- Settings: shorten the location copy and stop it meeting the toggle (b3e1a70)
- web: credit every location data source (6ab937f)
- web: harden bird model downloads (794b9a1)
- web: preserve canonical inferred species names (12c9bec)
- web: preserve identity on account deletion (5f13f1f)
- web: submit geocoding through proxy (f35e124)
- web: use provider-aware account deletion (1b064c7)
- wikimedia: credit each photo with its own creator and license (0b23cbe)
- wikimedia: identify every Wikimedia request and credit reference photos (b5313ca)
Features
- api: log geocoding cache outcomes (1241c47)
- api: proxy and rate-limit geocoding (e9d5bed)
- consolidate app observability (315927e)
- expand application observability (c34dd2b)
- record the AI confidence behind each observation (565d159)
Reverts
- migrations: keep the geocoding table drop out of this release (6e7411b)
ios-v0.9.0
wingdex-ios-v0.9.0 (2026-08-10)
Bug Fixes
- address app review feedback (6dad5cf)
- Auth: keep Apple sign-in after revocation token capture fails (ebcc1db)
- BirdID: drop the BirdLife credit from the identification caption (dc53d7a)
- ci: inspect iOS release archives (17591a4)
- geocoding: preserve current search provenance (4dfb72e)
- iOS: capture Apple deletion credentials (bfc679f)
- iOS: distinguish loading from empty tabs (aac3190)
- iOS: expand accessibility coverage (343bf2f)
- iOS: improve Home accessibility (1f3c98b)
- iOS: keep the compared photos aligned when the credit wraps (467b679)
- iOS: match the web reference caption layout (250509e)
- iOS: mirror the trimmed display name back into the field (e6b9955)
- iOS: rebuild the outing location control (e6cea6f)
- iOS: respect Reduce Motion on sign in (542fd97)
- ios: restore GPS location metadata (fbb0ce7)
- iOS: show session validation progress (68a85ad)
- iOS: support accessibility text sizes (31e831a)
- iOS: use built-in primitives for Settings and sign-in (3f244c1)
- iOS: use proxied outing geocoding (202eeea)
- Outings: gate place-search loading state on a generation token (4ae5d11)
- Privacy: disclose location handling (3feb81b)
- privacy: disclose proxied geocoding (1d313d3)
- Settings: shorten the location copy and stop it meeting the toggle (b3e1a70)
- wikimedia: credit each photo with its own creator and license (0b23cbe)
- wikimedia: identify every Wikimedia request and credit reference photos (b5313ca)
Features
v1.23.0
1.23.0 (2026-08-07)
Bug Fixes
- BirdID: address Copilot review on cache, parser and e2e robustness (2038216)
- BirdID: credit iNaturalist for the occurrence prior, not BirdLife (9c0e787)
- BirdID: floor absent species at 1e-12, the value the calibration was fit at (c8897b3)
- BirdID: show a spinner during ID, and fix the download bar's total (3bebcc1)
- BirdID: stop rounding tiny confidences to 0%, and gate at 0.8 (5c1a229)
- BirdID: stop shipping the deleted endpoint's client and buffering a copy (f2484a2)
- coreml: load the parity fixtures the quantizer scores against (a812d0a)
- correct download-gate copy, import style, and progress accounting (fc41a39)
- correct the privacy policy, and survive a failed or abandoned download (2ee54b2)
- declare the Localhost launch args, label sizes as MB, unpin harness path (222e3a9)
- e2e: run playwright with one worker, the suite shares a database (f961c46)
- gate: count the prior at its gzipped size so progress reaches 100 (a25acaf)
- gate: quote the real transfer size and stop showing two totals (6fe1773)
- model-cache: name the asset when a download fails (2943ebb)
- Outings: keep location stable while confirming (#281) (0a6966d)
- Outings: prevent new outing self-match (#281) (e3a394b)
- stop applying January's prior to photos with unreadable EXIF dates (54aa084)
- validate occurrence header length and correct stale asset names (256d36a)
Features
- BirdID: port the occurrence prior and Strategy I ranker to Swift (1ada7e4)
- on-device bird ID with WingCLIP-0.3, 95.0 percent top-1 in the browser (12396a4)
- on-device bird ID with WingCLIP-0.3, 95.0 percent top-1 in the browser (#279) (90c057b), closes #260 #278 #278
Performance Improvements
- cut preprocessing peak memory ~4x, and version the model URLs (d72f136)
- decode photos at reduced scale instead of decoding then resizing (b3dcf34), closes hi#frequency
- halve identification memory by dropping two redundant copies of the photo (467fc11)
- web: enable threaded on-device inference (e547965), closes #283
ios-v0.8.0
wingdex-ios-v0.8.0 (2026-08-07)
Bug Fixes
- BirdID: credit iNaturalist for the occurrence prior, not BirdLife (9c0e787)
- BirdID: drop the AI crop box, which nothing can populate any more (9e342aa)
- BirdID: floor absent species at 1e-12, the value the calibration was fit at (c8897b3)
- BirdID: harden the blob parser and take the real max in the softmax (74dfbdf)
- BirdID: stop rounding tiny confidences to 0%, and gate at 0.8 (5c1a229)
- BirdID: swap the deprecated cblas_sgemv for vDSP_mmul (aa6c333)
- declare the Localhost launch args, label sizes as MB, unpin harness path (222e3a9)
- ios: compare generated assets by content, not modification time (f77cfc9)
- ios: fill the add photos wizard background (e58a0e3), closes #280
- ios: pin the decode byte order and assert channel order (c434366)
Features
v1.22.3
v1.22.2
ios-v0.7.1
wingdex-ios-v0.7.1 (2026-08-03)
Bug Fixes
- ios: keep species hero image loaded across preview and detail (7a93491), closes #272
- ios: restore list touch arbitration (03584ee)