PackageTrack
Sign in Get early access

once

Want to run a piece of code once periodically (Once - Daily - Weekly - Monthly - On new build - On new version - Any period)? We cover your back.

1.8.0 2.7K downloads/mo #4827 most downloaded on pub.dev MostafaSolimanMO/once

What this package is like to depend on

Last release 3 months ago

26 Apr 2026

Release timing varies

gaps range from 1 weeks to 10 months

Nearly every release is documented

notes for 19 of 20 stable releases

Nothing withdrawn

no release was ever pulled

4 years old

20 releases · first in 2022

2 releases in the last 12 months

see the full history below

Release timeline

20 releases · Feb 2022 to Apr 2026
2023 2024 2025 2026
Release Pre-release

Releases

latest 20
  1. 1.8.0 26 Apr 2026
    Release notes

    What's Changed

    New Contributors

    Full Changelog: 1.7.1...1.8.0

    Open source →
    Release notes
    • Feat: Add runUntilDone and showUntilDone to allow persistent actions until user dismissal. (Thanks to @MohamedGawdat for the idea and initial implementation!)
    • Feat: Add markDone utility to manually flag keys as completed.
    • Refactor: Replace manual leap-year logic with DateTime-based calculation for daysInMonth.
    • Fix: Resolve static analysis missing type annotations.
    • Tests: Add comprehensive test suite achieving 100% test coverage.
    • Docs: Added comprehensive Dartdocs for the new feature.
    Open source →
  2. 1.7.1 30 Nov 2025
    Release notes

    What's Changed

    New Contributors

    Full Changelog: 1.7.0...1.7.1

    Open source →
    Release notes
    • Chore: Update dependencies package_info_plus to ^9.0.0
    Open source →
  3. 1.7.0 22 Jan 2025
    Release notes

    What's Changed

    • Core/Builder: Convert OnceBuilder build from FutureBuilder to StatefulWidget (#26) by @MostafaSolimanMO in #28
    • Chore: Update dependencies package_info_plus to ^8.1.3
    • Require Dart 3.3.0 or higher

    Full Changelog: 1.6.3...1.7.0

    Open source →
    Release notes
    • Core: Convert OnceBuilder build from FutureBuilder to StatefulWidget Issue #29
    • Chore: Update dependencies package_info_plus to ^8.1.3
    • Require Dart 3.3.0 or higher
    Open source →
  4. 1.6.3 16 May 2024
    Release notes

    What's Changed

    • Chore: Updates dependencies shared_preferences to ^2.2.3 and package_info_plus to ^8.0.0 by @MostafaSolimanMO

    Full Changelog: 1.6.2...1.6.3

    Open source →
    Release notes
    • Chore: Updates dependencies shared_preferences to ^2.2.3 and package_info_plus to ^8.0.0
    Open source →
  5. 1.6.2 24 Mar 2024
    Release notes

    What's Changed

    Open source →
    Release notes
    • Chore: Updates dependencies package_info_plus to ^6.0.0
    • Chore: Updates minimum Dart SDK to >=3.3.0
    Open source →
  6. 1.6.1 18 Jan 2024
    Release notes

    What's Changed

    Full Changelog: 1.6.0...1.6.1

    Open source →
    Release notes
    • Chore: Update dependencies package_info_plus to ^5.0.1
    Open source →
  7. 1.6.0 07 Nov 2023
    Release notes

    What's Changed

    • Feat: Added runOnEveryNewBuild Function
    • Fix: runOnNewVersion saves version numbers with non-numerical values and does not sanitize them upon retrieval Issue #24
    • Fix: Types Error in runner.dart
    • Chore: Update dependencies & example app
    Open source →
    Release notes
    • Feat: Added runOnEveryNewBuild Function
    • Fix: runOnNewVersion saves version numbers with non-numerical values and does not sanitize them upon retrieval Issue #24
    • Fix: Types Error in runner.dart
    • Chore: Update dependencies & example app
    Open source →
  8. 1.5.4 04 Sep 2023
    Release notes

    What's Changed

    • Fix: Unhandled Exception: FormatException on Once.runOnNewVersion #20
    • Chore: Update dependencies
    Open source →
    Release notes
    Open source →
  9. 1.5.3 19 Jul 2023
    Release notes
    • fix runOnNewVersion callback even on first run
    Open source →
  10. 1.5.2 09 Jul 2023
    Release notes
    • fix: add uniqueKey to runOnNewVersion to fix runOnEveryNewVersion runs only once even if used in multiple pages
    • chore: update dependencies
    Open source →
  11. 1.5.1 19 Jan 2023
    Release notes
    • fix: OnceBuilder.fallback() is always called at least one time when specified
    • chore: update dependencies
    Open source →
  12. 1.5.0 07 Nov 2022
    Release notes
    • fix: runOnce & runEvery12Hours fallback wasn't working properly
    • chore: update dependencies
    Open source →
  13. 1.4.1 05 Apr 2022
    Release notes
    • fix: clear key was missing the prefix
    Open source →
  14. 1.4.0 05 Apr 2022
    Release notes
    • Add Functions

      • clear removes the Once or OnceWidget data for a specific key.
      • clearAll removes all the Once and OnceWidget data.
    • Add debug parameters that only works in debug mode

      • debugCallback used to debug the callback function.
      • debugFallback used to debug the fallback function.
    • Add prefix to the key to make it unique No changes required.

    Open source →
  15. 1.2.1 02 Mar 2022
    Release notes
    • ReadMe.md Update
    Open source →
  16. 1.2.0 02 Mar 2022
    Release notes
    • Add WidgetOnce that return Widget
    • Add runOnNewDay method that runs on every new day. The day here means you run the function at 3:00 AM. So, Day means the next 12:00 AM.
    Open source →
  17. 1.1.2 01 Mar 2022
    Release notes
    • Analyzing
    Open source →
  18. 1.1.1 01 Mar 2022

    Nothing published for this version

  19. 1.1.0 01 Mar 2022
    Release notes
    • Fix bugs
    • All periodic functions now are returning a nullable generic typed Future Future<T?>
    • Add fallback in case if that callback future returns null
    Open source →
  20. 1.0.0 24 Feb 2022
    Release notes
    • initial release.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive