Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion android/app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ android {
// (https://developer.android.com/studio/build/configure-apk-splits#configure-APK-versions)
// You can force using the value of versionCode by specifying the `-P force-version-code-ignoring-abi=true`
// flag during build.
versionCode = 6
versionCode = 7
versionName = flutter.versionName
manifestPlaceholders["busymaxMsalRedirectHost"] = applicationId!!
manifestPlaceholders["busymaxMsalSignatureHash"] = msalSignatureHash
Expand Down
3 changes: 3 additions & 0 deletions android/app/src/main/res/xml/backup_rules.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,8 @@
<full-backup-content>
<!-- Includes MSAL, GIS bindings and flutter_secure_storage metadata. -->
<exclude domain="sharedpref" path="." />
<!-- Application support (including busymax.sqlite and its sidecars). -->
<exclude domain="file" path="." />
<exclude domain="database" path="." />
<exclude domain="root" path="flutter_secure_storage" />
</full-backup-content>
6 changes: 6 additions & 0 deletions android/app/src/main/res/xml/data_extraction_rules.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,16 @@
<data-extraction-rules>
<cloud-backup>
<exclude domain="sharedpref" path="." />
<!-- Application support (including busymax.sqlite and its sidecars). -->
<exclude domain="file" path="." />
<exclude domain="database" path="." />
<exclude domain="root" path="flutter_secure_storage" />
</cloud-backup>
<device-transfer>
<exclude domain="sharedpref" path="." />
<!-- Application support (including busymax.sqlite and its sidecars). -->
<exclude domain="file" path="." />
<exclude domain="database" path="." />
<exclude domain="root" path="flutter_secure_storage" />
</device-transfer>
</data-extraction-rules>
1 change: 1 addition & 0 deletions docs/android_release.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ For v0.3.0 the public version is `0.3.0` and the package code is `5`, advancing
the v0.2.4 source and retained test-signed artifact code `4`. During preparation
on 2026-10-11, the owner confirmed `4` is the highest distributed base code.
For v0.3.1, code `6` is confirmed available by the owner on 2026-10-11.
For v0.3.2, the package code advances to `7`.
For subsequent releases, verify the distribution ledger and account for ABI
offsets if split APKs were distributed before choosing the next code.

Expand Down
16 changes: 8 additions & 8 deletions docs/beta_snap_release.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ explicit revision, and incorporate fetched `origin/main`.

```bash
tool/release/build_snap_local.sh \
--version 0.3.1 \
--version 0.3.2 \
--revision "$(git rev-parse HEAD)" \
--google-oauth /path/to/google-desktop-download-directory \
--local-config config/release.local.json \
Expand All @@ -72,8 +72,8 @@ retained for inspection; choose a new path for another attempt. No reset,
forced worktree removal, or destructive cleanup is used.

The command checks all five version files before compiling; it never rewrites
them. v0.3.1 uses Android code **6**, confirmed available by the owner on
2026-10-11. It resolves the lockfile, generates/rechecks localization and Drift,
them. v0.3.2 uses Android code **7**. It resolves the lockfile,
generates/rechecks localization and Drift,
runs formatting, analysis, platform boundaries, full Flutter/tool/native tests,
and compiles a fresh configured bundle. It verifies the actual managed Google
configuration in `libapp.so`, runs canonical Snapcraft packaging with
Expand All @@ -97,11 +97,11 @@ owner's desktop or uploaded automatically.
Use the exact printed path throughout. In its artifacts directory:

```bash
sha256sum --check busymax_0.3.1_amd64.snap.sha256
unsquashfs -cat busymax_0.3.1_amd64.snap meta/snap.yaml
sha256sum --check busymax_0.3.2_amd64.snap.sha256
unsquashfs -cat busymax_0.3.2_amd64.snap meta/snap.yaml
```

Confirm `0.3.1`, `core24`, `devel`, `strict`, the BusyMax launcher, its autostart
Confirm `0.3.2`, `core24`, `devel`, `strict`, the BusyMax launcher, its autostart
entry, desktop file, icon and AppStream history. Investigate library warnings
using [the library investigation record](snap_runtime_libraries.md); do not add
broad linter suppression. The VM evidence must show no unresolved runtime ELF
Expand All @@ -113,7 +113,7 @@ preferences, contacts settings, conflicts and pending offline work. Back up
that test state. Quit BusyMax and upgrade using the exact candidate:

```bash
sudo snap install --dangerous /absolute/path/busymax_0.3.1_amd64.snap
sudo snap install --dangerous /absolute/path/busymax_0.3.2_amd64.snap
snap connections busymax
snap run busymax
```
Expand Down Expand Up @@ -141,7 +141,7 @@ only the verified checksum. The build command never publishes:
```bash
snapcraft login
snapcraft whoami
snapcraft upload --release=beta /absolute/path/busymax_0.3.1_amd64.snap
snapcraft upload --release=beta /absolute/path/busymax_0.3.2_amd64.snap
snapcraft revisions busymax --arch amd64
snapcraft status busymax --arch amd64
```
Expand Down
2 changes: 1 addition & 1 deletion docs/desktop_oauth_release_checklist.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Desktop OAuth release prerequisites

v0.3.1 uses the owner's new Google Desktop client as the BusyMax-managed
v0.3.2 uses the owner's new Google Desktop client as the BusyMax-managed
registration for locally built Linux releases. The download has a valid
`installed` object and project ID `busymax`. Its actual fields are read by the
[local release command](beta_snap_release.md); no credential JSON is committed.
Expand Down
4 changes: 2 additions & 2 deletions docs/development.md
Original file line number Diff line number Diff line change
Expand Up @@ -177,8 +177,8 @@ their regression coverage.

## Release branches

Start `release/v0.3.1` from current `main`, commit reviewed changes, and open it
into `main` with title `release/v0.3.1`. Fetch before final review and incorporate
Start `release/v0.3.2` from current `main`, commit reviewed changes, and open it
into `main` with title `release/v0.3.2`. Fetch before final review and incorporate
later `origin/main` commits with a normal merge. The existing
`tool/check_release_pull_request.py` validates the actual PR head, release
metadata and current-main ancestry. A synthetic PR merge does not establish
Expand Down
4 changes: 4 additions & 0 deletions docs/icalendar_data_model.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,10 @@ Status, percentage, and completion time change as one state transition.
Completing a parent completes open descendants; reopening a descendant reopens
a closed ancestor. Completing a recurring master records its completed
instance and advances the master when another occurrence exists.
When an UNTIL rule is exhausted, the wire master remains intact for Nextcloud
compatibility. Its matching completed history determines the local completed
state. Explicit reopening updates that same history component; completing it
again retains its recurrence identity.

The editor supports the daily, weekly, monthly, and yearly recurrence subset
represented by its controls, including supported intervals, selectors, counts,
Expand Down
5 changes: 3 additions & 2 deletions docs/snap_runtime_libraries.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@
Checked 2026-10-11 with Snapcraft 9.1.4, core24 revision 2124,
GNOME 46-2404 revision 168 and mesa-2404 revision 1839. The installed BusyMax
v0.3.0 revision x3 was used only to establish runtime provenance; it is not
v0.3.1 acceptance evidence. The local release command repeats resolution in a
fresh Ubuntu 24.04 VM against the exact new package and its checksum.
acceptance evidence for a later release. The local release command repeats
resolution in a fresh Ubuntu 24.04 VM against the exact new package and its
checksum.

Inside `snap run --shell busymax`, `ldd` on the runner, Flutter engine and
libgweather resolved the reported libraries as follows:
Expand Down
Loading
Loading