PackageTrack
Sign in Get early access

woocommerce/action-scheduler

Action Scheduler for WordPress and WooCommerce

4.1.0 8.2M downloads/mo #1269 most downloaded on Packagist woocommerce/action-scheduler

What this package is like to depend on

Last release 18 days ago

05 Aug 2026

Release timing varies

gaps range from 2 weeks to 11 months

Most releases are documented

notes for 31 of 49 stable releases

Nothing withdrawn

no release was ever pulled

9 years old

58 releases · first in 2017

2 releases in the last 12 months

see the full history below

Release timeline

58 releases · May 2017 to Aug 2026
2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 58
  1. 4.1.0 05 Aug 2026
    Release notes
    • Fix - Correct an oversight in the lock implementation (used to rate-limit async request runners) that could leave a lock permanently stuck and result in database errors in unusual cases.
    • Fix - Correct the behavior of the wp action-scheduler clean command so that the --before option defaults to 31 days ago.
    • Performance - Reduce the number of SQL queries on the Action Scheduler admin page.
    • Performance - Cache resolved group IDs to reduce the number of SQL queries.
    • Performance - Use the WordPress caching layer for the option lock component.
    • Enhancement - Display action IDs in the admin list and allow searching by action ID.
    • Enhancement - Use wp_admin_notice() to render admin notices, instead of custom HTML.
    • Security - Add protections to guard against the risk of object-injection/deserialization attacks when retrieving stored schedule data.
    • Dev - Include the underlying database error in the exception thrown when the legacy post store fails to claim actions.
    • Dev - Add filters (action_scheduler_allowed_nested_schedule_classes, action_scheduler_enforce_schedule_allowed_classes) and an action (action_scheduler_unexpected_schedule_class) to tune and observe schedule deserialization.
    Open source →
    Release notes
    • Fix - Correct an oversight in the lock implementation (used to rate-limit async request runners) that could leave a lock permanently stuck and result in database errors in unusual cases.
    • Fix - Correct the behavior of the wp action-scheduler clean command so that the --before option defaults to 31 days ago.
    • Performance - Reduce the number of SQL queries on the Action Scheduler admin page.
    • Performance - Cache resolved group IDs to reduce the number of SQL queries.
    • Performance - Use the WordPress caching layer for the option lock component.
    • Enhancement - Display action IDs in the admin list and allow searching by action ID.
    • Enhancement - Use wp_admin_notice() to render admin notices, instead of custom HTML.
    • Security - Add protections to guard against the risk of object-injection/deserialization attacks when retrieving stored schedule data.
    • Dev - Include the underlying database error in the exception thrown when the legacy post store fails to claim actions.
    • Dev - Add filters (action_scheduler_allowed_nested_schedule_classes, action_scheduler_enforce_schedule_allowed_classes) and an action (action_scheduler_unexpected_schedule_class) to tune and observe schedule deserialization.
    Open source →
  2. 4.0.0 16 Jun 2026
    Release notes
    • Breaking change: action args are taken into account when scheduling unique actions.
    • Breaking change: failed actions are now automatically purged after 3 months by default, controlled by the action_scheduler_retention_period_for_failed filter.
    • Add action_scheduler_enable_failed_action_cleanup filter to disable automatic cleanup of failed actions.
    • Performance - Actions with corrupted data are automatically cancelled on detection and their excess logs cleaned up in batches, preventing queue stalls and log table bloat.
    • Performance - Action cleanup now runs as a dedicated daily task at 3 am site time with higher throughput.
    • Update favicon images.
    • Fix number formating for action numbers in list view.
    • Import missing WP_CLI class to prevent fatal error.
    • Fix possible undefined variable in action cancel --all CLI command.
    • Move recurring A-S cache key to transient.
    • Optimize get_claim_count() query for large stores.
    • Update require_once path for Cancel_CommandFix absolute import.
    • Fix esc_html() hook name in admin notice markup.
    • Ensure cleanup action is enqueued via queue runner.
    • Bump WordPress compatibility to version 7.0 and require at least 6.8.
    • Dev - Bump picomatch from 2.3.1 to 2.3.2.
    • Dev - Bump phpunit/phpunit from 8.5.42 to 8.5.52.
    • Dev - Bump lodash, grunt-legacy-log and grunt-legacy-util.
    Open source →
    Release notes
    • Breaking change: action args are taken into account when scheduling unique actions.
    • Breaking change: failed actions are now automatically purged after 3 months by default, controlled by the action_scheduler_retention_period_for_failed filter.
    • Add action_scheduler_enable_failed_action_cleanup filter to disable automatic cleanup of failed actions.
    • Performance - Actions with corrupted data are automatically cancelled on detection and their excess logs cleaned up in batches, preventing queue stalls and log table bloat.
    • Performance - Action cleanup now runs as a dedicated daily task at 3 am site time with higher throughput.
    • Update favicon images.
    • Fix number formating for action numbers in list view.
    • Import missing WP_CLI class to prevent fatal error.
    • Fix possible undefined variable in action cancel --all CLI command.
    • Move recurring A-S cache key to transient.
    • Optimize get_claim_count() query for large stores.
    • Update require_once path for Cancel_CommandFix absolute import.
    • Fix esc_html() hook name in admin notice markup.
    • Ensure cleanup action is enqueued via queue runner.
    • Bump WordPress compatibility to version 7.0 and require at least 6.8.
    • Dev - Bump picomatch from 2.3.1 to 2.3.2.
    • Dev - Bump phpunit/phpunit from 8.5.42 to 8.5.52.
    • Dev - Bump lodash, grunt-legacy-log and grunt-legacy-util.
    Open source →
  3. 3.9.3 15 Jul 2025
    Release notes
    • Add hook 'action_scheduler_ensure_recurring_actions' specifically for scheduling recurring actions.
    • Assume an action is valid until proven otherwise.
    • Implement SKIP LOCKED during action claiming.
    • Import get_flag_value() from WP_CLI\Utils before using.
    • Make $unique available to all pre-creation/short-circuit hooks.
    • Make version/source information available via new class.
    • Only release claims on pending actions.
    • Tweak - WP 6.8 compatibility.
    • Update minimum supported php and phpunit versions.
    • Update readme.txt.
    • WP CLI get action command: correct parentheses/nesting of conditional checks.
    Open source →
    Release notes
    • Add hook 'action_scheduler_ensure_recurring_actions' specifically for scheduling recurring actions.
    • Assume an action is valid until proven otherwise.
    • Implement SKIP LOCKED during action claiming.
    • Import get_flag_value() from WP_CLI\Utils before using.
    • Make $unique available to all pre-creation/short-circuit hooks.
    • Make version/source information available via new class.
    • Only release claims on pending actions.
    • Tweak - WP 6.8 compatibility.
    • Update minimum supported php and phpunit versions.
    • Update readme.txt.
    • WP CLI get action command: correct parentheses/nesting of conditional checks.
    Open source →
  4. 3.9.2 03 Feb 2025
    Release notes
    • Fixed fatal errors by moving version info methods to a new class and deprecating conflicting ones in ActionScheduler_Versions
    Open source →
    Release notes
    • Fixed fatal errors by moving version info methods to a new class and deprecating conflicting ones in ActionScheduler_Versions
    Open source →
  5. 3.9.1 21 Jan 2025
    Release notes
    • A number of new WP CLI commands have been added, making it easier to manage actions in the terminal and from scripts.
    • New wp action-scheduler source command to help determine how Action Scheduler is being loaded.
    • Additional information about the active instance of Action Scheduler is now available in the Help pull-down drawer.
    • Make some other nullable parameters explicitly nullable.
    • Set option value to no rather than deleting.
    Open source →
    Release notes
    • A number of new WP CLI commands have been added, making it easier to manage actions in the terminal and from scripts.
    • New wp action-scheduler source command to help determine how Action Scheduler is being loaded.
    • Additional information about the active instance of Action Scheduler is now available in the Help pull-down drawer.
    • Make some other nullable parameters explicitly nullable.
    • Set option value to no rather than deleting.
    Open source →
  6. 3.9.0 15 Nov 2024
    Release notes
    • Minimum required version of PHP is now 7.1.
    • Performance improvements for the as_pending_actions_due() function.
    • Existing filter hook action_scheduler_claim_actions_order_by enhanced to provide callbacks with additional information.
    • Improved compatibility with PHP 8.4, specifically by making implicitly nullable parameters explicitly nullable.
    • A large number of coding standards-enhancements, to help reduce friction when submitting plugins to marketplaces and plugin directories. Special props @crstauf for this effort.
    • Minor documentation tweaks and improvements.
    Open source →
    Release notes
    • Minimum required version of PHP is now 7.1.
    • Performance improvements for the as_pending_actions_due() function.
    • Existing filter hook action_scheduler_claim_actions_order_by enhanced to provide callbacks with additional information.
    • Improved compatibility with PHP 8.4, specifically by making implicitly nullable parameters explicitly nullable.
    • A large number of coding standards-enhancements, to help reduce friction when submitting plugins to marketplaces and plugin directories. Special props @crstauf for this effort.
    • Minor documentation tweaks and improvements.
    Open source →
  7. 3.8.2 12 Sep 2024
    Release notes
    • Add missing parameter to the pre_as_enqueue_async_action hook.
    • Bump minimum PHP version to 7.0.
    • Bump minimum WordPress version to 6.4.
    • Make the batch size adjustable during processing.
    Open source →
    Release notes
    • Add missing parameter to the pre_as_enqueue_async_action hook.
    • Bump minimum PHP version to 7.0.
    • Bump minimum WordPress version to 6.4.
    • Make the batch size adjustable during processing.
    Open source →
  8. 3.8.1 20 Jun 2024
    Release notes
    • Fix typos.
    • Improve the messaging in our unidentified action exceptions.
    Open source →
    Release notes
    • Fix typos.
    • Improve the messaging in our unidentified action exceptions.
    Open source →
  9. 3.8.0 22 May 2024
    Release notes
    • Bump "Tested up to" version to 6.5.
    • Fix typos in perf.md.
    • Merge Release/3.7.4 into trunk.
    • Tweak - WP 6.5 compatibility.
    • Update minimum requirements for WordPress (and PHP). Fix test matrix.
    Open source →
    Release notes
    • Documentation - Fixed typos in perf.md.
    • Update - We now require WordPress 6.3 or higher.
    • Update - We now require PHP 7.0 or higher.
    Open source →
  10. 3.7.4 05 Apr 2024
    Release notes
    • Give a clear description of how the $unique parameter works.
    • Merge release/3.7.3 into trunk.
    • Preserve the tab field if set.
    • Tweak - WP 6.5 compatibility.
    Open source →
    Release notes
    • Give a clear description of how the $unique parameter works.
    • Preserve the tab field if set.
    • Tweak - WP 6.5 compatibility.
    Open source →
  11. 3.7.3 20 Mar 2024
    Release notes
    • Do not iterate over all of GET when building form in list table.
    • Fix a few issues reported by PCP (Plugin Check Plugin).
    • Try to save actions as unique even when the store doesn't support it.
    • Tweak - WP 6.4 compatibility.
    • Update "Tested up to" tag to WordPress 6.5.
    • update version in package-lock.json.
    Open source →
  12. 3.7.2 14 Feb 2024
    Release notes
    • No longer user variables in _n() translation function.
    Open source →
  13. 3.7.1 13 Dec 2023
    Release notes
    • update semver to 5.7.2 because of a security vulnerability in 5.7.1.
    Open source →
  14. 3.7.0 20 Nov 2023
    Release notes
    • Important: starting with this release, Action Scheduler follows an L-2 version policy (WordPress, and consequently PHP).
    • Add extended indexes for hook_status_scheduled_date_gmt and status_scheduled_date_gmt.
    • Catch and log exceptions thrown when actions can't be created, e.g. under a corrupt database schema.
    • Tweak - WP 6.4 compatibility.
    • Update unit tests for upcoming dependency version policy.
    • make sure hook action_scheduler_failed_execution can access original exception object.
    • mention dependency version policy in usage.md.
    Open source →
  15. 3.6.4 11 Oct 2023
    Release notes
    • Performance improvements when bulk cancelling actions.
    • Dev-related fixes.
    Open source →
  16. 3.6.3 13 Sep 2023
    Release notes
    • Use _doing_it_wrong in initialization check.
    Open source →
  17. 3.6.2 09 Aug 2023
    Release notes
    • Add guidance about passing arguments.
    • Atomic option locking.
    • Improve bulk delete handling.
    • Include database error in the exception message.
    • Tweak - WP 6.3 compatibility.
    Open source →
  18. 3.6.1 14 Jun 2023
    Release notes
    • Document new optional $priority arg for various API functions.
    • Document the new --exclude-groups WP CLI option.
    • Document the new action_scheduler_init hook.
    • Ensure actions within each claim are executed in the expected order.
    • Fix incorrect text domain.
    • Remove SHOW TABLES usage when checking if tables exist.
    Open source →
  19. 3.6.0 10 May 2023
    Release notes
    • Add $unique parameter to function signatures.
    • Add a cast-to-int for extra safety before forming new DateTime object.
    • Add a hook allowing exceptions for consistently failing recurring actions.
    • Add action priorities.
    • Add init hook.
    • Always raise the time limit.
    • Bump minimatch from 3.0.4 to 3.0.8.
    • Bump yaml from 2.2.1 to 2.2.2.
    • Defensive coding relating to gaps in declared schedule types.
    • Do not process an action if it cannot be set to in-progress.
    • Filter view labels (status names) should be translatable | #919.
    • Fix WPCLI progress messages.
    • Improve data-store initialization flow.
    • Improve error handling across all supported PHP versions.
    • Improve logic for flushing the runtime cache.
    • Support exclusion of multiple groups.
    • Update lint-staged and Node/NPM requirements.
    • add CLI clean command.
    • add CLI exclude-group filter.
    • exclude past-due from list table all filter count.
    • throwing an exception if as_schedule_recurring_action interval param is not of type integer.
    Open source →
  20. 3.5.4 17 Jan 2023
    Release notes
    • Add pre filters during action registration.
    • Async scheduling.
    • Calculate timeouts based on total actions.
    • Correctly order the parameters for ActionScheduler_ActionFactory's calls to single_unique.
    • Fetch action in memory first before releasing claim to avoid deadlock.
    • PHP 8.2: declare property to fix creation of dynamic property warning.
    • PHP 8.2: fix "Using ${var} in strings is deprecated, use {$var} instead".
    • Prevent undefined variable warning for $num_pastdue_actions.
    Open source →
  21. 3.5.3 09 Nov 2022
    Release notes
    • Query actions with partial match.
    Open source →
  22. 3.5.2 16 Sep 2022
    Release notes
    • Fix - erroneous 3.5.1 release.
    Open source →
  23. 3.5.1 13 Sep 2022
    Release notes
    • Maintenance on A/S docs.
    • fix: PHP 8.2 deprecated notice.
    Open source →
  24. 3.5.0 25 Aug 2022
    Release notes
    • Add - The active view link within the "Tools > Scheduled Actions" screen is now clickable.
    • Add - A warning when there are past-due actions.
    • Enhancement - Added the ability to schedule unique actions via an atomic operation.
    • Enhancement - Improvements to cache invalidation when processing batches (when running on WordPress 6.0+).
    • Enhancement - If a recurring action is found to be consistently failing, it will stop being rescheduled.
    • Enhancement - Adds a new "Past Due" view to the scheduled actions list table.
    Open source →
  25. 3.4.2 08 Jun 2022
    Release notes
    • Fix - Change the include for better linting.
    • Fix - update: Added Action scheduler completed action hook.
    Open source →
  26. 3.4.1 03 May 2022
    Release notes
    • Fix - Change the include for better linting.
    • Fix - Fix the documented return type.
    Open source →
  27. 3.4.0 28 Oct 2021
    Release notes
    • Enhancement - Number of items per page can now be set for the Scheduled Actions view (props @ovidiul). #771
    • Fix - Do not lower the max_execution_time if it is already set to 0 (unlimited) (props @barryhughes). #755
    • Fix - Avoid triggering autoloaders during the version resolution process (props @olegabr). #731 & #776
    • Dev - ActionScheduler_wcSystemStatus PHPCS fixes (props @ovidiul). #761
    • Dev - ActionScheduler_DBLogger.php PHPCS fixes (props @ovidiul). #768
    • Dev - Fixed phpcs for ActionScheduler_Schedule_Deprecated (props @ovidiul). #762
    • Dev - Improve actions table indices (props @glagonikas). #774 & #777
    • Dev - PHPCS fixes for ActionScheduler_DBStore.php (props @ovidiul). #769 & #778
    • Dev - PHPCS Fixes for ActionScheduler_Abstract_ListTable (props @ovidiul). #763 & #779
    • Dev - Adds new filter action_scheduler_claim_actions_order_by to allow tuning of the claim query (props @glagonikas). #773
    • Dev - PHPCS fixes for ActionScheduler_WpPostStore class (props @ovidiul). #780
    Open source →
  28. 3.3.0 15 Sep 2021
    Release notes
    • Enhancement - Adds as_has_scheduled_action() to provide a performant way to test for existing actions. #645
    • Fix - Improves compatibility with environments where NO_ZERO_DATE is enabled. #519
    • Fix - Adds safety checks to guard against errors when our database tables cannot be created. #645
    • Dev - Now supports queries that use multiple statuses. #649
    • Dev - Minimum requirements for WordPress and PHP bumped (to 5.2 and 5.6 respectively). #723
    Open source →
  29. 3.2.1 21 Jun 2021
    Release notes
    • Fix - Add extra safety/account for different versions of AS and different loading patterns. #714
    • Fix - Handle hidden columns (Tools → Scheduled Actions) | #600.
    Open source →
  30. 3.2.0 03 Jun 2021
    Release notes
    • Fix - Add "no ordering" option to as_next_scheduled_action().
    • Fix - Add secondary scheduled date checks when claiming actions (DBStore) | #634.
    • Fix - Add secondary scheduled date checks when claiming actions (wpPostStore) | #634.
    • Fix - Adds a new index to the action table, reducing the potential for deadlocks (props: @glagonikas).
    • Fix - Fix unit tests infrastructure and adapt tests to PHP 8.
    • Fix - Identify in-use data store.
    • Fix - Improve test_migration_is_scheduled.
    • Fix - PHP notice on list table.
    • Fix - Speed up clean up and batch selects.
    • Fix - Update pending dependencies.
    • Fix - [PHP 8.0] Only pass action arg values through to do_action_ref_array().
    • Fix - [PHP 8] Set the PHP version to 7.1 in composer.json for PHP 8 compatibility.
    • Fix - add is_initialized() to docs.
    • Fix - fix file permissions.
    • Fix - fixes #664 by replacing __ with esc_html__.
    Open source →
  31. 3.1.6 12 May 2020
    Release notes
    • Change log starts.
    Open source →
  32. v3.1.5 05 May 2020

    Nothing published for this version

  33. 3.1.4 18 Mar 2020

    Nothing published for this version

  34. 3.1.3 16 Mar 2020

    Nothing published for this version

  35. 3.1.2 10 Mar 2020

    Nothing published for this version

  36. 3.1.1 25 Feb 2020

    Nothing published for this version

  37. 3.1.0 13 Feb 2020

    Nothing published for this version

  38. 3.0.1 14 Jan 2020

    Nothing published for this version

  39. 3.0.0 03 Jan 2020

    Nothing published for this version

  40. 3.0.0-beta-1 03 Sep 2019 pre-release

    Nothing published for this version

  41. 3.0.0-RC-4 14 Nov 2019 pre-release

    Nothing published for this version

  42. 3.0.0-RC-3 06 Nov 2019 pre-release

    Nothing published for this version

  43. 3.0.0-RC-2 25 Oct 2019 pre-release

    Nothing published for this version

  44. 3.0.0-RC-1 22 Oct 2019 pre-release

    Nothing published for this version

  45. 2.2.5 24 Apr 2019

    Nothing published for this version

  46. 2.2.4 15 Apr 2019

    Nothing published for this version

  47. 2.2.3 28 Mar 2019

    Nothing published for this version

  48. 2.2.2 28 Mar 2019

    Nothing published for this version

  49. 2.2.1 13 Mar 2019

    Nothing published for this version

  50. 2.2.0 31 Jan 2019

    Nothing published for this version

  51. v2.1.1 02 Nov 2018

    Nothing published for this version

  52. 2.1.0 14 Sep 2018

    Nothing published for this version

  53. 2.0.0 05 Jul 2018

    Nothing published for this version

  54. 2.0.0-beta-2 12 Jun 2018 pre-release

    Nothing published for this version

  55. 2.0.0-beta-1 28 May 2018 pre-release

    Nothing published for this version

  56. 2.0.0-RC-2 27 Jun 2018 pre-release

    Nothing published for this version

  57. 2.0.0-RC-1 21 Jun 2018 pre-release

    Nothing published for this version

  58. 1.5.3 04 May 2017

    Nothing published for this version

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