Metadata-Version: 1.0
Name: craft
Version: 0.2.5
Summary: Craft - Like Makefile, but in Python.
Home-page: http://pypi.python.org/pypi/craft/
Author: Jamie Paton
Author-email: jamie.paton@googlemail.com
License: LICENSE.txt
Description: Craft - idiomatic build tool for Python
        =======================================
        
        Craft is like Makefile, except everything is in native Python. 
        
        Install
        -------
        
        ``pip install craft``
        
        Craft works on Python 2.7+ and Python 3.2+.
        
        Crafty files
        ------------
        
        Craft will read attempt to read ``crafty.py`` in the current directory
        or the environment variable ``$CRAFTFILE``.
        
        An example ``crafty.py``::
        
            from craft import task, depends
        
            @task
            @depends('bar', 'foo')
            def cake():
              """
              Prints cake, and depends on foo & bar
              to run first
              """
              print('Time for cake')
        
            @task
            def bar():
              """ Prints bar """
              print('bar')
        
            @task
            def foo():
              print("Hi,I'm foo")
        
            @task
            def auto():
              """
              I will run when you supply no arguments to "craft".
              """
              print("Auto - Doing my own thing. Which is 'foo' today.")
              foo()
        
            @task
            def setup():
              """
              I will run once on any call to "craft"
              """
              print("Hello good sir, I'm the setup routine.")
        
        Usage
        -----
        
        Running ``craft -h`` in the directory containing ``crafty.py`` will
        show the list of available tasks. Example::
        
            usage: craft [-h] [task [task ...]]
        
            positional arguments:
              task
        
            optional arguments:
              -h, --help  show this help message and exit
        
            Available tasks:
        
            - cake: Prints cake, and depends on foo & bar to run first
            - auto: I will run when you supply no arguments to "craft".
            - setup: I will run once on any call to "craft"
            - foo: 
            - bar: Prints bar 
        
        As you can see, the docstring for each ``@task`` function will then be represented
        in the help output, and docstrings can be omitted.
        
        
        You can call individual tasks like:
        
        ``craft foo``
        
        and run multiple tasks with one call like:
        
        ``craft foo bar``
        
        History
        -------
        v0.2.4 - 10 Nov 2012
        
        * Fix an issue with setup.py linking to the README
        
        v0.2.3 - 14 Oct 2012
        
        * Fix error catching isolation from craft and the actual task
        
        v0.2.0 - 27 Aug 2012
        
        * Added setup() and auto() tasks
        * Added support for task dependencies via @depends
        
        v0.1.0 - 26 Aug 2012
        
        Source is available at: https://github.com/jdpaton/craft
        
        
        
Platform: UNKNOWN
