Skip to content

Releases: ngageoint/mage-ios

4.4.0-beta Release

31 Oct 14:15
68b1d35

Choose a tag to compare

4.4.0-beta Release Pre-release
Pre-release

Version 4.4.0-beta

Mapping is faster and more stable, with improved layer handling and full dark-mode adaptation. Users can explore confidently, even on data-dense views.

Changes

  • Resolved issue where images on a new observation fail to load on the device that loaded them
    Resolved an issue where opening a new observation showed only the MAGE_ID on a black screen and images never loaded, despite valid local file URLs in Xcode. Photos now render correctly from local storage when reviewing new observations.

  • The "contact us" button now populates the email based on server configuration
    Retrieved the “Contact Us” email from the server instead of hardcoding it. If the API is unavailable or the email field is missing/empty, default to [email protected].

  • Resolved issue where uploaded videos were unplayable on the device that uploaded them
    Resolved issue where iOS-uploaded videos were previously unplayable on the submitting iPhone until processing finished server-side. Local playback now works immediately after capture/upload.

  • Fixed issue where observation images sometimes failed to load
    Resolved issue where some image uploads hung, showing blank thumbnails or “Image {name} pending” indefinitely. Uploads now complete reliably, with images rendering correctly once captured; the “pending” state clears as expected.

  • Made new user signup completion easier from the keyboard
    Resolved the issue where the “Next” button on the new-user CAPTCHA was not correctly triggering the signup action. Now, after filling the CAPTCHA and tapping Next, the form advances/submits without needing to dismiss the keyboard, scroll, or tap another field.

  • Fixed issue where navigation to an observation via Apple Maps failed
    Resolved issue where tapping Navigate → Apple Maps from an observation now opens Apple Maps with turn-by-turn directions to the observation (previously it just opened to the default map with no route).

  • Fixed issue where observations are temporarily duplicated in the UI when switching from the User tab to the Observations tab
    Eliminated a UI bug that temporarily duplicated observations when switching between the User and Observations tabs. The list now remains de-duplicated and stable during tab switches.

  • Made "Delete" and "Cancel" text capitalization consistent with rest of app
    Dialog buttons now use Capital Case—Delete and Cancel—with Delete marked as a destructive (red) action on iOS. Previously shown as DELETE/CANCEL in all caps.

  • Updated User Intro walkthrough
    Improved the new-user guide for clarity and appropriateness: Updated 'Take a tour' to explain server/events/map/observations

  • Fixed issue where duplicate "X new observations for Event XYZ" notifications were being sent
    Resolved the banner logic for “X new observations pulled for this event.” The app now shows the banner only when there are truly new observations or during the initial data sync for a new event. Bulk imports and already-synced states no longer trigger false counts; change tracking correctly distinguishes no-op syncs from new data.

  • Fixed intermittent crash when attaching media to observations
    Resolved an intermittent crash in iOS attachment uploads caused by error handling. Improved memory handling and exception paths during photo/video attach, so creating observations no longer crashes.

  • Added place name search functionality
    JIATF-S published a PR on enabling "Place Name Search". Open the Map screen and tap the search bar. Type at least three characters of a place or address (e.g., “Gateway Arch”). Choose a result; the map should pan/zoom to it and drop a temporary pin with a callout. Drag the handle to collapse/expand the results panel and confirm the pin/callout stay visible. If an Event/filter is active, verify a small banner lets you return to the Event extent. If you see “No places found,” try a fuller address or landmark; if offline, reconnect to enable search. Clear the pin, then repeat with another address to confirm consistency.

  • Fixed issue where "Contact Us" button didn't work on devices with email disabled. An alert is now displayed prompting the user to contact their server admin.
    Previously, Contact Us broke if the support-email config key’s casing didn’t match or the value was missing, often doing nothing. Now the lookup is case-insensitive and, if no email is set, it gracefully copies the address to the clipboard and shows a clear alert—so the button behaves reliably and never fails silently.

  • Fixed intermittent crash on app startup
    Resolved startup issue that could sometimes cause the app to crash—especially right when opening it or when switching between events. The launch process is now more orderly and stable, so the app opens reliably, switches events without hiccups, and gets you to your first tap faster and more consistently.

  • Fixed a Log In issue impacting multiple authentication services
    Resolved a Log In issue where scrolling incorrectly hide the sign in text fields when multiple authentication methods were enabled on a server. Fixed an issue where changes to authentication methods did not appear in the iOS app.

  • Fixed a UX issue with Username/Password fields on Log In Screen
    Increased the tap target for the Username and Password fields to make it easier to tap to edit both fields.

4.3.0-beta release

08 Aug 19:32
37dcc46

Choose a tag to compare

4.3.0-beta release Pre-release
Pre-release
  • Performance improvements for large events (5k+ observations)
  • Can now attach multiple photos to an observation simultaneously
  • No longer have to click “Done” after editing each individual observation field
  • UI updates
  • Observation thumbnails now load properly
  • Observation locations are now able to be created with polygon geometry
  • Added Quick Tour to login home screen and Spanish language internationalization

4.2.0 (Rollback to 4.0.7)

18 Jun 19:54

Choose a tag to compare

Rollback release to 4.0.7 to mitigate performance issues with 4.1.0.

  • Has cherry-picked fixes for Xcode Cloud and Test Flight
  • A Debug build to workaround issues with missing dependency symbols (SF_POINT) due to NS_ENUM issue.

Full Changelog: 4.0.7...4.2.0

4.1.0

06 Jun 16:37

Choose a tag to compare

What's Changed

  • Added a Contact Us button
  • Fixed a crash related to Attachment Settings
  • Fixed an issue obscurring the map compass on the map
  • Fixed a crash related to layers on app start
  • Refactored old logic to Swift and SwiftUI
  • Updated unit tests
  • Full Changelog: 4.0.7...4.1.0

4.0.7

22 Nov 14:53
a530838

Choose a tag to compare

Features
  • UI/UX improvement on server connection error
Bug Fixes
  • Feeds timestamp field should be formatted as a date/time
  • Unsaved map symbology changes now update when editing an observation
  • Observation feed reflects remote attachment delete
  • Ensure video attachment header matches contentType
  • Remove animated activity indicator to fix crash when attachment cells are recycled
  • Set kingfisher cache key for attachment video thumbnails to fix duplicate thumbnails
  • Update Kingfisher library to latest 7.x.
  • Update references to Kingfisher's ImageResource struct because Xcode 15 introduced a conflicting ImageResource symbol.

4.0.6

13 Oct 14:59

Choose a tag to compare

Release Notes

Features

Update GeoPackage library to 8.0.3

Bug Fixes

PNG photo attachments converted to JPEG get a .jpeg file extension to match media type

4.0.5

17 Nov 20:01

Choose a tag to compare

Features
  • GARS and MGRS grid overlays and observation geometry edit
Bug Fixes
  • allow DMS fields to start with a 0
  • forms are ordered according to the order set on the server

4.0.4

29 Aug 16:20

Choose a tag to compare

Bug Fixes
  • set the locale for date parsing to fix bug with 24 hour locales with the time preference set to 12 hours

4.0.3

26 Aug 17:18

Choose a tag to compare

Bug Fixes
  • Extra logging for login errors

4.0.2

11 Aug 12:18

Choose a tag to compare

Features
  • Long secondary fields are now ellipsized
  • When all events but one are deleted from the user, they are still shown the event picker
  • Observation table immediately updates when an attachment is pushed
Bug Fixes
  • Fix navigation bar colors after using the camera
  • Crash when switching quickly between attachment view and observation list
  • Extra space at the top of the event chooser view
  • Cannot clear the observation geometry
  • iPad Navigation Options Setting does not open
  • Tapping a local attachment does not show the attachment
  • Distance is not being calculated correctly when navigation lines are updated
  • Add more informative message when an attachment fails to open
  • Significantly improved the speed of the initial observation fetch