Skip to content

Submit issue reports to the LoopKit developers; require iOS 17.6 - #2586

Merged
ps2 merged 3 commits into
devfrom
issue-report-submit-dev
Oct 18, 2026
Merged

ps2 merged 3 commits into
devfrom
issue-report-submit-dev

Conversation

@ps2

@ps2 ps2 commented Oct 15, 2026 •

Copy link
Copy Markdown
Collaborator

Backport of #2585 from next-dev, plus raising the minimum iOS version to 17.6.

Require iOS 17.6. A project-level IPHONEOS_DEPLOYMENT_TARGET = 15.1 overrode the 16.2 in Loop.xcconfig, so dev still targeted iOS 15.1. This removes the project-level setting and sets Loop.xcconfig to 17.6. That matches next-dev and the plugins that already require 17.6 (OmnipodKit, EversenseKit, MedtrumKit), and LoopDocs already lists iOS 17.6 as the minimum. The new screen's PhotosPicker and two-argument onChange need iOS 16 and 17 respectively.

Report Issue. Settings > Support > Report Issue opens one screen. From there the person either submits a report to ingest.loopkit.org/v1/issues, or taps Export Locally Instead to open the existing issue report screen.

  • IssueReportSubmitter.swift and SendIssueReportView.swift are the same as on next-dev.
  • dev's SettingsViewModel has no device manager, so the diagnostic report and the pump and CGM models come through SettingsViewModelDelegate, which StatusTableViewController implements with DeviceDataManager.
  • Also backports Record build customizations in BuildDetails.plist #2577: the build records the *.loopcustomization files the LoopWorkspace customization script adds, the diagnostic report lists them, and reports send them as customizations.

Testing

  • The LoopWorkspace scheme builds for the iOS Simulator.
  • In the simulator, Report Issue showed the build and device details, and Export Locally Instead opened the issue report.
  • A TEST report submitted to the live endpoint returned an ID. All context fields and the diagnostic report attachment arrived, and the report was then deleted.

ps2 added 2 commits October 15, 2026 15:19
The project-level 15.1 setting overrode Loop.xcconfig, so the app still
targeted iOS 15.1. Remove it and raise Loop.xcconfig to 17.6, which
matches next-dev and the plugins that already require it.
Backport of #2585 from next-dev. Settings > Support > Report
Issue now opens one screen where the person either submits a report to
ingest.loopkit.org/v1/issues or exports Loop's diagnostic report locally,
which opens the existing issue report screen.

A submitted report has a description, optional title and screenshots.
It is anonymous unless the person fills in a name, email, Zulip or GitHub
contact, and the analytics device ID is never sent. Build and device
details (version, build, branch, revisions, device model, OS, pump and
CGM model) are listed on the screen and sent with every report. Loop's
diagnostic report is attached as text by default; the toggle says it
contains health data. Photos other than PNG are converted to JPEG.

dev has no build customizations list, so that context key is left out.
The diagnostic report and the pump and CGM models come from the
settings delegate, since dev's settings view model has no device
manager.
@marionbarker

Copy link
Copy Markdown
Contributor

Test

Point to this PR for Loop when building LoopWorkspace dev, v3.14.10, commit c1f5597.

✅ Successfully sent a report to the developers: FM61Y94K

  • Where do these go?
    ✅ Successfully issued the report locally and sent to my Mac

There is no reason why the customizations could not included in this as they are in next-dev.
The customization script inserts the files for each customization.

@marionbarker marionbarker left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approve by test - assuming the Loop Report with ID FM61Y94K was transmitted as expect.

The Customization script adds the empty *.loopcustomization files at the top level of LoopWorkspace for all customizations.

Backport of #2577 from next-dev. capture-build-details.sh
records each *.loopcustomization file that the LoopWorkspace
customization script adds, the diagnostic report lists them, and an
issue report sends them as "customizations" with the other build details.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants