Skip to content

Remote Bolus Dev#12

Closed
gestrich wants to merge 19 commits into
LoopKit:devfrom
gestrich:dev_otp
Closed

Remote Bolus Dev#12
gestrich wants to merge 19 commits into
LoopKit:devfrom
gestrich:dev_otp

Conversation

@gestrich

@gestrich gestrich commented May 23, 2021

Copy link
Copy Markdown
Collaborator

Overview

This provides support for remote bolus and carb entry. This builds on Jose's original work.

Build Instructions

Loop Workspace Method

  • Clone Fork
    • git clone --branch=dev_otp --recurse-submodules https://github.com/gestrich/LoopWorkspace.git
  • Update code signing for the typical 5 Loop targets.
  • Build + Run Loop -> Loop Workspace target.

User Guide

See the Remote Carb/Bolus Dev Branch Guide for setup and usage.

We can use some help from users of this branch in improving this guide.

Merge Checklist

This checklist contains the steps as I see for finally integrating this feature into dev. These steps are not required to build or use this branch in the meantime.

Change Summary

OneTimePassword (repo)

A fork of the OneTimePassword repo. This is currently hosted on my own Github account. We likely will want to create a fork in the LoopKit github account when we confirm how the project will be structured.

NightscoutService (pull request)

The NightscoutService will include the new user inferface and OTP validation code.

LoopKit (pull request)

Changes to RemoteDataService interface to validate push notifications.

Loop (pull request)

Validate push notification OTP via NightscoutService and enact bolus or carb entry.

IMG_1533
IMG_1534
IMG_1535

@gestrich gestrich force-pushed the dev_otp branch 3 times, most recently from dfceac2 to b0cbe28 Compare June 12, 2021 19:50
@gestrich gestrich force-pushed the dev_otp branch 6 times, most recently from 70d867c to ac00818 Compare June 20, 2021 15:59
@gestrich gestrich marked this pull request as ready for review September 3, 2021 20:01
bjornoleh referenced this pull request in bjornoleh/LoopWorkspace Nov 17, 2021
fix indentation in line 36
bjornoleh referenced this pull request in bjornoleh/LoopWorkspace Nov 17, 2021
Comment thread .gitmodules
url = https://github.com/LoopKit/LogglyService.git
[submodule "OneTimePassword"]
path = OneTimePassword
url = https://github.com/gestrich/OneTimePassword.git

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.

What changes do you have for the OneTimePassword repo? Have they been submitted upstream?

@bill-foreflight bill-foreflight Mar 1, 2022

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.

This is based off their 3.2.0 version from last spring. The OneTimePassword includes a dependency of its own -- Base32 which is configured via Carthage/CocoaPods. I was not successful at integrating the OneTimePassword library into Loop out-of-the box this configuration. It's been 9 months so I'm foggy on the exact obstacles I ran into but I seemed forced to reconfigure how OneTimePassword references Base32. For context, here's where I mentioned some of this previously https://loop.zulipchat.com/#narrow/stream/144182-development/topic/Remote.20bolus.20.2F.20remote.20carbs/near/238980153.

The changes I settled on was a very simple modification of referencing Base32 as a submodule of OneTimePassword which would allow our git clone commands to pull the library in properly as long as the --recurse-submodules is passed which appears part of our user instructions. I don't think this is a change that would be welcome in the OneTimePassword owner's repo as it probably affects their Carthage method.

I realized at one point you mentioned the desired format is for all dependencies to be their own separate libraries at the top level of Loop workspace. This seemed to require more changes to the OneTimePassword + Base32 relationship which may make it more difficult to maintain as a fork of OneTimePassword (compared to what I did), so I opted not to go down that road without more feedback.

I'm fine changing it in whatever way makes sense to you.

@ps2

ps2 commented May 24, 2022

Copy link
Copy Markdown
Contributor

Remote bolus has been merged into dev.

@ps2 ps2 closed this May 24, 2022
bjornoleh referenced this pull request in bjornoleh/LoopWorkspace Jan 25, 2023
Add support for Fastlane + TestFlight deployment workflow
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.

3 participants