Нет описания

Jonas Björkert 0b474322db Add commit guidelines to README (#568) 4 месяцев назад
.github 469996e325 update actions to use node js 24 (#538) 4 месяцев назад
BuildTools 6ada9f2ca5 New stats (#516) 4 месяцев назад
LoopFollow 97d30e99fc Add Future Carbs Alert (#571) 4 месяцев назад
LoopFollow.xcodeproj 97d30e99fc Add Future Carbs Alert (#571) 4 месяцев назад
LoopFollow.xcworkspace 6ada9f2ca5 New stats (#516) 4 месяцев назад
Pods e18f62a19d Fix for singular matrix warning 4 месяцев назад
Scripts 3ab35c473c Merge dev into remote-apns-feedback 11 месяцев назад
Tests 97d30e99fc Add Future Carbs Alert (#571) 4 месяцев назад
fastlane 4e507acdc4 with fastlane 2.231.0, can add PUSH_NOTIFICATIONS to Identifier 6 месяцев назад
img 7469ed453e Update README.md and graphic 1 год назад
.gitignore 3c8393a05a Add remote commands via APNS for Loop users (#434) 11 месяцев назад
BuildDetails.plist 5584b21e84 Implement dynamic build details capture for TestFlight and Xcode 2 лет назад
Config.xcconfig cdac9d7ee3 CI: Bump dev version to 5.0.3 [skip ci] 4 месяцев назад
Gemfile d639d2e7b5 update to fastlane_2.232.2 5 месяцев назад
Gemfile.lock ce82964f94 Update json and faraday gems to fix security vulnerabilities 4 месяцев назад
LICENSE e1b1b06ed7 Create LICENSE 5 лет назад
LoopFollowDisplayNameConfig.xcconfig f751149c89 Rename of config file 2 лет назад
Podfile e18f62a19d Fix for singular matrix warning 4 месяцев назад
Podfile.lock 75977b07fc Removed Eureka 1 год назад
README.md 0b474322db Add commit guidelines to README (#568) 4 месяцев назад
blacklisted-versions.json 9d1f0b6e9b Display branch, build date, latest version, blacklisted version 2 лет назад
release.sh 97590bfff9 add more comments at pauses for release.sh [ci skip] 1 год назад

README.md

Message from the Loop and Learn Team:

New location for LoopFollow Repository:

  • If you previously created a fork of LoopFollow from the JonFawcett username
    • Please note the repository name has changed to https://github.com/loopandlearn/LoopFollow
    • GitHub should automatically redirect you to this new address
    • We have also modifed one branch and one file name to match standard conventions: main (from Main) and README.md (from readme.md)

Message to Developers

LoopFollow

Purpose:

Using so many different apps as a parent or caregiver of a T1D can be very cumbersome. Add in the extra details from looping with an Open Source Automated Insulin Delivery app and it can be a challenge flipping back and forth between apps. Each app has different strengths and weaknesses. LoopFollow melds together some needs into one app.

An example of the main screen for LoopFollow is shown in the graphic below:

example of main screen for LoopFollow}

Building Options

Please see Loop and Learn: LoopFollow for all the building options.

With the release of version 2.1.0, there is now an easy option for building up to three instances of the LoopFollow app for multiple Loopers in your family. Each instance can be configured to have the display name you choose with these names being the default:

  • LoopFollow
  • LoopFollow_Second
  • LoopFollow_Third

Display Name Updates

The _displayname is found in a single file.

  • Suggestion if you customize the name: use LF {unique name} so you can find the apps easily in iOS Settings screen

Summary instructions by build method:

  • Browser Build:
  • Mac-Xcode Build
    • First build with script, you will be prompted to enter the desired _displayname
    • This _displayname is used each time you select a fresh download for LoopFollow 1, 2 or 3
    • To modify the _displayname for subsequent script builds, edit the appropriate file in the ~/Downloads/BuildLoopFollow folder
      • LoopFollowDisplayNameConfig.xcconfig
      • LoopFollowDisplayNameConfig_Second.xcconfig
      • LoopFollowDisplayNameConfig_Third.xcconfig

Updates

When modifications and versions are updated, you might see activity at GitHub. Please wait for the release message to be posted at LoopFollow Releases before using the updated versions for the main branch of LoopFollow, LoopFollow_Second and LoopFollow_Third.

Version Numbers

Updates to the main branch (releases) have a version number that ends in 0; for example, 2.7.0.

  • Immediately following the release, the dev branch is at the same version as main indicating the code is identical
  • Each time a feature is merged into the dev branch, the final number increments; for example, 2.7.1, 2.7.2
  • When the next release is made, the second digit is incremented and the final digit is restore to 0 for both main and dev; for example, 2.8.0

General feature list

Please review the list on Loop and Learn: LoopFollow.

Each time a release is made, the features added or bugs fixed for that particular release are found at LoopFollow Releases.

Open Source DIY

This is a DIY open source project that may or may not function as you expect. You take full responsibility for building and running this app and do so at your own risk.

For Developers

  • If you are interested in assisting with this app and want to work on new features and improvements for Loop, Trio, iAPS and Nightscout functionality, please reach out.
  • Issues and Pull Requests in GitHub are monitored and will get a response.

New PR are directed to the dev branch. If you direct one to main, we will move it to point to dev. So always start with your code aligned with dev.

Always rename your branch (that is aligned with dev) to a name suitable for your feature, for example, feature_name, before starting to add commits to your branch.

After a PR is merged to dev, there is an automatic bump up the version number - please do not modify the version in your branch.

Pull Request Guidelines

Each pull request should focus on a single concern — one bug fix, one feature, or one improvement. Avoid combining unrelated changes in the same PR.

Focused PRs are easier to review, simpler to test, and safer to revert if needed. If your work touches multiple areas, consider splitting it into separate PRs that can be reviewed and merged independently.

Commit Guidelines

Write commit messages that complete the sentence: "If applied, this commit will..."

For example:

  • "Add alarm snooze functionality" ✓
  • "Fix crash when loading empty profile" ✓
  • "Update documentation for build process" ✓
  • "Remove deprecated API calls" ✓

Commit message structure:

<subject line - 50 chars or less>

<optional body - wrap at 72 chars>

Best practices:

  • Use imperative mood in the subject line (Add, Fix, Update, Remove, Refactor)
  • Keep the subject line concise (50 characters or less)
  • Capitalize the first letter of the subject
  • Do not end the subject line with a period
  • Separate subject from body with a blank line
  • Use the body to explain what and why, not how
  • Reference related issues when applicable (e.g., "Fixes #123")

Version Updates

Only the maintainers for LoopFollow will update version numbers.

Release Process

To assist in releasing to all three LoopFollow repositories, the script release.sh is now available. This bumps up the version number to M.N+1.0 for a minor release or M+1.0.0 for a major release. It also updates the LoopFollow_Second and LoopFollow_Third repositories with parallel changes to what was just released for LoopFollow. Only LoopFollow uses a dev branch. The other repositories use just the main branch and are kept at the released version.

When a release is generated, the updates found in the dev branch are merged into main; the version number in the Config.xcconfig file is updated to A.B.O; a tag of the form v.A.B.0 is created and associated with the main branch at that time.

When PR are subsequently merged to dev, the version number is incremented by 1 in the last place, e.g., "v.A.B.1" etc.

Files in LoopFollow Only

There are several files found only in the LoopFollow repository:

  • .github/workflow/auto_version_dev.yml
  • release.sh

These files are not added to _Second or _Third version because they are not needed for those repositories.