upgrader
Flutter package for prompting users to upgrade when there is a newer version of the app in the store.
13.7.0
248K downloads/mo
#767 most downloaded on pub.dev
larryaasen/upgrader
What this package is like to depend on
Last release 5 days ago
18 Aug 2026
Release timing varies
gaps range from 8 days to 3 months
Nearly every release is documented
notes for 132 of 133 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
158 releases · first in 2018
15 releases in the last 12 months
see the full history below
Release timeline
158 releases · Dec 2018 to Aug 2026Releases
latest 60 of 158-
13.7.018 Aug 2026Release notes
Open source →- [457][553] Fixed barrierDismissible being ignored in UpgradeAlert. (thanks to @mem-5514-tahara)
-
13.6.023 Jul 2026Release notes
Open source →- [517] Added the
checkOnResumeparameter toUpgraderthat, whenfalse, stops the store version check from being made each time the app is resumed from the background.
- [517] Added the
-
13.5.001 Jun 2026Release notes
Open source →- Updated the xml dependency constraint from
^6.3.0to>=6.3.0 <8.0.0to support stable xml 7.0.0.
- Updated the xml dependency constraint from
-
13.4.024 May 2026Release notes
Open source →- [551] [550] Changed
isTooSoonto reset when a newer app store version is available.
- [551] [550] Changed
-
13.3.015 May 2026Release notes
Open source →- [549] Added edSignature parsing from Appcast XML and made bestItem accessible. (thanks to @falt008)
-
13.2.006 May 2026Release notes
Open source →- [544] Will use localized Google Play release notes instead of always falling back to English.
-
13.1.018 Apr 2026 -
13.0.010 Apr 2026Release notes
Open source →- [542] Added minimumUpdateVersion parsing for Appcast XML. (thanks to @FaresHossamAmin)
- Fixed [515]: Remove version package exposure from UpgraderAppcastStore.
- Fixed [470]: Option to suppress optional updates.
- Improved documentation.
-
12.5.012 Jan 2026 -
12.4.011 Jan 2026Release notes
Open source →- Added new language translation for Estonian ('et'). (thanks to @sisalik1)
- Added new language translation for Slovenian ('si'). (thanks to @AlanJereb)
- [526] Incorporated the suggestion of adding context to UpgraderMessages(). (thanks to @defuncart)
- [530] Updated Italian upgrade messages for clarity. (thanks to @Samplasion)
- [533] Fixed Korean translation for release notes. (thanks to @junsuk5)
- Updated the Android example code.
-
12.3.031 Oct 2025Release notes
Open source →- [525] [520] Added fallback version parsing for regional Play Store pages. (thanks to @youngkiu)
-
12.2.029 Oct 2025Release notes
Open source →- [521] [522] Added fallback version parsing for regional Play Store pages. (thanks to @youngkiu)
-
12.1.020 Sep 2025Release notes
Open source →- Added the showPrompt parameter to UpgradeAlert and UpgradeCard to hide the display of the prompt. (thanks to @EArminjon)
-
12.0.014 Sep 2025Release notes
Open source →- Removed the use of device_info_plus to reduce the number of dependencies used by this package.
- Renamed master branch to main.
- The minimum Flutter version supported is now 3.27.0.
-
11.5.112 Sep 2025Release notes
Open source →- [510] Updated device_info_plus to support 12.0.0 with updated constraint <13.0.0.
- [511] Updated package_info_plus to support 9.0.0 with updated constraint <10.0.0.
-
11.5.015 Aug 2025Release notes
Open source →- [482] Will now call showCupertinoDialog instead of showDialog for CupertinoApp.
- [489] Fixed issue where null check operator used on a null value by checking the context.mounted before calling showDialog.
- [500] Fixed the Hindi ('hi) translations issue with the app name in the body message.
- Updated README to include CupertinoApp, and added a widget test for CupertinoApp.
-
11.5.0-alpha.101 Jun 2025 pre-releaseRelease notes
Open source →- [489] Fixed issue where null check operator used on a null value by checking the context.mounted before calling showDialog.
- [482] Will now call showCupertinoDialog instead of showDialog for CupertinoApp.
-
11.4.017 May 2025Release notes
Open source →- Added new language translations for Uzbek ('uz'). (thanks to @Shuhrat-java)
- Added new language translations for Romanian ('ro'). (thanks to @SK1n)
-
11.3.208 May 2025Release notes
Open source →- Added Future keyword in return type of sendUserToAppStore(). (thanks to @EArminjon)
-
11.3.107 Dec 2024Release notes
Open source →- Minor syntax change to fix compiler warning.
- Added new method MockUpgraderOS.currentTypeFormatted to return the OS type pretty formatted.
-
11.3.013 Oct 2024Release notes
Open source →- [429] Improved the Hindi ('hi') translations. (thanks to @aruhant)
- [456] Fixed Italian ('it') language translations. (thanks to @marcorizza)
- [459] Allowed for device_info_plus 11.0.0.
-
11.2.023 Sep 2024Release notes
Open source →- [432] On CupertinoAlertDialog configured CupertinoActionButton isDefaultAction property for the Update button. Thanks to @lukemmtt for the change.
- Added new language translations for Pashto ('ps'). (thanks to @isshort)
- Removed old travis.yaml CI file.
-
11.1.012 Sep 2024Release notes
Open source →- [439] Added: Passed the language code to iTunes search api to get localized release notes for the iOS App Store. Thanks to @ibraheemalayan and @Add00w for the changes.
-
11.0.004 Sep 2024Release notes
Open source →- [413] Fixed Haitian Creole messages to use correct grammar. (thanks to @wjeanvilma)
- [415] Added Kurdish Sorani ('ku') language translation. (thanks to @drpshtiwan)
- Minimum Flutter supported version is now 3.24.0, and minimum Dart version is 3.5.0.
- Minor updates to address deprecation warnings.
-
10.3.001 May 2024 -
10.2.011 Apr 2024 -
10.1.004 Apr 2024Release notes
Open source →[386] Added client headers that can optionally be passed in with a client.
[375] Fixed issue with Android Play Store titles that contained "\u0027".
-
10.0.123 Mar 2024 -
10.0.018 Mar 2024Release notes
Open source →This major update changes the structure of how the internal state is maintained and how access to app stores is provided. The API has not changed for the standard use cases. However, the way in which Appcast is used has changed slightly.
This update also makes it easier to extend upgrader to support more app stores without changing upgrader. This will come into play when used on Linux and Windows, or when supporting alternate app stores on Android.
-
10.0.0-alpha.324 Feb 2024 pre-releaseRelease notes
Open source →- Fixed deprecation warning for WillPopScope and replaced it with PopScope, which required the minimum Flutter SDK version to be moved up to 3.16.0 in this package.
- Renamed parameter canDismissDialog to barrierDismissible in
UpgradeAlert.
10.0.0
This major update changes the structure of how the internal state is maintained and how access to app stores is provided. The API has not changed for the standard use cases. However, the way in which Appcast is used has changed slightly.
This update also makes it easier to extend upgrader to support more app stores without changing upgrader. This will come into play when used on Linux and Windows, or when supporting alternate app stores on Android.
Changes in 10.0.0
- Implemented [UpgraderState] that is used internally to replace evaluation ready.
- BREAKING: Removed Appcast configuration so that an Appcast [UpgraderStore] can be used.
- Fixed deprecation warning for WillPopScope and replaced it with PopScope, which required the minimum Flutter SDK version to be moved up to 3.16.0 in this package.
- Renamed parameter canDismissDialog to barrierDismissible in
UpgradeAlert.
-
10.0.0-alpha.220 Feb 2024 pre-releaseRelease notes
Open source →(README file and documentation updates)
This major update changes the structure of how the internal state is maintained and how access to app stores is provided. The API has not changed for the standard use cases. However, the way in which Appcast is used has changed slightly.
This update also makes it easier to extend upgrader to support more app stores without changing upgrader. This will come into play when used on Linux and Windows, or when supporting alternate app stores on Android.
Changes in 10.0.0
- Implemented [UpgraderState] that is used internally to replace evaluation ready.
- BREAKING: Removed Appcast configuration so that an Appcast [UpgraderStore] can be used.
-
10.0.0-alpha.115 Feb 2024 pre-releaseRelease notes
Open source →- Implemented [UpgraderState] that is used internally to replace evaluation ready.
- BREAKING: Removed Appcast configuration so that an Appcast [UpgraderStore] can be used.
-
9.0.019 Jan 2024Release notes
Open source →BREAKING CHANGES
- Moved UI related code outside of Upgrader and into UpgradeAlert and UpgradeCard. Also, renamed the private methods to make them public. Added and improved example code and README.
- Minimum Dart SDK 3.1.0
- Minimum Flutter SDK 3.13.1
- [371] Added key to alert dialog and alert card.
- [371] Added the parameter
dialogKeytoUpgraderAlertthat is used by the alert dialog. - Changed currentAppStoreListingURL, currentAppStoreVersion, and currentInstalledVersion from functions to getters.
Note: This [9.0.0] release is the same as [9.0.0-alpha.3].
-
9.0.0-alpha.314 Jan 2024 pre-releaseRelease notes
Open source →- [371] Added the parameter
dialogKeytoUpgraderAlertthat is used by the alert dialog.
- [371] Added the parameter
-
9.0.0-alpha.205 Jan 2024 pre-releaseRelease notes
Open source →- Changed currentAppStoreListingURL, currentAppStoreVersion, and currentInstalledVersion from functions to getters.
- [371] Added key to alert dialog and alert card.
-
9.0.0-alpha.129 Dec 2023 pre-releaseRelease notes
Open source →- BREAKING: Moved UI related code outside of Upgrader and into UpgradeAlert and UpgradeCard. Also, renamed the private methods to make them public. Added and improved example code and README.
- Minimum Dart SDK 3.1.0
- Minimum Flutter SDK 3.13.1
-
8.4.028 Nov 2023Release notes
Open source →- [356] Fixed centering issue with Cupertino style UpgradeAlert dialog.
- [357] [359] Updated the package_info_plus dependency to '>=4.0.1 <6.0.0'. Thanks to @Zazo032 for this update.
-
8.3.021 Nov 2023Release notes
Open source →- [311] Changed the shared_preferences dependency version to '>=2.1.1 <3.0.0' to allow more compatibility.
- [299] Updated UpgradeCard to allow scrolling of release notes.
- Improved language code support so that it is updated with the app.
-
8.2.012 Oct 2023Release notes
Open source →- [336] Changed the device_info_plus dependency version from ^9.0.1 to any which now allows for older versions.
-
8.1.002 Aug 2023Release notes
Open source →- Fixed issue #312 when multiple instances of UpgradeAlert or UpgradeCard were used and the stream had already been listened to.
- All print statements for errors and exceptions have been placed behind a debug flag.
-
8.1.0-alpha.228 Jul 2023 pre-releaseRelease notes
Open source →-
Fixed an issue related to the stream updates from the previous release of 8.1.0-alpha.1.
-
From 8.1.0-alpha.1: Fixed issue #312 when multiple instances of UpgradeAlert or UpgradeCard were used and the stream had already been listened to.
-
-
8.1.0-alpha.126 Jul 2023 pre-releaseRelease notes
Open source →- Fixed issue #312 when multiple instances of UpgradeAlert or UpgradeCard were used and the stream had already been listened to.
-
8.0.016 Jul 2023Release notes
Open source →- Added support for checking for updates every time the app resumes from the background. (#272)
- Changed the way Upgrader is initialized to support a stream of evaluation requests. The stream is updated each time the app resumes from the background.
- Added Russian release notes translation. (thanks to @filipp2911)
-
8.0.0-alpha.225 Jun 2023 pre-releaseRelease notes
Open source →- Fixed an issue with checking for updates after resuming from background.
-
8.0.0-alpha.122 Jun 2023 pre-releaseRelease notes
Open source →- Added support for checking for updates every time the app resumes from the background. (#272)
- Changed the way Upgrader is initialized to support a stream of evaluation requests. The stream is updated each time the app resumes from the background.
- Added Russian release notes translation. (thanks to @filipp2911)
-
7.1.007 Jun 2023Release notes
Open source →- Added support for GoRouter. See the README for more details.
- Improved platform support and testing of Appcast for different platforms.
- Created class UpgraderDevice (and mock) to abstract the device_info details which is used for the OS version.
-
7.1.0-alpha.205 Jun 2023 pre-release -
7.1.0-alpha.121 May 2023 pre-releaseRelease notes
Open source →- Improved platform support and testing of Appcast for different platforms.
- Created class UpgraderDevice (and mock) to abstract the device_info details which is used for the OS version.
-
7.0.201 Jun 2023Release notes
Open source →- Updated dependency for http to '>=0.13.6 <2.0.0'.
- Added Turkish release notes translation.
-
7.0.127 May 2023Release notes
Open source →- Updated dependencies device_info_plus to ^9.0.1 and package_info_plus to ^4.0.1.
- Fixed release notes scrolling issue for Cupertino style dialogs. (#287)
-
7.0.012 May 2023Release notes
Open source →BREAKING CHANGES
- New minimum requirements: Dart 3.0.0 and Flutter 3.10.0.
- Updated code to avoid deprecated warnings.
- Updated many of the package dependencies.
-
6.5.011 May 2023Release notes
Open source →- Fixed a few null String objects causing exceptions. #284
- Updated package_info_plus version to '>=3.0.1 <5.0.0'.
-
6.4.010 May 2023 -
6.3.030 Apr 2023Release notes
Open source →- Improved support for Appcast on macOS. Thanks to @ahmet-fennel for this update.
- Added macOS example using Appcast.
- Downgraded the device_info_plus minimum version to 7.0.0 (from 8.0.0).
-
6.2.016 Mar 2023Release notes
Open source →- Added a parameter for the Cupertino button text style. Thanks to @daniel-possienke for this update.
-
6.1.013 Mar 2023Release notes
Open source →- Fixed issue #262 where the alert dialog content did not scroll up and down with a large amount of release notes.
- Removed unnatural ? character in the Japanese dialog title. (thanks to @K9i-0)
- Fixed typo in README. (thanks to @ishworpanta10)
-
6.0.125 Jan 2023Release notes
Open source →- Updated deprecated theme items and a few iOS config items after running with Flutter 3.7.0
-
6.0.024 Jan 2023Release notes
Open source →- Updated the minimum Flutter SDK version to 3.3.10
- Updated the minimum Dart SDK version to 2.18.6
-
5.1.012 Jan 2023Release notes
Open source →- Updated the initialization of upgrader to use a future that will allow the initialize method to be called multiple times. This does not require any changes by app code.
- Fixed issue #239 where some Android release notes that contained <br> HTML tags were not converted into \n characters.
- Added Portuguese release notes translation. (thanks to @RodolfoSilva)
- Added new example using upgrader inside a stateless widget.
- Added additional try/catch logic to report App Store API errors.
- Fixed unit tests that were broken due to the initialization changes.
-
5.1.0-alpha.110 Jan 2023 pre-releaseRelease notes
Open source →- Updated the initialization of upgrader to use a future that will allow the initialize method to be called multiple times. This does not require any changes by app code.
- Added new example using upgrader inside a stateless widget.
- Added additional try/catch logic to report App Store API errors.
- Fixed unit tests that were broken due to the initialization changes.