{ "info": { "author": "Vincent Jacques", "author_email": "vincent@vincent-jacques.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development" ], "description": ".. GENI: intro\n.. GENERATED SECTION, MANUAL EDITS WILL BE LOST\n\n*ActionTree* is a Python (2.7 and 3.5+) library to execute (long) actions in parallel, respecting dependencies between those actions.\nYou create a dependency graph of actions to be executed and then call the ``execute`` function on its root.\n\n.. END OF GENERATED SECTION\n\n.. GENI: info\n.. GENERATED SECTION, MANUAL EDITS WILL BE LOST\n\nIt's licensed under the `MIT license `_.\nIt's available on the `Python package index `_.\nIts `documentation `_\nand its `source code `_ are on GitHub.\n\n.. END OF GENERATED SECTION\n\n.. GENI: badges\n.. GENERATED SECTION, MANUAL EDITS WILL BE LOST\n\nQuestions? Remarks? Bugs? Want to contribute? `Open an issue `_!\n\n.. image:: https://img.shields.io/travis/jacquev6/ActionTree/master.svg\n :target: https://travis-ci.org/jacquev6/ActionTree\n\n.. image:: https://img.shields.io/coveralls/jacquev6/ActionTree/master.svg\n :target: https://coveralls.io/r/jacquev6/ActionTree\n\n.. image:: https://img.shields.io/codeclimate/github/jacquev6/ActionTree.svg\n :target: https://codeclimate.com/github/jacquev6/ActionTree\n\n.. image:: https://img.shields.io/scrutinizer/g/jacquev6/ActionTree.svg\n :target: https://scrutinizer-ci.com/g/jacquev6/ActionTree\n\n.. image:: https://img.shields.io/pypi/dm/ActionTree.svg\n :target: https://pypi.python.org/pypi/ActionTree\n\n.. image:: https://img.shields.io/pypi/l/ActionTree.svg\n :target: https://pypi.python.org/pypi/ActionTree\n\n.. image:: https://img.shields.io/pypi/v/ActionTree.svg\n :target: https://pypi.python.org/pypi/ActionTree\n\n.. image:: https://img.shields.io/pypi/pyversions/ActionTree.svg\n :target: https://pypi.python.org/pypi/ActionTree\n\n.. image:: https://img.shields.io/pypi/status/ActionTree.svg\n :target: https://pypi.python.org/pypi/ActionTree\n\n.. image:: https://img.shields.io/github/issues/jacquev6/ActionTree.svg\n :target: https://github.com/jacquev6/ActionTree/issues\n\n.. image:: https://img.shields.io/github/forks/jacquev6/ActionTree.svg\n :target: https://github.com/jacquev6/ActionTree/network\n\n.. image:: https://img.shields.io/github/stars/jacquev6/ActionTree.svg\n :target: https://github.com/jacquev6/ActionTree/stargazers\n\n.. END OF GENERATED SECTION\n\nQuick start\n===========\n\nInstall from PyPI::\n\n $ pip install ActionTree\n\nWith dependencies to create Gantt charts and dependency graphs::\n\n $ pip install 'ActionTree[dependency_graphs,gantt]'\n\nImport:\n\n>>> from ActionTree import execute\n>>> from ActionTree.stock import CallSubprocess\n\nExecute some action:\n\n>>> link = CallSubprocess([\"g++\", \"a.o\", \"b.o\", \"-o\", \"test\"])\n>>> link.add_dependency(CallSubprocess([\"g++\", \"-c\", \"a.cpp\", \"-o\", \"a.o\"]))\n>>> link.add_dependency(CallSubprocess([\"g++\", \"-c\", \"b.cpp\", \"-o\", \"b.o\"]))\n>>> report = execute(link)\n\nAnd verify everything went well:\n\n>>> report.is_success\nTrue\n>>> os.path.isfile(\"test\")\nTrue", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://jacquev6.github.io/ActionTree", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "ActionTree", "package_url": "https://pypi.org/project/ActionTree/", "platform": "", "project_url": "https://pypi.org/project/ActionTree/", "project_urls": { "Homepage": "http://jacquev6.github.io/ActionTree" }, "release_url": "https://pypi.org/project/ActionTree/0.12.0/", "requires_dist": null, "requires_python": "", "summary": "Executes (long) actions in parallel, respecting dependencies between those actions", "version": "0.12.0" }, "last_serial": 4473984, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "c56691788cd85b40f3917c8c7c950db2", "sha256": "015861f9dcd41af00e8b1a1433c2c0bc4af3a67e64a507b2520e530193d96ba5" }, "downloads": -1, "filename": "ActionTree-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c56691788cd85b40f3917c8c7c950db2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19098, "upload_time": "2013-03-23T20:06:23", "url": "https://files.pythonhosted.org/packages/41/59/00d1da9297bd1edc76403413751f35eb561e6b954582a6740fbd7ad695e4/ActionTree-0.1.0.tar.gz" } ], "0.10.0": [ { "comment_text": "", "digests": { "md5": "d85488937c3c5fd73e1de6334f213a26", "sha256": "4406ad6d92dcb47e78f4991e466022a64ef8db9fc2cf31115f18552e3b0a474d" }, "downloads": -1, "filename": "ActionTree-0.10.0.tar.gz", "has_sig": false, "md5_digest": "d85488937c3c5fd73e1de6334f213a26", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18866, "upload_time": "2017-06-17T15:03:03", "url": "https://files.pythonhosted.org/packages/65/10/da18f25a07ab394b68fe4fde8aaa72f633d1236e82189fb2993db654af84/ActionTree-0.10.0.tar.gz" } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "a1c299c721bfae634f9f7d0ce480ed76", "sha256": "dd46e01a4cafa10ad4be8fbf7489d704542bd335969ab3df1f280002e2dcb192" }, "downloads": -1, "filename": "ActionTree-0.11.0.tar.gz", "has_sig": false, "md5_digest": "a1c299c721bfae634f9f7d0ce480ed76", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19177, "upload_time": "2017-10-05T16:11:55", "url": "https://files.pythonhosted.org/packages/2d/02/84545f4710f401810e56d8006ca7ed31a4727456dfeb7a9994d5b8c2d470/ActionTree-0.11.0.tar.gz" } ], "0.12.0": [ { "comment_text": "", "digests": { "md5": "b97a378a64d841a5683f649482e1f73d", "sha256": "85987c68a2505b5054602257c5c42167bed06dcafce3b51ad3fb8bcd46b079b1" }, "downloads": -1, "filename": "ActionTree-0.12.0.tar.gz", "has_sig": false, "md5_digest": "b97a378a64d841a5683f649482e1f73d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19389, "upload_time": "2018-11-11T10:55:57", "url": "https://files.pythonhosted.org/packages/e3/25/c20fb943c051bde87fe1a98d9fea80215a0014556deba0d9ef3102afeb7f/ActionTree-0.12.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "6648da509efd9d0222bcfab16836ec1c", "sha256": "7965ecc4bf0ce846157449997747845fd93a9ff718157acebc57ac177976793a" }, "downloads": -1, "filename": "ActionTree-0.2.0.tar.gz", "has_sig": false, "md5_digest": "6648da509efd9d0222bcfab16836ec1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21285, "upload_time": "2013-03-24T11:51:17", "url": "https://files.pythonhosted.org/packages/2c/db/db1454570db62d59570783bc9797be6d4db55ca46a3b1a6e205a627a1782/ActionTree-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "dad0ea0d89b617b5ef1c426221849c17", "sha256": "478d50dfb3bacad7118b03e81752975b8fd324db44b8f2fe8a706b54e0c736f8" }, "downloads": -1, "filename": "ActionTree-0.3.0.tar.gz", "has_sig": false, "md5_digest": "dad0ea0d89b617b5ef1c426221849c17", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22927, "upload_time": "2013-09-09T15:25:23", "url": "https://files.pythonhosted.org/packages/7d/19/e3c59f857165d705510e89bbfe291c6b392cf8aff196eea77438931b3db9/ActionTree-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "b930555466888afb7d201dac256be3ae", "sha256": "fb98d464a43fbd8881e97ff96bbf7fdd220c707d4a55cddbe1914842391141f4" }, "downloads": -1, "filename": "ActionTree-0.4.0.tar.gz", "has_sig": false, "md5_digest": "b930555466888afb7d201dac256be3ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26015, "upload_time": "2014-03-16T21:06:47", "url": "https://files.pythonhosted.org/packages/78/57/3c3b1a871e95afcbd513de9c3a3e6f04fc7dac9949ecc7574f45b123fcb1/ActionTree-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "6f768fda3b4e3bb5941ca3da49dddec4", "sha256": "bc062f9439221badbf2a963f46414a7bc2bdf740c165158079ed5dddfffa48cd" }, "downloads": -1, "filename": "ActionTree-0.4.1.tar.gz", "has_sig": false, "md5_digest": "6f768fda3b4e3bb5941ca3da49dddec4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11626, "upload_time": "2015-05-01T07:38:27", "url": "https://files.pythonhosted.org/packages/54/6e/cbf0da2fc77c5ccde8acc8487de75eaee4b1b362d1a009ac076e87a5dfe9/ActionTree-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "b4c4244649c8b85791eb28ede4673f8f", "sha256": "e3e3d94f3dd88c98f84df0cbcd3ef3ca31110a1add66beac106c7a1554b23e97" }, "downloads": -1, "filename": "ActionTree-0.5.0.tar.gz", "has_sig": false, "md5_digest": "b4c4244649c8b85791eb28ede4673f8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12138, "upload_time": "2015-05-08T17:24:30", "url": "https://files.pythonhosted.org/packages/dd/f5/cbecacf71045a7bf8d1acb488e0c8a84182a90165b3aeff685db24472fb4/ActionTree-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "1973fb1a4f586ae82855f657ca64ae0f", "sha256": "f0c8aed2e177fc3cd3cce26492622533e9779fe0992fe1acddcc6453ee646c13" }, "downloads": -1, "filename": "ActionTree-0.6.0.tar.gz", "has_sig": false, "md5_digest": "1973fb1a4f586ae82855f657ca64ae0f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12031, "upload_time": "2015-05-14T14:34:34", "url": "https://files.pythonhosted.org/packages/87/f7/24bd8e6622c1851d018a1ff849028c0648bcd27d8bfb0e06d6fefb493dec/ActionTree-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "58a369802158d18ffe8e64d68eefce1a", "sha256": "06a0d5503d6db7f7fbe51af5936f7df82f87bd74e7299d57ff323f3624b097ad" }, "downloads": -1, "filename": "ActionTree-0.6.1.tar.gz", "has_sig": false, "md5_digest": "58a369802158d18ffe8e64d68eefce1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11887, "upload_time": "2015-05-14T22:08:10", "url": "https://files.pythonhosted.org/packages/d2/a9/8dec54a7a0a3ed3c8043f828054daae00175594ebebf0a12ec29251af7e6/ActionTree-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "405c7a725faacf9846f3ed7c2ec648ed", "sha256": "0cb0cb026b4348a89269b2d83d6e7a4b8f989258b0ee1f36cfdd8616256eb0a5" }, "downloads": -1, "filename": "ActionTree-0.6.2.tar.gz", "has_sig": false, "md5_digest": "405c7a725faacf9846f3ed7c2ec648ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12335, "upload_time": "2015-06-23T13:08:11", "url": "https://files.pythonhosted.org/packages/4b/60/93031befdb252921812c924c230ac1878c1a02a8608c9b383dd333a3fbc7/ActionTree-0.6.2.tar.gz" } ], "0.6.3": [ { "comment_text": "", "digests": { "md5": "bd881132074524dd99d67866961e0429", "sha256": "d1282a59fa24d525282f8697996895742444228c2917c6c8185f1b63b201560a" }, "downloads": -1, "filename": "ActionTree-0.6.3.tar.gz", "has_sig": false, "md5_digest": "bd881132074524dd99d67866961e0429", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11807, "upload_time": "2015-09-06T10:06:59", "url": "https://files.pythonhosted.org/packages/1c/b5/6260f06ef978e629ef924b88f7ff693e4c771a8badffccd51ae39db80c85/ActionTree-0.6.3.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "f7859fcaf2d43563e10d0bf5d1ddf52f", "sha256": "467b669ca6b6eea3fab2f3d40cdc6de75089f7bff26b62948e7949616516c39e" }, "downloads": -1, "filename": "ActionTree-0.7.0.tar.gz", "has_sig": false, "md5_digest": "f7859fcaf2d43563e10d0bf5d1ddf52f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13229, "upload_time": "2017-06-08T14:40:17", "url": "https://files.pythonhosted.org/packages/1b/04/c61407be46316517b23e38d00c5959b5b44a3c7b4fabbedf49950554eb90/ActionTree-0.7.0.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "1f24123338cccfe70caa21203c0f02cf", "sha256": "3d50e617a24504dcaec756f419b619cfcb132ae26f4a629703ed829a8e647e98" }, "downloads": -1, "filename": "ActionTree-0.8.0.tar.gz", "has_sig": false, "md5_digest": "1f24123338cccfe70caa21203c0f02cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16623, "upload_time": "2017-06-13T17:44:25", "url": "https://files.pythonhosted.org/packages/38/ef/147f5b26b4c080484ddcd0554f20feacaf88806ce20dc3970d5b85f35ac0/ActionTree-0.8.0.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "4a9389f6c3ca64b502fefdfe4a17a1f6", "sha256": "402fdddbe9c295066a91deadca177b802369f971527d044efd5d7f4c00562aa0" }, "downloads": -1, "filename": "ActionTree-0.9.0.tar.gz", "has_sig": false, "md5_digest": "4a9389f6c3ca64b502fefdfe4a17a1f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18039, "upload_time": "2017-06-14T17:58:19", "url": "https://files.pythonhosted.org/packages/68/07/c394a71285f00a0069fde9a749cb0366b0a29022cf260f28f60fa794267e/ActionTree-0.9.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b97a378a64d841a5683f649482e1f73d", "sha256": "85987c68a2505b5054602257c5c42167bed06dcafce3b51ad3fb8bcd46b079b1" }, "downloads": -1, "filename": "ActionTree-0.12.0.tar.gz", "has_sig": false, "md5_digest": "b97a378a64d841a5683f649482e1f73d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19389, "upload_time": "2018-11-11T10:55:57", "url": "https://files.pythonhosted.org/packages/e3/25/c20fb943c051bde87fe1a98d9fea80215a0014556deba0d9ef3102afeb7f/ActionTree-0.12.0.tar.gz" } ] }