Skip to main content

Successor of the deferred library shipped with Google AppEngine (GAE)

Project description

Successor of the so useful deferred library on Google AppEngine (GAE).

It should fix some issues. It should work async.

Usage

By example:

from google.appengine.ext import ndb
import deferred2 as deferred


def work(message):
    pass


@ndb.tasklet
def defer_one_task():
    yield deferred.defer_async(work, 'to be done')


@ndb.tasklet
def defer_multiple_tasks():
    yield deferred.defer_multi_async(
        deferred.task(work, 'Hello'),
        deferred.task(work, 'world!'))


@ndb.tasklet
def defer_deferring():
    # this one enqueues one task right now, which will then add all the
    # other tasks
    yield deferred.one_shot_async(
        deferred.task(work, 'Hello'),
        deferred.task(work, 'world!'))

You see, it pretty much looks and works as before.

Changes

  • transactional’s new default is auto (instead of False), t.i. if your inside a transaction it will be set to True, otherwise it will be False

  • You can set _urlsuffix which can be a str or a sequence of strs; which will get appended to the url. Pure cosmetics.

  • In case you set a name that is too long or contains invalid characters, a hash of the name will be used instead.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deferred2-0.0.1.tar.gz (5.3 kB view hashes)

Uploaded Source

Built Distribution

deferred2-0.0.1-py2-none-any.whl (6.6 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page