{ "info": { "author": "Enthought", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "Traits Futures\n--------------\n\nThe **traits_futures** package demonstrates robust design patterns for reactive\nbackground jobs triggered from a TraitsUI application.\n\nMotivating example\n------------------\nA customer has asked you to wrap their black-box optimization code in a GUI.\n\nYou build a simple TraitsUI GUI that allows the user to set inputs and options\nand then press the big green \"Calculate\" button. The requirements look\nsomething like this:\n\n- The UI should remain usable and responsive while the background calculation\n is running.\n- The UI should update (e.g., show a plot, or show results) in response to the\n background calculation completing normally.\n- The background job should be cancellable.\n- The UI should react appropriately if the background job raises an exception.\n\nAnd there are some further ease-of-development requirements:\n\n- As far as possible, the UI developer shouldn't have to think about managing\n the background threads or re-dispatching incoming information from the\n background task(s). The UI developer should be able to simply listen to and\n react to suitable traits for information coming in from the background task.\n- It should be possible to switch between using background threads and\n background process (and possibly also coroutines) with minimal effort.\n\nGetting started\n---------------\nThe ``ci`` helper package in the source repository aids in setting up a\ndevelopment environment and running tests and examples. It requires EDM, along\nwith a Python bootstrap environment equipped with ``click`` and ``setuptools``.\n\nTo create a development environment, run::\n\n python -m ci build\n\nfrom the top-level of the repository, within the Python bootstrap environment.\n\nTo run tests for the traits_futures EDM environment, do::\n\n python -m ci test\n\nTo run tests under coverage::\n\n python -m ci coverage\n\nTo run a style check::\n\n python -m ci flake8\n\nTo build the documentation::\n\n python -m ci doc\n\nThe example scripts can be run with::\n\n python -m ci example \n\nRun ``python -m ci example`` to see the list of available examples.\n\nAll of the above commands take two options. The ``--python-version`` option\nlets you specify the Python version to use for the development environment. The\n``--toolkit`` option allows you to choose between using PyQt and PySide on\nPython 2. Run ``python -m ci --help`` for more information on any\nof these commands.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "traits-futures", "package_url": "https://pypi.org/project/traits-futures/", "platform": "", "project_url": "https://pypi.org/project/traits-futures/", "project_urls": null, "release_url": "https://pypi.org/project/traits-futures/0.1.1/", "requires_dist": null, "requires_python": "", "summary": "Patterns for reactive background tasks", "version": "0.1.1" }, "last_serial": 4788528, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "176c9db9d4707fa22cddb99fddea3fef", "sha256": "28dc5714ef12cfbb55bda3d32b002f80c6419dbbf3ed1d43bb7ae9a29b1420a8" }, "downloads": -1, "filename": "traits_futures-0.1.1.tar.gz", "has_sig": false, "md5_digest": "176c9db9d4707fa22cddb99fddea3fef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34983, "upload_time": "2019-02-05T20:11:47", "url": "https://files.pythonhosted.org/packages/75/94/b26052f460fbec5464b5bdee2b0eac593e043399c9b51a190b8ae459b499/traits_futures-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "176c9db9d4707fa22cddb99fddea3fef", "sha256": "28dc5714ef12cfbb55bda3d32b002f80c6419dbbf3ed1d43bb7ae9a29b1420a8" }, "downloads": -1, "filename": "traits_futures-0.1.1.tar.gz", "has_sig": false, "md5_digest": "176c9db9d4707fa22cddb99fddea3fef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34983, "upload_time": "2019-02-05T20:11:47", "url": "https://files.pythonhosted.org/packages/75/94/b26052f460fbec5464b5bdee2b0eac593e043399c9b51a190b8ae459b499/traits_futures-0.1.1.tar.gz" } ] }