aioschedule


Nameaioschedule JSON
Version 0.5.2 PyPI version JSON
download
home_pagehttps://github.com/ibrb/python-aioschedule
SummaryJob scheduling for humans.
upload_time2018-02-02 16:51:33
maintainer
docs_urlNone
authorDaniel Bader, Cochise Ruhulessin
requires_python
licenseMIT
keywords aioschedule
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            aioschedule
===========


.. image:: https://api.travis-ci.org/ibrb/python-aioschedule.svg?branch=master
        :target: https://travis-ci.org/ibrb/python-aioschedule

.. image:: https://coveralls.io/repos/ibrb/python-aioschedule/badge.svg?branch=master
        :target: https://coveralls.io/r/ibrb/python-aioschedule

.. image:: https://img.shields.io/pypi/v/aioschedule.svg
        :target: https://pypi.python.org/pypi/aioschedule

.. image:: https://media.ibrb.org/ibr/images/logos/landscape1200.png
        :target: https://media.ibrb.org/ibr/images/logos/landscape1200.png


Python job scheduling for humans. Forked and modified from github.com/dbader/schedule.

An in-process scheduler for periodic jobs that uses the builder pattern
for configuration. Schedule lets you run Python functions (or any other
callable) periodically at pre-determined intervals using a simple,
human-friendly syntax.

Inspired by `Adam Wiggins' <https://github.com/adamwiggins>`_ article `"Rethinking Cron" <https://adam.herokuapp.com/past/2010/4/13/rethinking_cron/>`_ and the `clockwork <https://github.com/Rykian/clockwork>`_ Ruby module.

Features
--------
- A simple to use API for scheduling jobs.
- Very lightweight and no external dependencies.
- Excellent test coverage.
- Tested on Python 3.5, and 3.6

Usage
-----

.. code-block:: bash

    $ pip install aioschedule

.. code-block:: python

    import asyncio
    import aioschedule as schedule
    import time

    async def job(message='stuff', n=1):
        print("Asynchronous invocation (%s) of I'm working on:" % n, message)
        asyncio.sleep(1)

    for i in range(1,3):
        schedule.every(1).seconds.do(job, n=i)
    schedule.every(5).to(10).days.do(job)
    schedule.every().hour.do(job, message='things')
    schedule.every().day.at("10:30").do(job)

    loop = asyncio.get_event_loop()
    while True:
        loop.run_until_complete(schedule.run_pending())
        time.sleep(0.1)

Documentation
-------------

Schedule's documentation lives at `schedule.readthedocs.io <https://schedule.readthedocs.io/>`_.

Please also check the FAQ there with common questions.


Development
-----------
Run `vagrant up` to spawn a virtual machine containing the development
environment. Make sure to set the `IBR_GIT_COMMITTER_NAME` and
`IBR_GIT_COMMITTER_EMAIL` environment variables.


Meta
----

- Daniel Bader - `@dbader_org <https://twitter.com/dbader_org>`_ - mail@dbader.org
- Cochise Ruhulessin - `@magicalcochise <https://twitter.com/magicalcochise>`_ - c.ruhulessin@ibrb.org

Distributed under the MIT license. See ``LICENSE.txt`` for more information.

https://github.com/ibrb/python-aioschedule

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ibrb/python-aioschedule",
    "name": "aioschedule",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "aioschedule",
    "author": "Daniel Bader, Cochise Ruhulessin",
    "author_email": "development@ibrb.io",
    "download_url": "https://files.pythonhosted.org/packages/39/8a/f73565aca3a01420a2e0906b7cd56c21060aeb420deba79b33b7e1f1c39e/aioschedule-0.5.2.tar.gz",
    "platform": "",
    "description": "aioschedule\n===========\n\n\n.. image:: https://api.travis-ci.org/ibrb/python-aioschedule.svg?branch=master\n        :target: https://travis-ci.org/ibrb/python-aioschedule\n\n.. image:: https://coveralls.io/repos/ibrb/python-aioschedule/badge.svg?branch=master\n        :target: https://coveralls.io/r/ibrb/python-aioschedule\n\n.. image:: https://img.shields.io/pypi/v/aioschedule.svg\n        :target: https://pypi.python.org/pypi/aioschedule\n\n.. image:: https://media.ibrb.org/ibr/images/logos/landscape1200.png\n        :target: https://media.ibrb.org/ibr/images/logos/landscape1200.png\n\n\nPython job scheduling for humans. Forked and modified from github.com/dbader/schedule.\n\nAn in-process scheduler for periodic jobs that uses the builder pattern\nfor configuration. Schedule lets you run Python functions (or any other\ncallable) periodically at pre-determined intervals using a simple,\nhuman-friendly syntax.\n\nInspired by `Adam Wiggins' <https://github.com/adamwiggins>`_ article `\"Rethinking Cron\" <https://adam.herokuapp.com/past/2010/4/13/rethinking_cron/>`_ and the `clockwork <https://github.com/Rykian/clockwork>`_ Ruby module.\n\nFeatures\n--------\n- A simple to use API for scheduling jobs.\n- Very lightweight and no external dependencies.\n- Excellent test coverage.\n- Tested on Python 3.5, and 3.6\n\nUsage\n-----\n\n.. code-block:: bash\n\n    $ pip install aioschedule\n\n.. code-block:: python\n\n    import asyncio\n    import aioschedule as schedule\n    import time\n\n    async def job(message='stuff', n=1):\n        print(\"Asynchronous invocation (%s) of I'm working on:\" % n, message)\n        asyncio.sleep(1)\n\n    for i in range(1,3):\n        schedule.every(1).seconds.do(job, n=i)\n    schedule.every(5).to(10).days.do(job)\n    schedule.every().hour.do(job, message='things')\n    schedule.every().day.at(\"10:30\").do(job)\n\n    loop = asyncio.get_event_loop()\n    while True:\n        loop.run_until_complete(schedule.run_pending())\n        time.sleep(0.1)\n\nDocumentation\n-------------\n\nSchedule's documentation lives at `schedule.readthedocs.io <https://schedule.readthedocs.io/>`_.\n\nPlease also check the FAQ there with common questions.\n\n\nDevelopment\n-----------\nRun `vagrant up` to spawn a virtual machine containing the development\nenvironment. Make sure to set the `IBR_GIT_COMMITTER_NAME` and\n`IBR_GIT_COMMITTER_EMAIL` environment variables.\n\n\nMeta\n----\n\n- Daniel Bader - `@dbader_org <https://twitter.com/dbader_org>`_ - mail@dbader.org\n- Cochise Ruhulessin - `@magicalcochise <https://twitter.com/magicalcochise>`_ - c.ruhulessin@ibrb.org\n\nDistributed under the MIT license. See ``LICENSE.txt`` for more information.\n\nhttps://github.com/ibrb/python-aioschedule\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Job scheduling for humans.",
    "version": "0.5.2",
    "project_urls": {
        "Download": "https://github.com/ibrb/python-aioschedule/tarball/0.5.2",
        "Homepage": "https://github.com/ibrb/python-aioschedule"
    },
    "split_keywords": [
        "aioschedule"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "398af73565aca3a01420a2e0906b7cd56c21060aeb420deba79b33b7e1f1c39e",
                "md5": "7c59bb3237c7e1792681a1250b7e843b",
                "sha256": "1fe8621d287f58cbba3d73695fbbd890355294ac0c01981a1fd1e4f0510fc744"
            },
            "downloads": -1,
            "filename": "aioschedule-0.5.2.tar.gz",
            "has_sig": false,
            "md5_digest": "7c59bb3237c7e1792681a1250b7e843b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 12763,
            "upload_time": "2018-02-02T16:51:33",
            "upload_time_iso_8601": "2018-02-02T16:51:33.940327Z",
            "url": "https://files.pythonhosted.org/packages/39/8a/f73565aca3a01420a2e0906b7cd56c21060aeb420deba79b33b7e1f1c39e/aioschedule-0.5.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2018-02-02 16:51:33",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ibrb",
    "github_project": "python-aioschedule",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "tox": true,
    "lcname": "aioschedule"
}
        
Elapsed time: 0.13819s