Skip to content

Commit ca1e29b

Browse files
authored
Merge pull request #904 from marionbarker/working-docs
Update before Loop 3.6.0 release
2 parents f97fa25 + d3e4a6e commit ca1e29b

28 files changed

+100
-10053
lines changed

docs/browser/automatic.md

+21-29
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ You start getting [Notifications](../operation/features/notifications.md#loop-ap
4141

4242
The automatic update and build feature is embedded in the build_loop.yml code and uses the GitHub scheduling feature to trigger actions to run automatically.
4343

44-
Some may have noticed one or more branches added to your repository that start with the name `alive`. Don't worry about these. They are automatically created to ensure GitHub will keep building your app automatically.
44+
One or more branches are added to your repository that start with the name `alive`. Don't worry about these. They are automatically created so GitHub will keep building your app automatically.
4545

4646
* GitHub keeps track of repositories
4747
* If there is no activity in a given repository in 60 days, GitHub disables Actions
@@ -50,7 +50,7 @@ Some may have noticed one or more branches added to your repository that start w
5050

5151
You may see branches called `alive`, `alive-dev` or `alive-main` in your repository.
5252

53-
The `alive` branches are created and used to make sure at least one commit per month is added to an `alive` branch in your repository. That keeps your repository active to allow the automatic update and build process to work.
53+
The `alive` branches are there so at least one commit per month is added to an `alive` branch in your repository. That keeps your repository active to allow the automatic update and build process.
5454

5555
The `alive` branches are only used for the keep-alive functions. Do not build using an `alive` branch. Most people will build using the default branch of `main`.
5656

@@ -69,57 +69,49 @@ The `alive` branch you need is created automatically when you run the `Build Loo
6969

7070
Coming soon with `Loop 3.6.0`.
7171

72-
Already here with `LoopFollow 2.3.0` and some other Open-Source apps.
72+
Already here with `LoopCaregiver`, `LoopFollow` and some other Open-Source apps.
7373

7474
### Requirements
7575

7676
You must have the `ENABLE_NUKE_CERTS` variable set to `true` for your *GitHub* organization, or when using a personal account to build, add it to each repository.
7777

7878
* Refer to [Add Variable](prepare-fork.md#add-variable){: target="_blank" }
7979

80-
### Certificates and `Match-Secrets`
80+
??? question "Do you want to know more? (Click to open/close)"
81+
**Annual Renewal**
8182

82-
The Create Certificates action does the following:
83+
Once a year, *Apple* automatically expires your `Distribution` Certificate.
8384

84-
* Reads existing signing credentials from your `Match-Secrets` private respository and confirms if they are valid
85-
* OR
86-
* Uses your `Distribution` Certificate from *Apple* or creates a new one if one does not exist
87-
* Securely stores, in your `Match-Secrets` private repository, signing credentials (like certificates and provisioning profiles from *Apple*) used for code signing for each Identifier in your app when you build
85+
* When the *Apple* `Distribution` certificate expires, the saved credentials in your `Match-Secrets` private repository are invalid and need to be removed (<code>nuke</code>)
86+
* You need a new `Distribution` Certificate at *Apple*
87+
* You need to create new signing credentials for `Match-Secrets`
8888

89-
### Annual Renewal
90-
91-
This happens once a year after *Apple* automatically expires your `Distribution` Certificate.
92-
93-
* When the *Apple* `Distribution` certificate expires, the saved credentials in your `Match-Secrets` private repository are invalid and need to be removed (<code>nuke</code>)
94-
* You need a new `Distribution` Certificate at *Apple*
95-
* You need to create new signing credentials for `Match-Secrets`
96-
97-
For the `Loop` app, up through version 3.4.4, you need to do this process manually.
89+
For the `Loop` app, up through version 3.4.4, you must to do this [Renew Certificate](bb-update.md#renew-certificate){: target="_blank" } process manually. Once version 3.6.0 is released, it will be automatic.
9890

9991
### Automatic Certificate Renewal
10092

101-
Some Open-Source apps, in particular `Trio` and `LoopFollow 2.3.0` already have this capability.
93+
Some Open-Source apps, in particular `Trio`, `LoopCaregiver` and `LoopFollow` already have this capability. It will be available in with the next release of the *Loop* app (3.6.0).
10294

10395
* If your signing credentials for the app being built are invalid and `ENABLE_NUKE_CERTS` is `true`, then signing credentials will be cleared from your `Match-Secrets` repository, a new `Distribution` certificate will be created at *Apple* and signing credentials for the current app will be generated and stored in `Match-Secrets`.
10496

105-
* Next app you build will need certificates created because all signing credentials were cleared out of your `Match-Secrets` repository
97+
* The next app you build using Browser Build, following a `nuke` action, will need certificates created because all signing credentials were cleared out of your `Match-Secrets` repository
10698
* If that app is configured for automatic certificate renewal, you only need to run the `Build Action`; it detects no signing credentials are available and creates them
10799
* If that app is not configured for automatic certificate renewal, you must first run the action `Create Certificates` and then `Build`
108100

109101
### Open-Source App Schedule
110102

111103
Each Open-Source App has a schedule for when the automatic build happens. This determines when the automatic check for certificate status happens.
112104

113-
The times are shifted to make sure only one Open-Source app performs a `nuke` process at one time. This only happens once a year, but we wanted to be sure there are no conflicts. Even if an app doesn't have automatic certificates implemented yet, they are added to the table as suggested values to use when this capability gets added. All times are UTC. If other apps decide to add this feature, please make a pull request to LoopDocs so we can add those times to the deconfliction table.
105+
The times are shifted to make sure only one Open-Source app performs a `nuke` action. Any other app building later that same day will just create new signing credentials; it will not need to `nuke` all credentials. This only happens once a year, but we wanted to be sure there are no conflicts. Even if an app doesn't have automatic certificates implemented yet, they are added to the table as suggested values to use when this capability gets added. All times are UTC. If other apps decide to add this feature, please make a pull request to LoopDocs so we can add those times to the deconfliction table.
114106

115-
| Open-Source App | AutoCerts? | Wed Time | 1st of Month Time |
116-
|:--|:-:|--:|--:|
107+
| Open-Source App | AutoCerts? | Wed<br>UTC | 1st of Month<br>UTC |
108+
|:--|:-:|:-:|:-:|
117109
| <span translate="no">Loop</span> | `dev` only | 09:00 | 07:00 |
118-
| <span translate="no">LoopCaregiver</span> | n | 13:00 | 11:00 |
119-
| <span translate="no">LoopFollow</span> | y | 12:00 | 10:00 |
120-
| <span translate="no">LoopFollow_Second</span> | y | 12:20 | 10:20 |
121-
| <span translate="no">LoopFollow_Third</span> | y | 12:40 | 10:40 |
122-
| <span translate="no">Trio</span> | y | 08:00 | 06:00 |
110+
| <span translate="no">LoopCaregiver</span> | &#x2705; | 13:00 | 11:00 |
111+
| <span translate="no">LoopFollow</span> | &#x2705; | 12:00 | 10:00 |
112+
| <span translate="no">LoopFollow_Second</span> | &#x2705; | 12:20 | 10:20 |
113+
| <span translate="no">LoopFollow_Third</span> | &#x2705; | 12:40 | 10:40 |
114+
| <span translate="no">Trio</span> | &#x2705; | 08:00 | 06:00 |
123115
| <span translate="no">xDrip4iOS</span> | n | 16:00 | 14:00 |
124116

125117

@@ -150,7 +142,7 @@ This is an optional step. If you are happy with the automatic sync and update, y
150142
* If you want to only build when an update has been found:
151143
* either do not create the variable `SCHEDULED_SYNC` or set it to true
152144
* create the variable `SCHEDULED_BUILD` and set it to false
153-
* **Warning**: if no updates to your default branch are detected within 90 days, your previous TestFlight build may expire requiring a manual build
145+
* **Warning**: if no updates to your default branch are detected within 90 days, your previous TestFlight build may expire, requiring a manual build
154146
* During a time when updates are not happening frequently, this is not a good choice
155147

156148
| <div style="width:120px">`SCHEDULED_SYNC`</div> | <div style="width:120px">`SCHEDULED_BUILD`</div> | Automatic Actions |

docs/browser/edit-browser.md

+1-33
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ Decide which [Version: Custom Edits](../version/code-custom-edits.md){: target="
8181
* Do not get confused later: LoopKit is both a username and a Module name
8282
* Refer to the [Module Table](#module-table) when directed
8383

84-
With the release of 3.4.x, the customizations for `main` and `dev` are the same. There are 2 customizations that require an update when moving from 3.2.3 to 3.4.x.
84+
For versions 3.4.x and newer, the customizations for `main` and `dev` are the same.
8585

8686
* For more information, refer to [Not Stable List](../version/code-custom-edits.md#not-stable-list){: target="_blank" }
8787
* Glucose Guardrails
@@ -358,8 +358,6 @@ Once you prepare the commands, then you will edit the build_loop.yml file of you
358358
If your&nbsp;<span translate="no">LoopWorkspace fork</span>&nbsp;did not come from&nbsp;<span translate="no">LoopKit/LoopWorkspace</span>, then delete your existing <code>fork</code> and make a new one. See [Already Have&nbsp;<span translate="no">LoopWorkspace</span>?](prepare-fork.md#already-have-loopworkspace){: target="_blank" }.
359359

360360
* Do not use any other location to create your <code>fork</code>
361-
* You may have used a different location for Loop 3.2.2
362-
* This is **not** supported for Loop 3.2.3 or later
363361

364362
For each customization you want to include, create a pair of lines consisting of the comment (must start with a #) followed by the&nbsp;`curl`&nbsp;statement pointing to the SHA-1 that has the customization.
365363

@@ -394,36 +392,6 @@ Return to your&nbsp;<span translate="no">GitHub fork for LoopWorkspace</span>&nb
394392
* Find the folder .github/workflows and click on it
395393
* Find the file build_loop.yml and click on it
396394
* Click on the pencil (so you can edit this file)
397-
* If you are building version 3.4
398-
* Skip ahead to [Add Personal Customizations to build_loop.yml](#add-personal-customizations-to-build_loopyml)
399-
400-
??? abstract "Older versions (Click to open/close)"
401-
* If you are building from an older version of main (version 3.2.3 or earlier), this is left here for your convenience - it will be removed over the next few months - please update soon
402-
* Locate line 31, which is just above the words:
403-
* `# Patch Fastlane Match to not print tables`
404-
* Paste the contents of the block below so it comes before that section
405-
* In the next section - you will need to modify the line number where you do the edits
406-
407-
408-
``` { .text .copy title="Paste into build_loop.yml" }
409-
# Customize Loop: Download and apply patches
410-
- name: Customize Loop
411-
run: |
412-
413-
# For each patch, edit comment line (keep the #) then update curl (and remove the #)
414-
415-
# Submodule Loop patches:
416-
# Loop: Filename: customization details
417-
#curl https://github.com/my-name-org/Loop/commit/SHA-1.patch | git apply -v --directory=Loop
418-
419-
# Submodule LoopKit patches:
420-
# LoopKit: Filename: customization details
421-
#curl https://github.com/my-name-org/LoopKit/commit/SHA-1.patch | git apply -v --directory=LoopKit
422-
423-
# Submodule xxxxx patches: Follow prototype above
424-
425-
426-
```
427395

428396
### Add Personal Customizations to build_loop.yml
429397

docs/browser/identifiers.md

-5
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,6 @@ The `Validate Secrets` &nbsp;<span class=notranslate>Action</span>&nbsp; should
6868

6969
## <code>Add Identifiers</code>
7070

71-
!!! warning "Update to Version 3.4"
72-
The name and identifier for "`Small Status Widget`" was renamed to "`Loop Widget Extension`". If you previously built, you will need to run the Add Identifiers as directed on the [update page](bb-update.md#update-from-32x-to-34){: target="_blank" } to add the renamed Identifier and Create Certificates for it.
73-
74-
If you previously built the `dev` branch, you already have this identifier.
75-
7671
??? abstract "Section Summary (click to open/close)"
7772
1. Click on the "Actions" tab of your LoopWorkspace repository.
7873
1. On the left side, select "2. Add Identifiers".

docs/browser/intro-summary.md

+2
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,8 @@ If you prefer watching your instructions, there is a narrated video of each step
8888

8989
* [How to Build the *Loop* App With a Web Browser](https://www.youtube.com/watch?v=kiu5ho0MTW8){: target="_blank" }
9090

91+
> Do not decide to uncheck the box for Near Field Communications in the Identifer for `Loop` - that is required to build version 3.4.x and newer.
92+
9193
Click in the comments for a full index of topics. If you have issues with a particular section, use the index to advance to the relevant part of the video. Subtitles are in English. You can choose a different language but the automatic translation feature may provide translations that are not completely accurate.
9294

9395
### The Detailed Version

docs/browser/prepare-app.md

+1-4
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Some people get confused on this page. Many of the links look similar but are ac
2020
* App Group: associates different identifiers so the app works correctly - you will do this step under your Apple Developer ID account.
2121
* App: associates a particular identier as the main Loop code - you will do this step under the App Connect site which is associated with your developer ID but is a different URL.
2222

23-
> This should only be needed one time, unless the developers add or modify an identifier. This happened between version 3.2 and version 3.4.
23+
> This should only be needed one time.
2424
2525
Some steps can be skipped if you previously built the *Loop* app with a *Mac* using *Xcode*.
2626

@@ -109,8 +109,6 @@ If you built previously using a Mac with Xcode, you may see the XCode version in
109109

110110
#### Table with Name and Identifier
111111

112-
> One Identifier was changed after v3.2.3. (`Small Status Widget` is now `Loop Widget Extension`).
113-
114112
| NAME | XCode version | IDENTIFIER |
115113
|:--|:--|:--|
116114
| `Loop` | `XC com TEAMID loopkit Loop`| `com.TEAMID.loopkit.Loop` |
@@ -119,7 +117,6 @@ If you built previously using a Mac with Xcode, you may see the XCode version in
119117
| `Loop Widget Extension` | XC Identifier | `com.TEAMID.loopkit.Loop.LoopWidgetExtension` |
120118
| `WatchApp` | XC Identifier | `com.TEAMID.loopkit.Loop.LoopWatch` |
121119
| `WatchAppExtension` | XC Identifier | `com.TEAMID.loopkit.Loop.LoopWatch.watchkitextension` |
122-
| **v3.2** `Small Status Widget` | XC Identifier | `com.TEAMID.loopkit.Loop.SmallStatusWidget`<br>No longer used, harmless to leave or to delete<br>Replaced with `Loop Widget Extension` |
123120

124121
### Add `App Group` to Identifiers
125122

0 commit comments

Comments
 (0)