Scheduled Tasks

The ToDo Pier app has a dependency on Sean DeNigris's Scheduler so that it can run tasks at specific times. This is done by:

  1. first creating a normal task, and adding reformatted code to execute, such as:

    (PRScheduledTaskExamples newForKernelNamed: 'Pier') reportOfHistoryOnPageAt: '/John Borden/Todo/Add a History Report/Report'.

    Be sure to check the kernel name, it is case sensitive. If the wrong name is given, it will create a new kernel (and more problems later). It can be checked with:

    PRKernel instances size.  "Should be 1"

  2. Create the report page (in this example /John Borden/Todo/Add a History Report/Report). This can be an empty page.
  3. In the Pharo image, execute:

    (PRPathLookup start: (PRKernel instanceNamed: 'Pier') root path: '/John Borden/Todo/Add a History Report') automate.

    This will change the task to be marked as completed and hidden from the menus. If the task was given a repeat duration, it will execute the above code with that frequency.

Once several tasks are automated like this, it is valuable to add a report of tasks, such as:


Run every 90 minutes:

Report generated on May-06 12:59 pm

Task NameNext RunRun Count
Add a Scheduler Report2026-05-06T12:59:00-05:00743
Update Overdue Repeating Tasks2026-05-07T04:59:00-05:0047
Wiki Health Check2026-05-06T21:59:00-05:0094
Find Broken Links2026-05-07T04:59:00-05:0047
Add a History Report2026-05-06T13:59:00-05:00372
Print Wiki Load to File2026-05-06T13:15:00-05:002218
Monitor Pier Access2026-05-06T17:05:00-05:0062

(PRScheduledTaskExamples newForKernelNamed: 'Pier') reportOfSchedulerAt: '/John Borden/Todo' onPageAt: '/John Borden/Todo/Add a Scheduler Report/report'.