New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

cronut

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cronut

Tasty task scheduler with a mungable internal clock filling.

2.1.1
latest
Source
npm
Version published
Weekly downloads
0
-100%
Maintainers
1
Weekly downloads
 
Created
Source

cronut

NPM version Downloads Build Status Coverage Status Tip

Tasty task scheduler with a mungable internal clock filling.

Install

$ npm install --save cronut

Usage

Schedule Tasks

import cronut from 'cronut';

const cron = cronut();

cron('0 0 0 * * *', () => {
    console.log('another hour');
});

cron('0 0 * * * *', () => {
    console.log('another minute');
});

cron('* * * * * *', () => {
    console.log('another second');
});

cron('0 30 0,12 * * 1-5', () => {
    console.log('12:30 AM and PM on weekdays');
});

Unschedule Tasks

const removeTask = cron('0 * * * * *', () => {
    // only run 10 or so times
    console.log('another second');
});

// Unschedule after 10 seconds
setTimeout(removeTask, 10000);

API

cronut()

Creates a new task scheduler.

import cronut from 'cronut';

const cron = cronut();

cron(pattern, task[, options]) : Function

cron.addTask(pattern, task[, options]) : Function

  • pattern String
  • task Function
  • options Object
    • resolution Number Default: 100.

Patterns are any valid pattern supported by cron. The task is the function to be executed at the appointed times. Returns a function to stop the task.

cron('* * * * * *', () => {
    console.log('another second');
});

// same as

cron.addTask('* * * * * *', () => {
    console.log('another second');
});

// removable

const removeTask = cron.addTask('* * * * * *', () => {
    console.log('another second');
});

removeTask();

cron.now(fn)

  • fn Function

Sets the moment.now function and resets internal cron timers.

cron.now(() => {
    // It's tomorrow! Heh heh.
    return Number(new Date()) + (24 * 60 * 60 * 1000);
});

Why?

There are a bunch of task schedulers already available, but none of them allowed me to mess with the internal clock for timeline manipulation or testing purposes.

Contribute

Standards for this project, including tests, code coverage, and semantics are enforced with a build tool. Pull requests must include passing tests with 100% code coverage and no linting errors.

Test

$ npm test

© Shannon Moeller me@shannonmoeller.com (http://shannonmoeller.com)

Licensed under MIT

FAQs

Package last updated on 14 Oct 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts