Skip to content

Commit 76b416b

Browse files
author
Ask Solem
committed
Added standard distribution files and a first draft for a README
1 parent a7c050d commit 76b416b

File tree

10 files changed

+388
-0
lines changed

10 files changed

+388
-0
lines changed

Diff for: AUTHORS

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
Ordered by date of first contribution:
2+
Ask Solem <[email protected]>
3+
Grégoire Cachet <[email protected]>
4+
Vitaly Babiy <[email protected]>
5+
Brian Rosner <[email protected]>
6+
Sean Creeley <[email protected]>
7+
Ben Firshman <[email protected]>
8+
Augusto Becciu <[email protected]>
9+
Jonatan Heyman <[email protected]>
10+
Mark Hellewell <[email protected]>
11+
Jerzy Kozera <[email protected]>
12+
Brad Jasper <[email protected]>
13+
Wes Winham <[email protected]>
14+
Timo Sugliani
15+
Michael Elsdoerfer <[email protected]>
16+
Jason Baker <[email protected]>
17+
Wes Turner <[email protected]>
18+
Maxim Bodyansky <[email protected]>
19+
Rune Halvorsen <[email protected]>
20+
Aaron Ross <[email protected]>
21+
Adam Endicott
22+
Jesper Noehr <[email protected]>
23+
Mark Stover <[email protected]>
24+
Andrew Watts <[email protected]>
25+
Felix Berger <[email protected]
26+
Reza Lotun <[email protected]>
27+
Mikhail Korobov <[email protected]>
28+
Jeff Balogh <[email protected]>
29+
Patrick Altman <[email protected]>
30+
Vincent Driessen <[email protected]>
31+

Diff for: Changelog

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
================
2+
Change history
3+
================
4+
5+
1.1.0 [xxxx-xx-xx xx:xx x.x xxxx]
6+
=================================
7+
8+
* Initial release

Diff for: INSTALL

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Installing django-celery
2+
========================
3+
4+
You can install ``django-celery`` either via the Python Package Index (PyPI)
5+
or from source.
6+
7+
To install using ``pip``,::
8+
9+
$ pip install django-celery
10+
11+
To install using ``easy_install``,::
12+
13+
$ easy_install django-celery
14+
15+
If you have downloaded a source tarball you can install it
16+
by doing the following,::
17+
18+
$ python setup.py build
19+
# python setup.py install # as root

Diff for: LICENSE

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
Copyright (c) 2009, Ask Solem
2+
All rights reserved.
3+
4+
Redistribution and use in source and binary forms, with or without
5+
modification, are permitted provided that the following conditions are met:
6+
7+
* Redistributions of source code must retain the above copyright notice,
8+
this list of conditions and the following disclaimer.
9+
* Redistributions in binary form must reproduce the above copyright
10+
notice, this list of conditions and the following disclaimer in the
11+
documentation and/or other materials provided with the distribution.
12+
13+
Neither the name of Ask Solem nor the names of its contributors may be used
14+
to endorse or promote products derived from this software without specific
15+
prior written permission.
16+
17+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
19+
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20+
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21+
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22+
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23+
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24+
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25+
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26+
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27+
POSSIBILITY OF SUCH DAMAGE.
28+

Diff for: MANIFEST.in

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
include AUTHORS
2+
include Changelog
3+
include README
4+
include README.rst
5+
include MANIFEST.in
6+
include LICENSE
7+
include TODO
8+
include THANKS
9+
include pavement.py
10+
include setup.cfg
11+
recursive-include djcelery *.py
12+
recursive-include docs *
13+
recursive-include tests *
14+
recursive-include contrib *
15+
prune tests/*.pyc
16+
prune docs/*.pyc
17+
prune contrib/*.pyc
18+
prune djcelery/*.pyc
19+
prune docs/.build

Diff for: README

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
README.rst

Diff for: README.rst

+135
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
===============================================
2+
django-celery - Celery Integration for Django
3+
===============================================
4+
5+
.. image:: http://cloud.github.com/downloads/ask/celery/celery_favicon_128.png
6+
7+
:Version: 1.1.0
8+
:Web: http://celeryproject.org/
9+
:Download: http://pypi.python.org/pypi/django-celery/
10+
:Source: http://github.com/ask/django-celery/
11+
:Keywords: celery, task queue, job queue, asynchronous, rabbitmq, amqp, redis,
12+
python, django, webhooks, queue, distributed
13+
14+
--
15+
16+
django-celery provides Celery integration for Django; Using the Django ORM
17+
and cache backend for storing results, autodiscovery of task modules
18+
for applications listed in ``INSTALLED_APPS``, and more.
19+
20+
`Celery`_ is a task queue/job queue based on distributed message passing.
21+
It is focused on real-time operation, but supports scheduling as well.
22+
23+
The execution units, called tasks, are executed concurrently on a single or
24+
more worker servers. Tasks can execute asynchronously (in the background) or synchronously
25+
(wait until ready).
26+
27+
Celery is already used in production to process millions of tasks a day.
28+
29+
Celery is written in Python, but the protocol can be implemented in any
30+
language. It can also `operate with other languages using webhooks`_.
31+
32+
The recommended message broker is `RabbitMQ`_, but support for `Redis`_ and
33+
databases (`SQLAlchemy`_ / `Django`_) is also available.
34+
35+
.. _`Celery`: http://celeryproject.org/
36+
.. _`RabbitMQ`: http://www.rabbitmq.com/
37+
.. _`Redis`: http://code.google.com/p/redis/
38+
.. _`SQLAlchemy`: http://www.sqlalchemy.org/
39+
.. _`operate with other languages using webhooks`:
40+
http://ask.github.com/celery/userguide/remote-tasks.html
41+
42+
Documentation
43+
=============
44+
45+
The `latest documentation`_ with user guides, tutorials and API reference
46+
is hosted at Github. Be sure to also read the `Celery User Manual`_.
47+
48+
.. _`latest documentation`: http://celeryproject.org/docs/django-celery/
49+
.. _`Celery User Manual`: http://celeryproject.org/docs/
50+
51+
Installation
52+
=============
53+
54+
You can install ``django-celery`` either via the Python Package Index (PyPI)
55+
or from source.
56+
57+
To install using ``pip``,::
58+
59+
$ pip install django-celery
60+
61+
To install using ``easy_install``,::
62+
63+
$ easy_install django-celery
64+
65+
Downloading and installing from source
66+
--------------------------------------
67+
68+
Download the latest version of ``django-celery`` from
69+
http://pypi.python.org/pypi/django-celery/
70+
71+
You can install it by doing the following,::
72+
73+
$ tar xvfz django-celery-0.0.0.tar.gz
74+
$ cd django-celery-0.0.0
75+
$ python setup.py build
76+
# python setup.py install # as root
77+
78+
Using the development version
79+
------------------------------
80+
81+
You can clone the repository by doing the following::
82+
83+
$ git clone git://github.com/ask/django-celery.git
84+
85+
86+
Getting Help
87+
============
88+
89+
Mailing list
90+
------------
91+
92+
For discussions about the usage, development, and future of celery,
93+
please join the `celery-users`_ mailing list.
94+
95+
.. _`celery-users`: http://groups.google.com/group/celery-users/
96+
97+
IRC
98+
---
99+
100+
Come chat with us on IRC. The `#celery`_ channel is located at the `Freenode`_
101+
network.
102+
103+
.. _`#celery`: irc://irc.freenode.net/celery
104+
.. _`Freenode`: http://freenode.net
105+
106+
107+
Bug tracker
108+
===========
109+
110+
If you have any suggestions, bug reports or annoyances please report them
111+
to our issue tracker at http://github.com/ask/django-celery/issues/
112+
113+
Wiki
114+
====
115+
116+
http://wiki.github.com/ask/celery/
117+
118+
Contributing
119+
============
120+
121+
Development of ``django-celery`` happens at Github:
122+
http://github.com/ask/django-celery
123+
124+
You are highly encouraged to participate in the development
125+
of ``celery``. If you don't like Github (for some reason) you're welcome
126+
to send regular patches.
127+
128+
License
129+
=======
130+
131+
This software is licensed under the ``New BSD License``. See the ``LICENSE``
132+
file in the top distribution directory for the full license text.
133+
134+
.. # vim: syntax=rst expandtab tabstop=4 shiftwidth=4 shiftround
135+

Diff for: THANKS

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
Thanks to Rune Halvorsen <[email protected]> for the name.
2+
Thanks to Anton Tsigularov <[email protected]> for the previous name (crunchy)
3+
which we had to abandon because of an existing project with that name.
4+
Thanks to Martin Mahner for the Sphinx theme.
5+
Thanks to Brian K. Jones for bunny.py (http://github.com/bkjones/bunny), the
6+
tool that inspired camqadm.

Diff for: TODO

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Please see our Issue Tracker at GitHub:
2+
http://github.com/ask/django-celery/issues

Diff for: pavement.py

+139
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
from paver.easy import *
2+
from paver import doctools
3+
from paver.setuputils import setup
4+
5+
options(
6+
sphinx=Bunch(builddir=".build"),
7+
)
8+
9+
def sphinx_builddir(options):
10+
return path("docs") / options.sphinx.builddir / "html"
11+
12+
13+
@task
14+
def clean_docs(options):
15+
sphinx_builddir(options).rmtree()
16+
17+
18+
@task
19+
@needs("clean_docs", "paver.doctools.html")
20+
def html(options):
21+
destdir = path("Documentation")
22+
destdir.rmtree()
23+
builtdocs = sphinx_builddir(options)
24+
builtdocs.move(destdir)
25+
26+
27+
@task
28+
@needs("clean_docs", "paver.doctools.html")
29+
def ghdocs(options):
30+
builtdocs = sphinx_builddir(options)
31+
sh("sphinx-to-github", cwd=builtdocs)
32+
sh("git checkout gh-pages && \
33+
cp -r %s/* . && \
34+
git commit . -m 'Rendered documentation for Github Pages.' && \
35+
git push origin gh-pages && \
36+
git checkout master" % builtdocs)
37+
38+
39+
@task
40+
@needs("clean_docs", "paver.doctools.html")
41+
def upload_pypi_docs(options):
42+
builtdocs = path("docs") / options.builddir / "html"
43+
sh("python setup.py upload_sphinx --upload-dir='%s'" % (builtdocs))
44+
45+
46+
@task
47+
@needs("upload_pypi_docs", "ghdocs")
48+
def upload_docs(options):
49+
pass
50+
51+
52+
@task
53+
def autodoc(options):
54+
sh("contrib/release/doc4allmods djcelery")
55+
56+
57+
@task
58+
def verifyindex(options):
59+
sh("contrib/release/verify-reference-index.sh")
60+
61+
62+
@task
63+
def flakes(options):
64+
sh("find djcelery -name '*.py' | xargs pyflakes")
65+
66+
67+
@task
68+
def clean_readme(options):
69+
path("README").unlink()
70+
path("README.rst").unlink()
71+
72+
73+
@task
74+
@needs("clean_readme")
75+
def readme(options):
76+
sh("python contrib/release/sphinx-to-rst.py docs/templates/readme.txt \
77+
> README.rst")
78+
sh("ln -sf README.rst README")
79+
80+
81+
@task
82+
def bump(options):
83+
sh("bump -c djcelery")
84+
85+
86+
@task
87+
@cmdopts([
88+
("coverage", "c", "Enable coverage"),
89+
("quick", "q", "Quick test"),
90+
("verbose", "V", "Make more noise"),
91+
])
92+
def test(options):
93+
cmd = "python manage.py test"
94+
if getattr(options, "coverage", False):
95+
cmd += " --coverage"
96+
if getattr(options, "quick", False):
97+
cmd = "env QUICKTEST=1 SKIP_RLIMITS=1 %s" % cmd
98+
if getattr(options, "verbose", False):
99+
cmd += " --verbosity=2"
100+
sh(cmd, cwd="tests")
101+
102+
103+
@task
104+
@cmdopts([
105+
("noerror", "E", "Ignore errors"),
106+
])
107+
def pep8(options):
108+
noerror = getattr(options, "noerror", False)
109+
return sh("""find . -name "*.py" | xargs pep8 | perl -nle'\
110+
print; $a=1 if $_}{exit($a)'""", ignore_error=noerror)
111+
112+
113+
@task
114+
def removepyc(options):
115+
sh("find . -name '*.pyc' | xargs rm")
116+
117+
118+
@task
119+
@needs("removepyc")
120+
def gitclean(options):
121+
sh("git clean -xdn")
122+
123+
124+
@task
125+
@needs("removepyc")
126+
def gitcleanforce(options):
127+
sh("git clean -xdf")
128+
129+
130+
@task
131+
@needs("pep8", "autodoc", "verifyindex", "test", "gitclean")
132+
def releaseok(options):
133+
pass
134+
135+
136+
@task
137+
@needs("releaseok", "removepyc", "upload_docs")
138+
def release(options):
139+
pass

0 commit comments

Comments
 (0)