{ "info": { "author": "Mike Stringer", "author_email": "mike.stringer@datascopeanalytics.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# traces\n\n[![Version](https://img.shields.io/pypi/v/traces.svg?)](https://pypi.python.org/pypi/traces) [![PyVersions](https://img.shields.io/pypi/pyversions/traces.svg)](https://pypi.python.org/pypi/traces) [![CircleCI](https://circleci.com/gh/datascopeanalytics/traces/tree/master.svg?style=shield)](https://circleci.com/gh/datascopeanalytics/traces/tree/master) [![Documentation Status](https://readthedocs.org/projects/traces/badge/?version=master)](https://traces.readthedocs.io/en/master/?badge=master) [![Coverage Status](https://coveralls.io/repos/github/datascopeanalytics/traces/badge.svg?branch=master)](https://coveralls.io/github/datascopeanalytics/traces?branch=master)\n\nA Python library for unevenly-spaced time series analysis.\n\n## Why?\n\nTaking measurements at irregular intervals is common, but most tools are\nprimarily designed for evenly-spaced measurements. Also, in the real\nworld, time series have missing observations or you may have multiple\nseries with different frequencies: it's can be useful to model these as\nunevenly-spaced.\n\nTraces was designed by the team at\n[Datascope](https://datascopeanalytics.com/) based on several practical\napplications in different domains, because it turns out [unevenly-spaced\ndata is actually pretty great, particularly for sensor data\nanalysis](https://datascopeanalytics.com/blog/unevenly-spaced-time-series/).\n\n## Installation\n\nTo install traces, run this command in your terminal:\n\n```bash\n$ pip install traces\n```\n\n## Quickstart: using traces\n\nTo see a basic use of traces, let's look at these data from a light\nswitch, also known as _Big Data from the Internet of Things_.\n\n![](docs/_static/img/trace.svg)\n\nThe main object in traces is a [TimeSeries](https://traces.readthedocs.io/en/master/api_reference.html#timeseries), which you\ncreate just like a dictionary, adding the five measurements at 6:00am,\n7:45:56am, etc.\n\n```python\n>>> time_series = traces.TimeSeries()\n>>> time_series[datetime(2042, 2, 1, 6, 0, 0)] = 0 # 6:00:00am\n>>> time_series[datetime(2042, 2, 1, 7, 45, 56)] = 1 # 7:45:56am\n>>> time_series[datetime(2042, 2, 1, 8, 51, 42)] = 0 # 8:51:42am\n>>> time_series[datetime(2042, 2, 1, 12, 3, 56)] = 1 # 12:03:56am\n>>> time_series[datetime(2042, 2, 1, 12, 7, 13)] = 0 # 12:07:13am\n```\n\nWhat if you want to know if the light was on at 11am? Unlike a python\ndictionary, you can look up the value at any time even if it's not one\nof the measurement times.\n\n```python\n>>> time_series[datetime(2042, 2, 1, 11, 0, 0)] # 11:00am\n0\n```\n\nThe `distribution` function gives you the fraction of time that the\n`TimeSeries` is in each state.\n\n```python\n>>> time_series.distribution(\n>>> start=datetime(2042, 2, 1, 6, 0, 0), # 6:00am\n>>> end=datetime(2042, 2, 1, 13, 0, 0) # 1:00pm\n>>> )\nHistogram({0: 0.8355952380952381, 1: 0.16440476190476191})\n```\n\nThe light was on about 16% of the time between 6am and 1pm.\n\n### Adding more data...\n\nNow let's get a little more complicated and look at the sensor readings\nfrom forty lights in a house.\n\n![](docs/_static/img/traces.svg)\n\nHow many lights are on throughout the day? The merge function takes the\nforty individual `TimeSeries` and efficiently merges them into one\n`TimeSeries` where the each value is a list of all lights.\n\n```python\n>>> trace_list = [... list of forty traces.TimeSeries ...]\n>>> count = traces.TimeSeries.merge(trace_list, operation=sum)\n```\n\nWe also applied a `sum` operation to the list of states to get the\n`TimeSeries` of the number of lights that are on.\n\n![](docs/_static/img/count.svg)\n\nHow many lights are on in the building on average during business hours,\nfrom 8am to 6pm?\n\n```python\n>>> histogram = count.distribution(\n>>> start=datetime(2042, 2, 1, 8, 0, 0), # 8:00am\n>>> end=datetime(2042, 2, 1, 12 + 6, 0, 0) # 6:00pm\n>>> )\n>>> histogram.median()\n17\n```\n\nThe `distribution` function returns a [Histogram](https://traces.readthedocs.io/en/master/api_reference.html#histogram) that\ncan be used to get summary metrics such as the mean or quantiles.\n\n### It's flexible\n\nThe measurements points (keys) in a `TimeSeries` can be in any units as\nlong as they can be ordered. The values can be anything.\n\nFor example, you can use a `TimeSeries` to keep track the contents of a\ngrocery basket by the number of minutes within a shopping trip.\n\n```python\n>>> time_series = traces.TimeSeries()\n>>> time_series[1.2] = {'broccoli'}\n>>> time_series[1.7] = {'broccoli', 'apple'}\n>>> time_series[2.2] = {'apple'} # puts broccoli back\n>>> time_series[3.5] = {'apple', 'beets'} # mmm, beets\n```\n\nTo learn more, check the [examples](https://traces.readthedocs.io/en/master/examples.html) and the detailed [reference](https://traces.readthedocs.io/en/master/api_reference.html#).\n\n## More info\n\n## Contributing\n\nContributions are welcome and greatly appreciated! Please visit our [guidelines](https://github.com/datascopeanalytics/traces/blob/master/CONTRIBUTING.md)\nfor more info.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/datascopeanalytics/traces", "keywords": "traces", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "traces", "package_url": "https://pypi.org/project/traces/", "platform": "", "project_url": "https://pypi.org/project/traces/", "project_urls": { "Homepage": "https://github.com/datascopeanalytics/traces" }, "release_url": "https://pypi.org/project/traces/0.4.2/", "requires_dist": [ "sortedcontainers (<2)", "arrow", "future", "intervals", "cprofilev ; extra == 'dev'", "pip ; extra == 'dev'", "bumpversion ; extra == 'dev'", "wheel ; extra == 'dev'", "tox ; extra == 'dev'", "flake8 ; extra == 'dev'", "coverage ; extra == 'dev'", "cryptography ; extra == 'dev'", "PyYAML ; extra == 'dev'", "Sphinx ; extra == 'doc'", "sphinxcontrib-napoleon ; extra == 'doc'", "recommonmark ; extra == 'doc'", "sphinx-autobuild ; extra == 'doc'", "pandas ; extra == 'pandas'", "pycodestyle (<2.4.0) ; extra == 'test'", "coveralls ; extra == 'test'", "nose ; extra == 'test'", "numpy ; extra == 'test'", "scipy ; extra == 'test'", "pandas ; extra == 'test'" ], "requires_python": "", "summary": "A library for unevenly-spaced time series analysis.", "version": "0.4.2" }, "last_serial": 4536332, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "ad021ae3ca196f28fdc7ad1f19def6ff", "sha256": "4e0aa11356d684ec38d37a6bf4c19c60da00be42f903bfd50d59cb153778dfaa" }, "downloads": -1, "filename": "traces-0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ad021ae3ca196f28fdc7ad1f19def6ff", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6059, "upload_time": "2015-03-25T23:42:19", "url": "https://files.pythonhosted.org/packages/98/36/e9449c2107c708c35119c13a3a06f680486ec199b503e07f8102918df0d5/traces-0.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "93cba15e9489d5756d43d942cb8015d0", "sha256": "61199d2d59500f15e2da00d54eeb6333e54c860cf48db75dc5988c398d9b2c56" }, "downloads": -1, "filename": "traces-0.0.1.tar.gz", "has_sig": false, "md5_digest": "93cba15e9489d5756d43d942cb8015d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9354, "upload_time": "2015-03-25T23:42:09", "url": "https://files.pythonhosted.org/packages/5a/40/aaf54b18b06d1072990677f9c6ef017f8aad9115f368563dac42492a0e63/traces-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "1c94a1cb2a06f2102a9becdce8c069ec", "sha256": "9f103101ecfd73ea0602dd4974cd5bbaba863ef76122009e2c6590704f8fe56c" }, "downloads": -1, "filename": "traces-0.0.2.tar.gz", "has_sig": false, "md5_digest": "1c94a1cb2a06f2102a9becdce8c069ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10418, "upload_time": "2015-03-31T23:14:36", "url": "https://files.pythonhosted.org/packages/8e/0c/bac74fa9b2ff0cc50fb8fdd3621344399e71b7203590fbeebb6128a1ca91/traces-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "1de5f905f690cdcfca716b460ca2f363", "sha256": "c284c9c8e8517e3cfb706c283c6830a603046f3063308adf1e074d57c9487df4" }, "downloads": -1, "filename": "traces-0.0.3-py2-none-any.whl", "has_sig": false, "md5_digest": "1de5f905f690cdcfca716b460ca2f363", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9216, "upload_time": "2015-12-15T04:47:09", "url": "https://files.pythonhosted.org/packages/20/b0/1b5ca5aaad69bf13c0370f7f098cd07c0b7132fa9bbb7e3f7d0c0ef1b39d/traces-0.0.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bbc8e2cf252f8216d9cba9d7b74cc2c4", "sha256": "c6f98478790d91d4210704e499632a3d0b4b06fd9056cf59e0b530d4831e1590" }, "downloads": -1, "filename": "traces-0.0.3.tar.gz", "has_sig": false, "md5_digest": "bbc8e2cf252f8216d9cba9d7b74cc2c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8828, "upload_time": "2015-12-15T04:47:02", "url": "https://files.pythonhosted.org/packages/c4/3d/73cd29ab30ca90b0ec34eaabd382aa7a105f58e638077341a0be3e0a7d23/traces-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "e7bdd4be02297c21f353657761be0d69", "sha256": "117393ca87cccd761354aec7a8b2d5850b3eaf93311f14488bb0c0a323302da6" }, "downloads": -1, "filename": "traces-0.0.4-py2-none-any.whl", "has_sig": false, "md5_digest": "e7bdd4be02297c21f353657761be0d69", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9098, "upload_time": "2015-12-29T22:04:32", "url": "https://files.pythonhosted.org/packages/76/41/5270bb36cd342ea2ad67c6bf30fbd7dead67cef771e7568bad9757bb0aa0/traces-0.0.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "aadc3b165eb3b9829dd5afdc53ee265d", "sha256": "766124c2a3cc5a694e02d52faf4d864888871b9efa8403cca0c6dbe0528b74c4" }, "downloads": -1, "filename": "traces-0.0.4.tar.gz", "has_sig": false, "md5_digest": "aadc3b165eb3b9829dd5afdc53ee265d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8997, "upload_time": "2015-12-29T22:04:18", "url": "https://files.pythonhosted.org/packages/62/a4/604d75f2ac96079701b5d27d724e7cafda2e882ed6043929500f92ce88a0/traces-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "a181b695aada56c8af2d5d03ccb2c9c4", "sha256": "f1b6dd9c98658a83af710aa170f8671274477ae8488c6c0aa6ae21b5c2860d94" }, "downloads": -1, "filename": "traces-0.0.5-py2-none-any.whl", "has_sig": false, "md5_digest": "a181b695aada56c8af2d5d03ccb2c9c4", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9587, "upload_time": "2016-04-01T03:35:23", "url": "https://files.pythonhosted.org/packages/b4/e2/8c065f180ebaea6ff4c2da3247b073483015c6e63db5800094162e09da95/traces-0.0.5-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1b2d5c2edbc7d335cb0a86eb2f33676c", "sha256": "e9c29f0a0916a4bb8ae46274121b8543ca4c8d041b021c357da22cbe85accb25" }, "downloads": -1, "filename": "traces-0.0.5.tar.gz", "has_sig": false, "md5_digest": "1b2d5c2edbc7d335cb0a86eb2f33676c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9284, "upload_time": "2016-04-01T03:35:18", "url": "https://files.pythonhosted.org/packages/47/b6/292568832b69b8cca3472fd635d6ee960ec734e887a8f59f5da3110a75e6/traces-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "34948c964a99bc75626d6b9e20295e89", "sha256": "ba8788160d20b8ee0dfd3b1b7260c026a7c2811d69d09af54e492bc2c3a4469c" }, "downloads": -1, "filename": "traces-0.0.6-py2-none-any.whl", "has_sig": false, "md5_digest": "34948c964a99bc75626d6b9e20295e89", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9607, "upload_time": "2016-04-01T03:41:48", "url": "https://files.pythonhosted.org/packages/84/cb/0984265462d2f9eb24fdc24ac1673b0f91461090bbe9a69ec79d11d3b4af/traces-0.0.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "38002780ccbd1ac43f9c7e0df0569b82", "sha256": "e8f58f421fef0803ba530d30a193de2c71e26d42daf24abce829d6f16c5ca79a" }, "downloads": -1, "filename": "traces-0.0.6.tar.gz", "has_sig": false, "md5_digest": "38002780ccbd1ac43f9c7e0df0569b82", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9201, "upload_time": "2016-04-01T03:41:42", "url": "https://files.pythonhosted.org/packages/9b/09/2ff8664341c5bebd62a73aea382d10a84ee42e56e491ab20c6cb44d4dcbe/traces-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "c0fb0a0d67e7551c7a1efd95a2c8200e", "sha256": "4deffa3a73ad94aef1e11590968b94f6b755aebf51ea2ccfb94eae22100ad3a2" }, "downloads": -1, "filename": "traces-0.0.7-py2-none-any.whl", "has_sig": false, "md5_digest": "c0fb0a0d67e7551c7a1efd95a2c8200e", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9652, "upload_time": "2016-04-01T03:47:01", "url": "https://files.pythonhosted.org/packages/45/c3/d65831cb17e96d80b3763a9a2709e7edecec17acc0d6815ab05f47b07eb9/traces-0.0.7-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ecd26f7399ff689db906bb9acd6be100", "sha256": "b251e08c95e96cfc9c247f9ba30d00719c876a7d763bc86369a10daed57ebc10" }, "downloads": -1, "filename": "traces-0.0.7.tar.gz", "has_sig": false, "md5_digest": "ecd26f7399ff689db906bb9acd6be100", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9310, "upload_time": "2016-04-01T03:46:56", "url": "https://files.pythonhosted.org/packages/3c/7e/31bf1a42cb17659f464ad190124b3c6203e19925eb6f887edd68ad673b63/traces-0.0.7.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "7178fbef4027cb6fe5ffbf92a4b530d9", "sha256": "38717c2c1c421c6d5556cb42cb9f6787cd2106c9d928794775ece0be11fd74a2" }, "downloads": -1, "filename": "traces-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7178fbef4027cb6fe5ffbf92a4b530d9", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 13927, "upload_time": "2016-08-23T21:02:09", "url": "https://files.pythonhosted.org/packages/30/bc/b72bf5cc88f0ffaac9df44a4a619f2890b0207c85be365f410ce602058e1/traces-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6661fdb4ca9db706e013f8f0d65fd057", "sha256": "28f3e1845cd6ad55bc004a3a40134a81dfc30e540b7ec209dc24820bbd895abb" }, "downloads": -1, "filename": "traces-0.1.0.tar.gz", "has_sig": false, "md5_digest": "6661fdb4ca9db706e013f8f0d65fd057", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41624, "upload_time": "2016-08-23T21:02:07", "url": "https://files.pythonhosted.org/packages/48/46/209fa53a919955670af10041eb213a50af5b08c5678842e593cb6c5a0f39/traces-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "8c7241acb8da26d0a6cb4e32a8e142eb", "sha256": "e82934b8ac3b2b094f2a84205aca98d97720bf80b611c4c3f8d6dfa4b29f1121" }, "downloads": -1, "filename": "traces-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8c7241acb8da26d0a6cb4e32a8e142eb", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 13625, "upload_time": "2016-09-21T06:53:23", "url": "https://files.pythonhosted.org/packages/de/c5/63a55ed21b2e110fd246e616d084ee095a4a001629a8dadf336750d1d9b8/traces-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4530d74fbaa3ff7d2ffd71da7b099ada", "sha256": "c197bfff6ca191046ca0ec711685610d76987c060a21ad8324d8e78334c50bf1" }, "downloads": -1, "filename": "traces-0.2.0.tar.gz", "has_sig": false, "md5_digest": "4530d74fbaa3ff7d2ffd71da7b099ada", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 133338, "upload_time": "2016-09-21T06:53:21", "url": "https://files.pythonhosted.org/packages/7d/04/4a30d663554b8e5d0c0282c6abed0d863d42d7dddecb72a9668901908bfe/traces-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "9b56a439725e669074572dcda8fe4614", "sha256": "bcc432284e5052ed05fb3075ebbd2b58ed61627c9045f4bc750b6846aa8060cc" }, "downloads": -1, "filename": "traces-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9b56a439725e669074572dcda8fe4614", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 18479, "upload_time": "2016-09-25T18:41:15", "url": "https://files.pythonhosted.org/packages/20/da/77f8f62f606dc7560a6f1807aca57509e30084158b9f7b2c1c920089058a/traces-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "252ceb8b92c56632f7fb86e7a60dffcf", "sha256": "38bdb65a874b373fc6ab217040269cde8f2b82a1d98503da976407e9ec817863" }, "downloads": -1, "filename": "traces-0.3.0.tar.gz", "has_sig": false, "md5_digest": "252ceb8b92c56632f7fb86e7a60dffcf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135383, "upload_time": "2016-09-25T18:41:12", "url": "https://files.pythonhosted.org/packages/fe/20/263835bff6a6418fba886efde2dffa7acf13ceadd3ae69c26dc821e16b6c/traces-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "808bb4a7935a456360d7497a695dee6e", "sha256": "2850b9572451442ab4f846b0549d0e35ba8ba571f611cbaf4068afa26e261a96" }, "downloads": -1, "filename": "traces-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "808bb4a7935a456360d7497a695dee6e", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 18802, "upload_time": "2016-09-27T16:56:09", "url": "https://files.pythonhosted.org/packages/75/ae/74defb3e1fc95c1f6b68233139044dd58a5b15f0ffd88fc31cea8398a1dc/traces-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c3675b503a9b4f4cfed1bde2a8a4c8bf", "sha256": "110fb609b96d5cf91516c48bf4493abec5630305da0cfb88bcf40b6858748143" }, "downloads": -1, "filename": "traces-0.3.1.tar.gz", "has_sig": false, "md5_digest": "c3675b503a9b4f4cfed1bde2a8a4c8bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135725, "upload_time": "2016-09-27T16:56:06", "url": "https://files.pythonhosted.org/packages/c8/21/ca893f6e8758dc1b5838b8cf59b08408a1af69bc7e547936ef132f704516/traces-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "19b64b8fe824fb5d9b29d466cacd8b84", "sha256": "23761158f4b29a855f90e542555dfd851d88fc48a1bab97c4de452e9912acf24" }, "downloads": -1, "filename": "traces-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "19b64b8fe824fb5d9b29d466cacd8b84", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14704, "upload_time": "2018-05-18T16:26:53", "url": "https://files.pythonhosted.org/packages/92/56/127c62986e2b959d005dd77ce4de259e0ed4a5702a584c54e26b85404e0c/traces-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a16712472f41f01b202b30bb58dd5c15", "sha256": "ac4df469cabee7cbaa62ba46f72aabef8cb7163d547d0db80062e1c10afa40f7" }, "downloads": -1, "filename": "traces-0.4.0.tar.gz", "has_sig": false, "md5_digest": "a16712472f41f01b202b30bb58dd5c15", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 134078, "upload_time": "2018-05-18T16:26:55", "url": "https://files.pythonhosted.org/packages/d3/a4/8e2011a0b8e27786333fdbad1a6e4b91ed98cfbe9b2a9f6918b308c1298b/traces-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "92bfee5ed6a352891bc9348802dfb32f", "sha256": "e1b3ad3075cd3b5ba30a250beec579f597153f3a091e8ce845e5cd484466a94d" }, "downloads": -1, "filename": "traces-0.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "92bfee5ed6a352891bc9348802dfb32f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14712, "upload_time": "2018-05-18T22:45:01", "url": "https://files.pythonhosted.org/packages/36/89/79742df651b1f55f9252e68efa5d85344ca3e786cfd38e3d0242cc212e9d/traces-0.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9ac83c04e38de219433e04aa4b01bf01", "sha256": "9f8a6bcc23f17eae1aa79717ca0650601bc28d2966fcbff6ae358b60c6926cb7" }, "downloads": -1, "filename": "traces-0.4.1.tar.gz", "has_sig": false, "md5_digest": "9ac83c04e38de219433e04aa4b01bf01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 134140, "upload_time": "2018-05-18T22:45:04", "url": "https://files.pythonhosted.org/packages/72/b4/2a840b13ca898583c836ac96172b4f33afa7ec66d26d3c5418be743d36ea/traces-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "b58c99db5d9905d55938b22eac168b75", "sha256": "ca0cc13bf6d414c88cfeed79021542688c80379ea997d5178ef1c54ed98cd0f2" }, "downloads": -1, "filename": "traces-0.4.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b58c99db5d9905d55938b22eac168b75", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17493, "upload_time": "2018-11-27T23:57:06", "url": "https://files.pythonhosted.org/packages/f9/c3/f97f66fef0c8bb16abfca1ab25ba84da5fe89fc2264376a9e7b938ef8f23/traces-0.4.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc5997e181852537e1bd56f85fff7fce", "sha256": "aaed1fee2dea68256ffb8004ab1e4a769fd49fd8fdc0b1ee6e5aefe01a6500c1" }, "downloads": -1, "filename": "traces-0.4.2.tar.gz", "has_sig": false, "md5_digest": "bc5997e181852537e1bd56f85fff7fce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 137617, "upload_time": "2018-11-27T23:57:08", "url": "https://files.pythonhosted.org/packages/93/e8/dbdea1159fbbcc50e825e0ea9895c001fa1b2046a095619d33d83c243a9c/traces-0.4.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b58c99db5d9905d55938b22eac168b75", "sha256": "ca0cc13bf6d414c88cfeed79021542688c80379ea997d5178ef1c54ed98cd0f2" }, "downloads": -1, "filename": "traces-0.4.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b58c99db5d9905d55938b22eac168b75", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17493, "upload_time": "2018-11-27T23:57:06", "url": "https://files.pythonhosted.org/packages/f9/c3/f97f66fef0c8bb16abfca1ab25ba84da5fe89fc2264376a9e7b938ef8f23/traces-0.4.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc5997e181852537e1bd56f85fff7fce", "sha256": "aaed1fee2dea68256ffb8004ab1e4a769fd49fd8fdc0b1ee6e5aefe01a6500c1" }, "downloads": -1, "filename": "traces-0.4.2.tar.gz", "has_sig": false, "md5_digest": "bc5997e181852537e1bd56f85fff7fce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 137617, "upload_time": "2018-11-27T23:57:08", "url": "https://files.pythonhosted.org/packages/93/e8/dbdea1159fbbcc50e825e0ea9895c001fa1b2046a095619d33d83c243a9c/traces-0.4.2.tar.gz" } ] }