Incoming isVideoCall parsed as ringing — fix for green screen
📱 1.2.42
Update history
The platform evolves every day. Here is the full change history: new features, fixes, and security updates. Download the app
May 2026
Remove CallKit banner on foreground (duplicate UI)
📱 1.2.41
Open CallScreen on ANY active state — incoming too
📱 1.2.40
CallScreen does not close itself before INVITE arrives (_everHadCall)
📱 1.2.39
Proper cleanup on FAILED (caller’s CANCEL no longer hangs)
📱 1.2.38
Fully ignore FAILED-event (state race on Riverpod broadcast)
📱 1.2.37
Incoming UI is CallKit only + timestamp-FAILED guard
📱 1.2.36
Ignore FAILED after CONNECTED (forking leg)
📱 1.2.35
Ignore duplicate SIP session (FAILED from auth-challenge leg)
📱 1.2.34
Open CallScreen on any transition to connected (callee Accept)
📱 1.2.33
Cold-start from CallKit Accept skips splash entirely
📱 1.2.32
-45% animation durations (6s → 3.3s)
📱 1.2.31
Revert radical splash/CallScreen changes from 1f4c9f4
📱 1.2.30
Radical fix splash→CallScreen + persistent logging
📱 1.2.29
Open CallScreen on ringing→connected when CallKit accepts
📱 1.2.28
Version + build date in the side menu (Drawer)
📱 1.2.27
Splash was overriding navigation to /call + auto-answer on cold start
📱 1.2.26
Security fix: calls
📱 1.2.25
Multi-line {# #} → {% comment %} in voip overlay + ad detail
🌐 Web
SSR call client + docs update
🌐 Web
Video stream rendering + CallKit-vs-CallScreen dedup (following team-call example)
📱 1.2.24
Video call + FCM notification dedup + auto-invalidate ads
📱 1.2.22
🌐+📱 Web + app
SIP number is permanently tied to the farmer + grant DELETE on location
🌐 Web
Always upsert subscriber — recovery after record loss
🌐 Web
AllowBadCertificate=true for WSS — SNI mismatch with Kamailio
📱 1.2.22
UI integration — VoIP toggle in Profile + Call button in Ad Detail
📱 1.2.21
🌐+📱 Web + app
Native Android — Manifest permissions + MainActivity reattach + BootReceiver + CallKit
📱 1.2.20
Flutter SIP client + CallScreen + Riverpod provider
📱 1.2.19
Django app with endpoints for farmers' calls
🌐 Web
Call infrastructure — sip.cattles.net on a shared Kamailio server
🌐 Web
@mention boost, msg_type preview, FCM ttl, voip-channel groundwork
📱 1.2.18
🌐+📱 Web + app
PhoneRequiredMiddleware blocked viewing on dev/prod without phone
🌐 Web
Push after reinstall + dead theme CSS + bundling rule in CLAUDE.md
📱 1.2.17
🌐+📱 Web + app
/profile/ returns phone+avatar, mobile no longer loops on phone setup
📱 1.2.16
🌐+📱 Web + app
Removed min/max validators for weight_kg/height_cm
📱 1.2.15
🌐+📱 Web + app
3 regressions from the social-only auth commit
🌐 Web
Social-only auth + avatar + phone setup + geo wizard
📱 1.2.13
Social-only signup + phone setup + geo audit + avatar
🌐 Web
Not used in code
🌐 Web
UX fixes — session age + CTA + duplicate logo + alert→toast
🌐 Web
"Messages" in desktop header + sidebar + dropdown
🌐 Web
Web SSR chat + responsive mobile-like layout
🌐 Web
Bump urllib3 in requirements_prod.txt too
🌐 Web
Security fix: dependencies
🌐 Web
Push on new message + sender/time + read receipts + bottom nav
📱 1.2.11
🌐+📱 Web + app
Google login on web + Farmer.user CASCADE
🌐 Web
Remove empty firebase-adminsdk.json from git tracking
🌐 Web
Backend skeleton — Google Sign-In + Firebase Cloud Messaging + chats
📱 1.2.5
🌐+📱 Web + app
Splash odometer 71→43 languages
📱 1.2.5
Migration 0081 — remove parler-translations outside 43
🌐 Web
Security fix: infrastructure
🌐 Web
Reduced support from 70 to 43 locales
📱 1.2.3
🌐+📱 Web + app
Upload throttle 60→300/hour per-user
🌐 Web
Removing the default throttle, keeping only sensitive endpoints
🌐 Web
Rolled back AVIF thumbnails in serializer (sync block in API)
🌐 Web
Async AVIF generation on post_save (without blocking)
🌐 Web
AVIF thumbnails for breeds (Wiki_animals)
🌐 Web
AdDetailView — favorites via prefetch, without count/exists
🌐 Web
N+1 audit fixes from the explore-agent audit
🌐 Web
/animal-categories/<id>/breeds/ — N+1 fix (×60 faster)
🌐 Web