[PR #4792] [CLOSED] feat: initial github release version checker #6444

Closed
opened 2026-03-23 22:23:15 +00:00 by mirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/AppFlowy-IO/AppFlowy/pull/4792
Author: @Xazin
Created: 3/1/2024
Status: Closed

Base: mainHead: feat/update-check


📝 Commits (6)

  • 95317cc feat: initial github release version checker
  • 39fe3f3 chore: merge branch 'upstream/main' into feat/update-check
  • 9838a30 fix: close client on bloc close
  • 6db38e5 feat: refactor to update dialog
  • 46a2a3c chore: merge branch 'upstream/main' into feat/update-check
  • 4ca6bb6 fix: changes after merge

📊 Changes

10 files changed (+378 additions, -63 deletions)

View changed files

📝 frontend/appflowy_flutter/lib/plugins/document/presentation/editor_plugins/actions/option_action.dart (+3 -5)
📝 frontend/appflowy_flutter/lib/startup/deps_resolver.dart (+3 -0)
📝 frontend/appflowy_flutter/lib/startup/startup.dart (+3 -2)
📝 frontend/appflowy_flutter/lib/startup/tasks/app_widget.dart (+5 -0)
frontend/appflowy_flutter/lib/user/application/github/github_service.dart (+94 -0)
frontend/appflowy_flutter/lib/workspace/application/version_checker/version_checker_bloc.dart (+74 -0)
📝 frontend/appflowy_flutter/lib/workspace/presentation/home/menu/sidebar/workspace/_sidebar_workspace_actions.dart (+2 -1)
📝 frontend/appflowy_flutter/lib/workspace/presentation/widgets/float_bubble/question_bubble.dart (+178 -53)
📝 frontend/appflowy_flutter/lib/workspace/presentation/widgets/pop_up_action.dart (+2 -1)
📝 frontend/resources/translations/en.json (+14 -1)

📄 Description

Relates: #3639

This is a flawed version checker. It is based on GitHubs REST API, unauthenticated requests are rate limited to 60 requests per hour.

If for any reason the check should fail, eg. no network connection, hit rate limit, or similar, we silently fail and assume the application is up-to-date.

The check only happens once on application startup for now, in the future we can support manually checking for updates and storing the time of the last check.

For more information see:
https://docs.github.com/en/rest/rate-limit/rate-limit?apiVersion=2022-11-28
https://docs.github.com/en/rest/releases/releases?apiVersion=2022-11-28#get-the-latest-release

Feature Preview

Screenshot 2024-03-01 at 23 15 33 Screenshot 2024-03-01 at 23 13 09

PR Checklist

  • My code adheres to AppFlowy's Conventions
  • I've listed at least one issue that this PR fixes in the description above.
  • I've added a test(s) to validate changes in this PR, or this PR only contains semantic changes.
  • All existing tests are passing.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/AppFlowy-IO/AppFlowy/pull/4792 **Author:** [@Xazin](https://github.com/Xazin) **Created:** 3/1/2024 **Status:** ❌ Closed **Base:** `main` ← **Head:** `feat/update-check` --- ### 📝 Commits (6) - [`95317cc`](https://github.com/AppFlowy-IO/AppFlowy/commit/95317cc94131e48ec2f4edbe15286e6e63ceb08f) feat: initial github release version checker - [`39fe3f3`](https://github.com/AppFlowy-IO/AppFlowy/commit/39fe3f3cde401e18d6c2eedeedea1679c7912847) chore: merge branch 'upstream/main' into feat/update-check - [`9838a30`](https://github.com/AppFlowy-IO/AppFlowy/commit/9838a30c5822962ddcde0783e0a2e92ea4c46ffe) fix: close client on bloc close - [`6db38e5`](https://github.com/AppFlowy-IO/AppFlowy/commit/6db38e5dbf818270359dd4316b9baa3d1a72a2a4) feat: refactor to update dialog - [`46a2a3c`](https://github.com/AppFlowy-IO/AppFlowy/commit/46a2a3c8f7db173673e9edd61e3e570b708b0f09) chore: merge branch 'upstream/main' into feat/update-check - [`4ca6bb6`](https://github.com/AppFlowy-IO/AppFlowy/commit/4ca6bb60a03b95e40dddd8d73d6c0697b46b3724) fix: changes after merge ### 📊 Changes **10 files changed** (+378 additions, -63 deletions) <details> <summary>View changed files</summary> 📝 `frontend/appflowy_flutter/lib/plugins/document/presentation/editor_plugins/actions/option_action.dart` (+3 -5) 📝 `frontend/appflowy_flutter/lib/startup/deps_resolver.dart` (+3 -0) 📝 `frontend/appflowy_flutter/lib/startup/startup.dart` (+3 -2) 📝 `frontend/appflowy_flutter/lib/startup/tasks/app_widget.dart` (+5 -0) ➕ `frontend/appflowy_flutter/lib/user/application/github/github_service.dart` (+94 -0) ➕ `frontend/appflowy_flutter/lib/workspace/application/version_checker/version_checker_bloc.dart` (+74 -0) 📝 `frontend/appflowy_flutter/lib/workspace/presentation/home/menu/sidebar/workspace/_sidebar_workspace_actions.dart` (+2 -1) 📝 `frontend/appflowy_flutter/lib/workspace/presentation/widgets/float_bubble/question_bubble.dart` (+178 -53) 📝 `frontend/appflowy_flutter/lib/workspace/presentation/widgets/pop_up_action.dart` (+2 -1) 📝 `frontend/resources/translations/en.json` (+14 -1) </details> ### 📄 Description Relates: #3639 This is a _flawed_ version checker. It is based on GitHubs REST API, unauthenticated requests are rate limited to 60 requests per hour. If for _any_ reason the check should fail, eg. no network connection, hit rate limit, or similar, we silently fail and assume the application is up-to-date. The check only happens once on application startup for now, in the future we can support manually checking for updates and storing the time of the last check. For more information see: https://docs.github.com/en/rest/rate-limit/rate-limit?apiVersion=2022-11-28 https://docs.github.com/en/rest/releases/releases?apiVersion=2022-11-28#get-the-latest-release ### Feature Preview <img width="608" alt="Screenshot 2024-03-01 at 23 15 33" src="https://github.com/AppFlowy-IO/AppFlowy/assets/42929161/28fba32f-8c46-46c7-8a31-6139d3d80c45"> <img width="608" alt="Screenshot 2024-03-01 at 23 13 09" src="https://github.com/AppFlowy-IO/AppFlowy/assets/42929161/07191fda-ab84-405a-8d19-76789737de9a"> #### PR Checklist - [x] My code adheres to [AppFlowy's Conventions](https://docs.appflowy.io/docs/documentation/software-contributions/conventions) - [x] I've listed at least one issue that this PR fixes in the description above. - [ ] I've added a test(s) to validate changes in this PR, or this PR only contains semantic changes. - [x] All existing tests are passing. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
mirror 2026-03-23 22:23:15 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
AppFlowy-IO/AppFlowy#6444
No description provided.