PHPackages                             mwstake/mediawiki-component-wikicron - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. mwstake/mediawiki-component-wikicron

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

mwstake/mediawiki-component-wikicron
====================================

Cron manager for MediaWiki

5.0.0(3w ago)16.7k↓35.6%[1 issues](https://github.com/hallowelt/mwstake-mediawiki-component-wikicron/issues)GPL-3.0-onlyPHPCI passing

Since Jan 15Pushed 3w ago2 watchersCompare

[ Source](https://github.com/hallowelt/mwstake-mediawiki-component-wikicron)[ Packagist](https://packagist.org/packages/mwstake/mediawiki-component-wikicron)[ RSS](/packages/mwstake-mediawiki-component-wikicron/feed)WikiDiscussions main Synced 2d ago

READMEChangelog (10)Dependencies (27)Versions (26)Used By (0)

Wiki cron
=========

[](#wiki-cron)

Mechanism for executing scheduled tasks in MediaWiki

This allows extension to run [ProcessManager processes](https://github.com/hallowelt/mwstake-mediawiki-component-processmanager/blob/main/README.md)on a schedule, using standard crontab expression.

Compatibility
-------------

[](#compatibility)

- `5.0.x` -&gt; MediaWiki 1.47
- `4.0.x` -&gt; MediaWiki 1.43
- `3.0.x` -&gt; MediaWiki 1.43
- `2.0.x` -&gt; MediaWiki 1.43
- `1.0.x` -&gt; MediaWiki 1.43

Declare a cron
--------------

[](#declare-a-cron)

Use the `MWStake.WikiCronManager` service to declare a cron. The cron key is a unique identifier for the cron, the cron expression is a standard crontab expression, and the process is a `ManagedProcess` object (see above linked ProcessManager docu for more info).

```
$GLOBALS['wgExtensionFunctions'][] = static function () {
    /** @var WikiCronManager $cronManager */
    $cronManager = MediaWikiServices::getInstance()->getService( 'MWStake.WikiCronManager' );
    $cronManager->registerCron( 'notify', '*/5 * * * *', new ManagedProcess( [
        'test' => [ 'class' => TestStep::class ]
    ] ) );
};
```

Note: This does not need to be declared in an `extension function` but needs to be late enough to prevent premature service access.

Thats it! This process will be executed as declared in the cron expression. (as long as `processRunner` is running).

Info script
===========

[](#info-script)

See what crons are declared and their statuses.

List crons
----------

[](#list-crons)

```
> php maintenance/wikiCron.php
--------------------------------------------------------------------------------------------------------------
Interval            Cron key                                Enabled   Last run                 Last Status
--------------------------------------------------------------------------------------------------------------
*/5 * * * *         notify                                  Yes       2024-11-08 14:20:57      terminated
--------------------------------------------------------------------------------------------------------------
```

Note: If interval was manually override, it will be marked with `(ovr)` in the list/details.

Get full info and history on a cron
-----------------------------------

[](#get-full-info-and-history-on-a-cron)

```
> php maintenance/wikiCron.php --name=notify

Cron key: notify
Interval: */5 * * * *
Enabled: 1
Last run: 2024-11-08 14:30:06
Last status: terminated
--------------------------------------------------------------------------------------------------------------
Steps:
{
"test": {
"class": "MediaWiki\\Extension\\NotifyMe\\TestStep"
}
}
--------------------------------------------------------------------------------------------------------------
Execution history (max 20):
--------------------------------------------------------------------------------------------------------------
Time                     State               Exit code      Output
--------------------------------------------------------------------------------------------------------------
20241108143006           terminated          0              {"some":"data"}
20241108142501           terminated          0              {"some":"data"}
20241108142057           terminated          0              {"some":"data"}
20241108141652           terminated          0              {"some":"data"}
20241108141551           terminated          0              {"some":"data"}
20241108141450           terminated          0              {"some":"data"}
20241108141348           terminated          0              {"some":"data"}
20241108141247           terminated          0              {"some":"data"}
20241108141146           terminated          0              {"some":"data"}
20241108141045           terminated          0              {"some":"data"}
20241108140944           terminated          0              {"some":"data"}
20241108140842           terminated          0              {"some":"data"}
20241108140741           terminated          0              {"some":"data"}
20241108140640           terminated          0              {"some":"data"}
20241108140538           terminated          0              {"some":"data"}
20241108140437           terminated          0              {"some":"data"}
20241108140335           terminated          0              {"some":"data"}
20241108140234           terminated          0              {"some":"data"}
20241108140133           terminated          0              {"some":"data"}
20241108140031           terminated          0              {"some":"data"}
--------------------------------------------------------------------------------------------------------------
```

Functions
---------

[](#functions)

Disable a cron

```
> php maintenance/wikiCron.php --name=notify --disable

```

Enable a cron

```
> php maintenance/wikiCron.php --name=notify --enable

```

Set interval

```
> php maintenance/wikiCron.php --name=notify --interval="*/10 * * * *"

```

Reset interval to default

```
> php maintenance/wikiCron.php --name=notify --interval="default"

```

Force run

```
> php maintenance/wikiCron.php --name=notify --force-run

```

###  Health Score

43

—

FairBetter than 89% of packages

Maintenance75

Regular maintenance activity

Popularity26

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 54.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~23 days

Recently: every ~12 days

Total

23

Last Release

25d ago

Major Versions

1.0.x-dev → 2.0.12025-10-10

2.0.3 → 3.0.02026-02-20

2.0.x-dev → 3.0.x-dev2026-02-23

3.1.1 → 4.0.02026-04-23

4.0.x-dev → 5.0.02026-06-09

### Community

Maintainers

![](https://www.gravatar.com/avatar/161c38b5448b71865cf0652b6974ed489dd3683b5d6e1814973cea6cb66c8f1d?d=identicon)[dsavuljesku](/maintainers/dsavuljesku)

---

Top Contributors

[![it-spiderman](https://avatars.githubusercontent.com/u/13665198?v=4)](https://github.com/it-spiderman "it-spiderman (24 commits)")[![HamishSlater](https://avatars.githubusercontent.com/u/26261210?v=4)](https://github.com/HamishSlater "HamishSlater (17 commits)")[![osnard](https://avatars.githubusercontent.com/u/1201528?v=4)](https://github.com/osnard "osnard (3 commits)")

### Embed Badge

![Health badge](/badges/mwstake-mediawiki-component-wikicron/health.svg)

```
[![Health](https://phpackages.com/badges/mwstake-mediawiki-component-wikicron/health.svg)](https://phpackages.com/packages/mwstake-mediawiki-component-wikicron)
```

###  Alternatives

[helsingborg-stad/municipio

A bootstrap theme for creating municipality sites.

4028.5k10](/packages/helsingborg-stad-municipio)[mediawiki/maps

Adds various mapping features to MediaWiki

84152.3k3](/packages/mediawiki-maps)[starcitizentools/citizen-skin

A beautiful, usable, responsive MediaWiki skin with in-depth extension support. Originally developed for the Star Citizen Wiki.

3376.6k](/packages/starcitizentools-citizen-skin)[civicrm/civicrm-drupal-8

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

19251.4k3](/packages/civicrm-civicrm-drupal-8)[altis/core

Core module for Altis

19228.0k3](/packages/altis-core)[pressbooks/pressbooks-aldine

Aldine is the default theme for the home page of Pressbooks networks. It is named for the Aldine Press, founded by Aldus Manutius in 1494, who is regarded by many as the world’s first publisher.

114.5k](/packages/pressbooks-pressbooks-aldine)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
