Skip to content

v1.4.3 - Enhances MAUI sync, local storage, and reader - #202

Merged
fboucher merged 25 commits into
mainfrom
v-next
Sep 19, 2026
Merged

fboucher merged 25 commits into
mainfrom
v-next

Conversation

@fboucher

Copy link
Copy Markdown
Owner

Improves the MAUI application experience by:

  • Enhancing Synchronization (Fixes Document sync is not working how it should #196):

    • Refactors the sync service to prevent concurrent sync operations and avoid getting stuck.
    • Provides more granular sync progress updates, including detailed steps for pulling posts and a clear completion status.
    • Adds robust error handling during post retrieval, falling back to local data if the remote API fails.
    • Optimizes post pulling by saving metadata directly for read posts without fetching full content.
    • Ensures the UI accurately reflects the IsSyncing status and reloads posts upon sync completion.
  • Introducing Local Storage Management (Feat feat: add MAUI storage tab #200):

    • Adds a new "Storage" navigation tab and corresponding page in the MAUI app.
    • Allows users to manually download post content for offline reading and delete locally cached files.
    • Includes a dedicated StorageService to efficiently manage the caching of post HTML, including preventing multiple simultaneous downloads.
  • Refining Post Reader Controls (Fixes The sliders is acting weird #195):

    • Constrains the text size slider to a more practical range (12px to 25px).
    • Adds "Increase" and "Decrease" buttons for precise text size adjustments.
    • Disables text size buttons when at the minimum or maximum boundary.
  • General Updates:

    • Bumps the application version to 1.4.3.
    • Adds comprehensive unit tests for the new storage and improved sync logic.

fboucher-os and others added 25 commits August 8, 2026 08:34
…or (issue #92) (#183)

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>
… in blob storage (#185)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>
…d remove ILocalHtmlCache (#186)

* feat: implement async background post content extraction to save HTML in blob storage

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache
…on (#187)

* feat: configure protected Azure Function Parser API and key propagation

* bump: version to 1.4.0

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>
# Conflicts:
#	src/NoteBookmark.BlazorApp.Tests/Tests/PostsTests.cs
#	src/NoteBookmark.BlazorApp/Program.cs
#	src/NoteBookmark.SharedUI/Components/Pages/Posts.razor
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…controls (#192)

* chore: bump version to 1.4.2

* feat: show detailed sync progress messages and progress bar on Posts page

* feat: add back button and text size slider at both top and bottom of reader page
Co-authored-by: fboucher-os <fboucheros+github@gmail.com>
* feat: add MAUI storage tab for offline posts

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: refine MAUI storage controls

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: highlight storage actions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown

Code Coverage

Package Line Rate Branch Rate Health
NoteBookmark.AIServices 97% 64% ✔
NoteBookmark.Api 89% 80% ✔
NoteBookmark.BlazorApp 4% 10% ❌
NoteBookmark.Domain 93% 76% ✔
NoteBookmark.ServiceDefaults 96% 75% ✔
NoteBookmark.SharedUI 23% 28% ❌
Summary 58% (1124 / 1949) 50% (317 / 639) ❌

@fboucher
fboucher merged commit 3ee5974 into main Sep 19, 2026
2 checks passed
fboucher added a commit that referenced this pull request Sep 20, 2026
… workflow (#204) (#205)

* v1.4.3 - Enhances MAUI sync, local storage, and reader (#202)

* fix(#173): use Id ?? RowKey for checking and opening offline post HTML (#179)

* feat(#176): add sync progress bar and status updates for downloading offline post text (#180)

* should have done that long ago

* fix: resolve Android MAUI app crash when opening URLs (issue #177) (#181)

* feat: add up/down reordering for categories and notes in summary editor (issue #92) (#183)

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>

* feat: add text size slider and fix text wrapping on offline reader page (issue #178) (#182)

* bumb version

* feat: implement async background post content extraction to save HTML in blob storage (#185)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache (#186)

* feat: implement async background post content extraction to save HTML in blob storage

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache

* feat: configure protected Azure Function Parser API and key propagation (#187)

* feat: configure protected Azure Function Parser API and key propagation

* bump: version to 1.4.0

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* update missing env variable

* fix

* chore: bump version to 1.4.1

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(#190): update actions/cache to v5 for Node.js 24 compatibility in OpenCode triage workflow (#191)

* Update version to 1.4.2, add sync progress tracking, and reader page controls (#192)

* chore: bump version to 1.4.2

* feat: show detailed sync progress messages and progress bar on Posts page

* feat: add back button and text size slider at both top and bottom of reader page

* ci: include version in android apk filename (#193)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* Fix document sync stuck and improve sync progress and offline fallback (fixes #196) (#199)

* fix: constrain reader text size slider and add step buttons (fixes #195) (#198)

* feat: Add markdown saving for reading notes and bump version to 1.4.3

* feat: add MAUI storage tab (#200)

* feat: add MAUI storage tab for offline posts

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: refine MAUI storage controls

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: highlight storage actions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: bump application version to 1.4.3 (#201)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(ci): prevent timeout and rate limits in opencode daily triage (#204)

---------

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
fboucher added a commit that referenced this pull request Sep 20, 2026
* fix(#173): use Id ?? RowKey for checking and opening offline post HTML (#179)

* feat(#176): add sync progress bar and status updates for downloading offline post text (#180)

* should have done that long ago

* fix: resolve Android MAUI app crash when opening URLs (issue #177) (#181)

* feat: add up/down reordering for categories and notes in summary editor (issue #92) (#183)

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>

* feat: add text size slider and fix text wrapping on offline reader page (issue #178) (#182)

* bumb version

* feat: implement async background post content extraction to save HTML in blob storage (#185)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache (#186)

* feat: implement async background post content extraction to save HTML in blob storage

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache

* feat: configure protected Azure Function Parser API and key propagation (#187)

* feat: configure protected Azure Function Parser API and key propagation

* bump: version to 1.4.0

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* update missing env variable

* fix

* chore: bump version to 1.4.1

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(#190): update actions/cache to v5 for Node.js 24 compatibility in OpenCode triage workflow (#191)

* Update version to 1.4.2, add sync progress tracking, and reader page controls (#192)

* chore: bump version to 1.4.2

* feat: show detailed sync progress messages and progress bar on Posts page

* feat: add back button and text size slider at both top and bottom of reader page

* ci: include version in android apk filename (#193)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* Fix document sync stuck and improve sync progress and offline fallback (fixes #196) (#199)

* fix: constrain reader text size slider and add step buttons (fixes #195) (#198)

* feat: Add markdown saving for reading notes and bump version to 1.4.3

* feat: add MAUI storage tab (#200)

* feat: add MAUI storage tab for offline posts

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: refine MAUI storage controls

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: highlight storage actions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: bump application version to 1.4.3 (#201)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(ci): fix timeout and rate limit failures in OpenCode Daily Triage workflow (#204) (#205)

* v1.4.3 - Enhances MAUI sync, local storage, and reader (#202)

* fix(#173): use Id ?? RowKey for checking and opening offline post HTML (#179)

* feat(#176): add sync progress bar and status updates for downloading offline post text (#180)

* should have done that long ago

* fix: resolve Android MAUI app crash when opening URLs (issue #177) (#181)

* feat: add up/down reordering for categories and notes in summary editor (issue #92) (#183)

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>

* feat: add text size slider and fix text wrapping on offline reader page (issue #178) (#182)

* bumb version

* feat: implement async background post content extraction to save HTML in blob storage (#185)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache (#186)

* feat: implement async background post content extraction to save HTML in blob storage

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache

* feat: configure protected Azure Function Parser API and key propagation (#187)

* feat: configure protected Azure Function Parser API and key propagation

* bump: version to 1.4.0

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* update missing env variable

* fix

* chore: bump version to 1.4.1

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(#190): update actions/cache to v5 for Node.js 24 compatibility in OpenCode triage workflow (#191)

* Update version to 1.4.2, add sync progress tracking, and reader page controls (#192)

* chore: bump version to 1.4.2

* feat: show detailed sync progress messages and progress bar on Posts page

* feat: add back button and text size slider at both top and bottom of reader page

* ci: include version in android apk filename (#193)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* Fix document sync stuck and improve sync progress and offline fallback (fixes #196) (#199)

* fix: constrain reader text size slider and add step buttons (fixes #195) (#198)

* feat: Add markdown saving for reading notes and bump version to 1.4.3

* feat: add MAUI storage tab (#200)

* feat: add MAUI storage tab for offline posts

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: refine MAUI storage controls

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: highlight storage actions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: bump application version to 1.4.3 (#201)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(ci): prevent timeout and rate limits in opencode daily triage (#204)

---------

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
fboucher added a commit that referenced this pull request Sep 20, 2026
…let (#203) (#207)

* v1.4.3 - Enhances MAUI sync, local storage, and reader (#202)

* fix(#173): use Id ?? RowKey for checking and opening offline post HTML (#179)

* feat(#176): add sync progress bar and status updates for downloading offline post text (#180)

* should have done that long ago

* fix: resolve Android MAUI app crash when opening URLs (issue #177) (#181)

* feat: add up/down reordering for categories and notes in summary editor (issue #92) (#183)

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>

* feat: add text size slider and fix text wrapping on offline reader page (issue #178) (#182)

* bumb version

* feat: implement async background post content extraction to save HTML in blob storage (#185)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache (#186)

* feat: implement async background post content extraction to save HTML in blob storage

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache

* feat: configure protected Azure Function Parser API and key propagation (#187)

* feat: configure protected Azure Function Parser API and key propagation

* bump: version to 1.4.0

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* update missing env variable

* fix

* chore: bump version to 1.4.1

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(#190): update actions/cache to v5 for Node.js 24 compatibility in OpenCode triage workflow (#191)

* Update version to 1.4.2, add sync progress tracking, and reader page controls (#192)

* chore: bump version to 1.4.2

* feat: show detailed sync progress messages and progress bar on Posts page

* feat: add back button and text size slider at both top and bottom of reader page

* ci: include version in android apk filename (#193)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* Fix document sync stuck and improve sync progress and offline fallback (fixes #196) (#199)

* fix: constrain reader text size slider and add step buttons (fixes #195) (#198)

* feat: Add markdown saving for reading notes and bump version to 1.4.3

* feat: add MAUI storage tab (#200)

* feat: add MAUI storage tab for offline posts

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: refine MAUI storage controls

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: highlight storage actions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: bump application version to 1.4.3 (#201)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fixes CI timeout and rate limits in triage workflow (#206)

* fix(#173): use Id ?? RowKey for checking and opening offline post HTML (#179)

* feat(#176): add sync progress bar and status updates for downloading offline post text (#180)

* should have done that long ago

* fix: resolve Android MAUI app crash when opening URLs (issue #177) (#181)

* feat: add up/down reordering for categories and notes in summary editor (issue #92) (#183)

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>

* feat: add text size slider and fix text wrapping on offline reader page (issue #178) (#182)

* bumb version

* feat: implement async background post content extraction to save HTML in blob storage (#185)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache (#186)

* feat: implement async background post content extraction to save HTML in blob storage

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache

* feat: configure protected Azure Function Parser API and key propagation (#187)

* feat: configure protected Azure Function Parser API and key propagation

* bump: version to 1.4.0

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* update missing env variable

* fix

* chore: bump version to 1.4.1

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(#190): update actions/cache to v5 for Node.js 24 compatibility in OpenCode triage workflow (#191)

* Update version to 1.4.2, add sync progress tracking, and reader page controls (#192)

* chore: bump version to 1.4.2

* feat: show detailed sync progress messages and progress bar on Posts page

* feat: add back button and text size slider at both top and bottom of reader page

* ci: include version in android apk filename (#193)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* Fix document sync stuck and improve sync progress and offline fallback (fixes #196) (#199)

* fix: constrain reader text size slider and add step buttons (fixes #195) (#198)

* feat: Add markdown saving for reading notes and bump version to 1.4.3

* feat: add MAUI storage tab (#200)

* feat: add MAUI storage tab for offline posts

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: refine MAUI storage controls

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: highlight storage actions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: bump application version to 1.4.3 (#201)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(ci): fix timeout and rate limit failures in OpenCode Daily Triage workflow (#204) (#205)

* v1.4.3 - Enhances MAUI sync, local storage, and reader (#202)

* fix(#173): use Id ?? RowKey for checking and opening offline post HTML (#179)

* feat(#176): add sync progress bar and status updates for downloading offline post text (#180)

* should have done that long ago

* fix: resolve Android MAUI app crash when opening URLs (issue #177) (#181)

* feat: add up/down reordering for categories and notes in summary editor (issue #92) (#183)

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>

* feat: add text size slider and fix text wrapping on offline reader page (issue #178) (#182)

* bumb version

* feat: implement async background post content extraction to save HTML in blob storage (#185)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache (#186)

* feat: implement async background post content extraction to save HTML in blob storage

* feat: improve sync html download, always display read post button, and remove ILocalHtmlCache

* feat: configure protected Azure Function Parser API and key propagation (#187)

* feat: configure protected Azure Function Parser API and key propagation

* bump: version to 1.4.0

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* update missing env variable

* fix

* chore: bump version to 1.4.1

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(#190): update actions/cache to v5 for Node.js 24 compatibility in OpenCode triage workflow (#191)

* Update version to 1.4.2, add sync progress tracking, and reader page controls (#192)

* chore: bump version to 1.4.2

* feat: show detailed sync progress messages and progress bar on Posts page

* feat: add back button and text size slider at both top and bottom of reader page

* ci: include version in android apk filename (#193)

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>

* Fix document sync stuck and improve sync progress and offline fallback (fixes #196) (#199)

* fix: constrain reader text size slider and add step buttons (fixes #195) (#198)

* feat: Add markdown saving for reading notes and bump version to 1.4.3

* feat: add MAUI storage tab (#200)

* feat: add MAUI storage tab for offline posts

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: refine MAUI storage controls

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: highlight storage actions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: bump application version to 1.4.3 (#201)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(ci): prevent timeout and rate limits in opencode daily triage (#204)

---------

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: fboucher-os <fboucheros+github@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* feat(ui): add browser bookmarklet support for saving URLs (#203)

* feat(ui): add dedicated quickadd popup and MinimalLayout for bookmarklet (#203)

---------

Co-authored-by: Frank Boucher <2404846+fboucher@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.

Document sync is not working how it should The sliders is acting weird

2 participants