Upgrade TickerQ packages to 10.2.0 and add helper to #25091
Conversation
There was a problem hiding this comment.
Pull request overview
Upgrades TickerQ NuGet dependencies to 10.2.0 and updates ABP’s TickerQ integration to support the new per-function maxConcurrency parameter during function registration.
Changes:
- Bumped
TickerQ*package versions to10.2.0and recorded the upgrade in version-change docs. - Updated function-registration tuple shape to include
maxConcurrencyand propagated it through background job/worker integrations. - Added
MaxConcurrencyconfiguration knobs for background jobs (time ticker) and background workers (cron ticker), plus updated documentation samples.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| modules/background-jobs/app/Volo.Abp.BackgroundJobs.DemoApp.TickerQ/DemoAppTickerQModule.cs | Demo app registration updated to pass maxConcurrency (default 0). |
| framework/src/Volo.Abp.TickerQ/Volo/Abp/TickerQ/AbpTickerQFunctionProvider.cs | Function dictionary tuple updated to include int maxConcurrency. |
| framework/src/Volo.Abp.BackgroundWorkers.TickerQ/Volo/Abp/BackgroundWorkers/TickerQ/AbpTickerQBackgroundWorkerManager.cs | Background worker function registration now passes configured MaxConcurrency. |
| framework/src/Volo.Abp.BackgroundWorkers.TickerQ/Volo/Abp/BackgroundWorkers/TickerQ/AbpBackgroundWorkersCronTickerConfiguration.cs | Added MaxConcurrency option for cron worker functions. |
| framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTimeTickerConfiguration.cs | Added MaxConcurrency option for background job functions. |
| framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTickerQModule.cs | Job function registration updated to include configured MaxConcurrency. |
| docs/en/package-version-changes.md | Documented TickerQ package version bumps. |
| docs/en/framework/infrastructure/background-workers/tickerq.md | Updated code samples to include maxConcurrency argument. |
| docs/en/framework/infrastructure/background-jobs/tickerq.md | Updated code samples to include maxConcurrency argument. |
| Directory.Packages.props | Updated TickerQ package versions to 10.2.0. |
maliming
left a comment
There was a problem hiding this comment.
All three review comments have been addressed:
- Added
AddFunctionhelper method toAbpTickerQFunctionProviderto avoid breaking public API changes — callers no longer need to interact with the internal tuple structure directly. - Fixed
{ get;}formatting to{ get; }. - Added named tuple fields:
CronExpression,Priority,Function,MaxConcurrency.
There was a problem hiding this comment.
Pull request overview
Updates ABP’s TickerQ integration to align with TickerQ 10.2.0 (notably the new per-function maxConcurrency registration element) and refreshes internal usage + docs accordingly.
Changes:
- Upgraded TickerQ-related NuGet packages from 10.1.1 to 10.2.0.
- Introduced
AbpTickerQFunctionProvider.AddFunction(...)and updated internal call sites/docs to use it. - Added
MaxConcurrencyto TickerQ configuration objects for background jobs/workers.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| modules/background-jobs/app/Volo.Abp.BackgroundJobs.DemoApp.TickerQ/DemoAppTickerQModule.cs | Switches demo function registration to AddFunction. |
| framework/src/Volo.Abp.TickerQ/Volo/Abp/TickerQ/AbpTickerQFunctionProvider.cs | Changes function tuple shape and adds AddFunction helper. |
| framework/src/Volo.Abp.BackgroundWorkers.TickerQ/Volo/Abp/BackgroundWorkers/TickerQ/AbpTickerQBackgroundWorkerManager.cs | Registers background worker functions via AddFunction, passing configured MaxConcurrency. |
| framework/src/Volo.Abp.BackgroundWorkers.TickerQ/Volo/Abp/BackgroundWorkers/TickerQ/AbpBackgroundWorkersCronTickerConfiguration.cs | Adds MaxConcurrency option for workers. |
| framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTimeTickerConfiguration.cs | Adds MaxConcurrency option for jobs. |
| framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTickerQModule.cs | Registers jobs via AddFunction, passing configured MaxConcurrency. |
| docs/en/package-version-changes.md | Documents the TickerQ package bump. |
| docs/en/framework/infrastructure/background-workers/tickerq.md | Updates samples to use AddFunction. |
| docs/en/framework/infrastructure/background-jobs/tickerq.md | Updates samples to use AddFunction. |
| Directory.Packages.props | Bumps TickerQ package versions to 10.2.0. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dev #25091 +/- ##
=======================================
Coverage 50.64% 50.64%
=======================================
Files 3465 3465
Lines 116732 116732
Branches 8819 8819
=======================================
Hits 59116 59116
Misses 55817 55817
Partials 1799 1799 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Upgrades all TickerQ-related NuGet packages from
10.1.1to10.2.0.TickerQ 10.2.0 adds per-function concurrency control via a new
maxConcurrencyparameter, changing the function registration tuple from 3 to 4 elements. This PR follows that change and also adds:AddFunctionhelper method onAbpTickerQFunctionProviderwith input validation and duplicate-registration guard, as a cleaner alternative toFunctions.TryAdd.MaxConcurrencyproperty onAbpBackgroundJobsTimeTickerConfigurationandAbpBackgroundWorkersCronTickerConfiguration.