{ "info": { "author": "Calum J. Eadie", "author_email": "calum@calumjeadie.com", "bugtrack_url": null, "classifiers": [], "description": "===========================================\nmicrobuild - Lightweight Python Build Tool.\n===========================================\n\nCalum J. Eadie (www.calumjeadie.com)\n\nFeatures\n========\n\n* Really quick to learn.\n* Manages dependancies between tasks.\n* Automatically generates a command line interface.\n\nRelated projects\n================\n\nCheck out pynt_, microbuild's beefier younger brother. `Raghunandan Rao `_ has extended microbuild, adding features including:\n\n* Rake style parameter passing to tasks.\n* Running tasks by typing the first few characters.\n* Breaking up script into modules. \n\n.. _pynt: http://rags.github.com/pynt/\n\nInstallation\n============\n\nYou can install microbuild from the Python Package Index (PyPI) or from source.\n\nUsing pip::\n\n $ pip install microbuild\n\nUsing easy_install::\n\n $ easy_install microbuild\n\nExample\n=======\n\nThe build script is written in pure Python and microbuild takes care of managing\nany dependancies between tasks and generating a command line interface.\n\nTasks are just regular Python functions marked with the ``@task()`` decorator. Dependancies\nare specified with ``@task()`` too. Tasks can be ignored with the ``@ignore`` decorator.\n\nAfter defining all tasks ``build(sys.modules[__name__],sys.argv[1:])`` is called to\nrun the build.\n\n::\n\n # example.py\n import sys\n from microbuild.microbuild import task,ignore,build\n\n @task()\n def clean():\n \"\"\"Clean build directory.\"\"\"\n print \"Cleaning build directory...\"\n\n @task(clean)\n def html():\n \"\"\"Generate HTML.\"\"\"\n print \"Generating HTML...\"\n\n @ignore\n @task(clean)\n def images():\n \"\"\"Prepare images.\"\"\"\n print \"Preparing images...\"\n\n @task(html,images)\n def android():\n \"\"\"Package Android app.\"\"\"\n print \"Packaging android app...\"\n \n if __name__ == \"__main__\":\n build(sys.modules[__name__],sys.argv[1:])\n \nThe command line interface and help is automatically generated. Task descriptions\nare extracted from function docstrings.\n\n::\n \n $ ./example.py -h\n usage: example.py [-h] task\n\n positional arguments:\n task perform specified task and all it's dependancies\n\n optional arguments:\n -h, --help show this help message and exit\n\n tasks:\n android Package Android app.\n clean Clean build directory.\n html Generate HTML.\n images Prepare images.\n \nDependancies between tasks are taken care of too.\n\n::\n \n $ ./example.py android\n [ example.py - Starting task \"clean\" ]\n Cleaning build directory...\n [ example.py - Completed task \"clean\" ]\n [ example.py - Starting task \"html\" ]\n Generating HTML...\n [ example.py - Completed task \"html\" ]\n [ example.py - Ignoring task \"images\" ]\n [ example.py - Starting task \"android\" ]\n Packaging android app...\n [ example.py - Completed task \"android\" ]\n\nContributing\n============\n\nmicrobuild is hosted at https://github.com/CalumJEadie/microbuild and contributions are\nvery welcome.\n\nepydoc_ is used for documentation generation and unittest_ for tests.\n\nRun ``build.py apidoc`` to generate documentation and ``build.py test`` to run all unit\ntests.\n\n.. _epydoc: http://epydoc.sourceforge.net\n.. _unittest: http://docs.python.org/2/library/unittest.html\n\nLicense\n=======\n\nmicrobuild is licensed under a MIT license. See `LICENSE.txt`_.\n\n.. _LICENSE.txt: https://github.com/CalumJEadie/microbuild/blob/master/LICENSE.txt\n\nChanges\n=======\n\n0.3.3 - 26/03/2013\n------------------\n\n* Improved README documentation.\n\n0.3.1,0.3.2 - 15/12/2012\n------------------------\n\n* Improved README documentation.\n\n0.3.0 - 18/09/2012\n------------------\n\n* Fixed bug in logging. No longer modifies root logger.\n* Added ignore functionality.\n* Extended API documentation.\n\n0.2.0 - 29/08/2012\n------------------\n\n* Added progress tracking output.\n* Added handling of exceptions within tasks.\n\n0.1.0 - 28/08/2012\n------------------\n\n* Initial release.\n* Added management of dependancies between tasks.\n* Added automatic generation of command line interface.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/CalumJEadie/microbuild", "keywords": null, "license": "MIT License", "maintainer": null, "maintainer_email": null, "name": "microbuild", "package_url": "https://pypi.org/project/microbuild/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/microbuild/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/CalumJEadie/microbuild" }, "release_url": "https://pypi.org/project/microbuild/0.3.3/", "requires_dist": null, "requires_python": null, "summary": "Lightweight Python Build Tool.", "version": "0.3.3" }, "last_serial": 794769, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "0edca0dcb6ac9ba834d5ed2e2fb76d68", "sha256": "0a5584ee07df2376fe66a46ec3a713124543cfe03a01daf41eef05cd315623a2" }, "downloads": -1, "filename": "microbuild-0.1.0.tar.gz", "has_sig": false, "md5_digest": "0edca0dcb6ac9ba834d5ed2e2fb76d68", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4139, "upload_time": "2012-08-28T22:16:25", "url": "https://files.pythonhosted.org/packages/79/56/f28946d713b3a90632de3431dabf485db05095f71fe5fc67121c2f23eb96/microbuild-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "da5dc52f9ce4ab80036eee0b3dd92e5f", "sha256": "5410af4a59bb0c1587b1f7efde72cae5ed80c9150f66e818965191b779aefe24" }, "downloads": -1, "filename": "microbuild-0.2.0.tar.gz", "has_sig": false, "md5_digest": "da5dc52f9ce4ab80036eee0b3dd92e5f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4373, "upload_time": "2012-08-29T21:09:36", "url": "https://files.pythonhosted.org/packages/c9/4d/39d0ae3462cd209fc7f6e6f1d1425c1fc09f6fefb9b1a20285c0f243219a/microbuild-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "d88e2796c985c1eac932bb27e2831397", "sha256": "1546a877637ff34b8b8cadc2e752fcd38f9f5347cd0a3980cb19e644d75ab3ae" }, "downloads": -1, "filename": "microbuild-0.3.0.tar.gz", "has_sig": false, "md5_digest": "d88e2796c985c1eac932bb27e2831397", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4787, "upload_time": "2012-09-18T22:22:54", "url": "https://files.pythonhosted.org/packages/06/58/b8555416ff955b8f5eba5b734fada087fc6fb145e571ac36fd1ba387fad2/microbuild-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "22f86864578af29ee0609cc6ab16659d", "sha256": "417dabe68d19e040adec5d3b487628e86968e5adacc55ee5b9da7cd4001be548" }, "downloads": -1, "filename": "microbuild-0.3.1.tar.gz", "has_sig": false, "md5_digest": "22f86864578af29ee0609cc6ab16659d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5211, "upload_time": "2012-09-18T22:28:10", "url": "https://files.pythonhosted.org/packages/b5/40/c05841611c58b8f65c3c2901566e7afb7c1b46c78f1ed3189dfb85bc5056/microbuild-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "de57a619c8b95944b7faa0a1033c60e4", "sha256": "e5f9093c26bf1a3839976b660f65f4e131b50b869f4bbd72f8f1367147457815" }, "downloads": -1, "filename": "microbuild-0.3.2.tar.gz", "has_sig": false, "md5_digest": "de57a619c8b95944b7faa0a1033c60e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5570, "upload_time": "2012-12-15T17:06:04", "url": "https://files.pythonhosted.org/packages/3f/6c/8f225922c662cbe99112fa7470a46965e63dc1c45af7855e8341a50bf55e/microbuild-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "8695de726d51aee276e8550307934b25", "sha256": "6634926bf54de8352d1ec8723ba9714e8fa2b68d45d14f4daba785f3d891cbc9" }, "downloads": -1, "filename": "microbuild-0.3.3.tar.gz", "has_sig": false, "md5_digest": "8695de726d51aee276e8550307934b25", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5641, "upload_time": "2013-03-26T11:35:32", "url": "https://files.pythonhosted.org/packages/fb/83/786273c04a730b913640ea3a7c8638e8c1265af362a48e891bccedfbe98c/microbuild-0.3.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8695de726d51aee276e8550307934b25", "sha256": "6634926bf54de8352d1ec8723ba9714e8fa2b68d45d14f4daba785f3d891cbc9" }, "downloads": -1, "filename": "microbuild-0.3.3.tar.gz", "has_sig": false, "md5_digest": "8695de726d51aee276e8550307934b25", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5641, "upload_time": "2013-03-26T11:35:32", "url": "https://files.pythonhosted.org/packages/fb/83/786273c04a730b913640ea3a7c8638e8c1265af362a48e891bccedfbe98c/microbuild-0.3.3.tar.gz" } ] }