{ "info": { "author": "Alex Khomchenko", "author_email": "akhomchenko@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "=======\natomicl\n=======\n\n.. image:: https://travis-ci.org/gagoman/atomicl.svg?branch=master\n :target: https://travis-ci.org/gagoman/atomicl\n :alt: CI Status\n\n.. image:: https://img.shields.io/pypi/v/atomicl.svg\n :target: https://pypi.org/project/atomicl/#history\n :alt: Latest released version\n\n.. image:: https://img.shields.io/pypi/pyversions/atomicl.svg\n :target: https://pypi.org/project/atomicl\n :alt: Supported Python versions\n\nYet another implementation of AtomicLong class.\n\nIntroduction\n------------\n\nClass that allows to update long value atomically.\nHighly inspired by Java's AtomicLong_ class and atomic_ package.\nThe most of performance is gained by using Cython_ with the\npure Python fallback available *(you do not want to use it)*.\n\nExamples::\n\n >> counter = atomicl.AtomicLong()\n >> counter += 2\n >> counter.value\n 2\n >> counter.get_and_set(5)\n 2\n >> counter.value\n 5\n\nDifferences from atomic_\n------------------------\n\n``atomic`` is a more mature library and is battle-tested.\n\nDespite small API differences, the huge difference between ``atomic``\nand ``atomicl`` is comparisons operations support. ``atomicl`` does\nnot supports comparison and, for now, I do not see reasons to have\nit. I tend to agree with folks from java on\n`this topic `_.\n\n``atomic`` is backed by CFFI_ which makes it a good choice for ``CPython``\nand ``PyPy``. ``atomicl`` with ``Cython`` extension gains better\nperformance on ``CPython`` and performs worse on ``PyPy``. See\nBenchmarks_ for more details.\n\nBenchmarks\n----------\n\nResults for benchmarks.py_ on OS X ``10.13.5`` with\n``Intel(R) Core(TM) i5-5257U CPU @ 2.70GHz`` and turbo boost disabled:\n\n``Python 3.7.0``::\n\n # atomic / atomicl (Cython)\n ctor_default: Mean +- std dev: [atomic.py37] 1.50 us +- 0.04 us -> [atomicl_cy.py37] 92.3 ns +- 0.9 ns: 16.25x faster (-94%)\n ctor: Mean +- std dev: [atomic.py37] 1.40 us +- 0.02 us -> [atomicl_cy.py37] 109 ns +- 1 ns: 12.90x faster (-92%)\n increment: Mean +- std dev: [atomic.py37] 515 ns +- 7 ns -> [atomicl_cy.py37] 33.3 ns +- 0.3 ns: 15.43x faster (-94%)\n decrement: Mean +- std dev: [atomic.py37] 516 ns +- 6 ns -> [atomicl_cy.py37] 33.3 ns +- 0.2 ns: 15.51x faster (-94%)\n setter: Mean +- std dev: [atomic.py37] 1.56 us +- 0.02 us -> [atomicl_cy.py37] 42.0 ns +- 0.6 ns: 37.05x faster (-97%)\n cas: Mean +- std dev: [atomic.py37] 1.68 us +- 0.02 us -> [atomicl_cy.py37] 137 ns +- 1 ns: 12.30x faster (-92%)\n\n # atomic / atomicl (Python)\n ctor_default: Mean +- std dev: [atomic.py37] 1.50 us +- 0.04 us -> [atomicl_py.py37] 957 ns +- 17 ns: 1.57x faster (-36%)\n ctor: Mean +- std dev: [atomic.py37] 1.40 us +- 0.02 us -> [atomicl_py.py37] 902 ns +- 17 ns: 1.56x faster (-36%)\n increment: Mean +- std dev: [atomic.py37] 515 ns +- 7 ns -> [atomicl_py.py37] 980 ns +- 60 ns: 1.90x slower (+90%)\n decrement: Mean +- std dev: [atomic.py37] 516 ns +- 6 ns -> [atomicl_py.py37] 970 ns +- 26 ns: 1.88x slower (+88%)\n setter: Mean +- std dev: [atomic.py37] 1.56 us +- 0.02 us -> [atomicl_py.py37] 413 ns +- 12 ns: 3.77x faster (-73%)\n cas: Mean +- std dev: [atomic.py37] 1.68 us +- 0.02 us -> [atomicl_py.py37] 1.03 us +- 0.01 us: 1.64x faster (-39%)\n\n``Python 3.4.6``::\n\n # atomic / atomicl (Cython)\n ctor_default: Mean +- std dev: [atomic.py34] 1.64 us +- 0.06 us -> [atomicl_cy.py34] 74.5 ns +- 0.8 ns: 22.03x faster (-95%)\n ctor: Mean +- std dev: [atomic.py34] 1.52 us +- 0.03 us -> [atomicl_cy.py34] 90.9 ns +- 1.1 ns: 16.71x faster (-94%)\n increment: Mean +- std dev: [atomic.py34] 523 ns +- 20 ns -> [atomicl_cy.py34] 33.3 ns +- 0.3 ns: 15.70x faster (-94%)\n decrement: Mean +- std dev: [atomic.py34] 522 ns +- 7 ns -> [atomicl_cy.py34] 33.6 ns +- 0.3 ns: 15.55x faster (-94%)\n setter: Mean +- std dev: [atomic.py34] 1.42 us +- 0.04 us -> [atomicl_cy.py34] 44.0 ns +- 1.1 ns: 32.37x faster (-97%)\n cas: Mean +- std dev: [atomic.py34] 1.54 us +- 0.03 us -> [atomicl_cy.py34] 118 ns +- 1 ns: 13.05x faster (-92%)\n\n # atomic / atomicl (Python)\n ctor_default: Mean +- std dev: [atomic.py34] 1.64 us +- 0.06 us -> [atomicl_py.py34] 982 ns +- 28 ns: 1.67x faster (-40%)\n ctor: Mean +- std dev: [atomic.py34] 1.52 us +- 0.03 us -> [atomicl_py.py34] 912 ns +- 24 ns: 1.67x faster (-40%)\n increment: Mean +- std dev: [atomic.py34] 523 ns +- 20 ns -> [atomicl_py.py34] 1.09 us +- 0.02 us: 2.09x slower (+109%)\n decrement: Mean +- std dev: [atomic.py34] 522 ns +- 7 ns -> [atomicl_py.py34] 1.10 us +- 0.02 us: 2.11x slower (+111%)\n setter: Mean +- std dev: [atomic.py34] 1.42 us +- 0.04 us -> [atomicl_py.py34] 456 ns +- 6 ns: 3.12x faster (-68%)\n cas: Mean +- std dev: [atomic.py34] 1.54 us +- 0.03 us -> [atomicl_py.py34] 1.04 us +- 0.02 us: 1.48x faster (-33%)\n\n``PyPy 5.8.0-6.0.0``::\n\n # atomic / atomicl (Cython)\n ctor_default: Mean +- std dev: [atomic.pypy3] 292 ns +- 7 ns -> [atomicl_cy.pypy3] 1.20 us +- 0.04 us: 4.10x slower (+310%)\n ctor: Mean +- std dev: [atomic.pypy3] 270 ns +- 10 ns -> [atomicl_cy.pypy3] 1.13 us +- 0.03 us: 4.19x slower (+319%)\n increment: Mean +- std dev: [atomic.pypy3] 27.9 ns +- 0.4 ns -> [atomicl_cy.pypy3] 68.4 ns +- 2.8 ns: 2.45x slower (+145%)\n decrement: Mean +- std dev: [atomic.pypy3] 27.7 ns +- 0.1 ns -> [atomicl_cy.pypy3] 67.6 ns +- 1.0 ns: 2.44x slower (+144%)\n setter: Mean +- std dev: [atomic.pypy3] 283 ns +- 5 ns -> [atomicl_cy.pypy3] 49.4 ns +- 1.3 ns: 5.73x faster (-83%)\n cas: Mean +- std dev: [atomic.pypy3] 289 ns +- 6 ns -> [atomicl_cy.pypy3] 142 ns +- 7 ns: 2.03x faster (-51%)\n\n # atomic / atomicl (Python)\n ctor_default: Mean +- std dev: [atomic.pypy3] 292 ns +- 7 ns -> [atomicl_py.pypy3] 427 ns +- 12 ns: 1.46x slower (+46%)\n ctor: Mean +- std dev: [atomic.pypy3] 270 ns +- 10 ns -> [atomicl_py.pypy3] 390 ns +- 10 ns: 1.44x slower (+44%)\n increment: Mean +- std dev: [atomic.pypy3] 27.9 ns +- 0.4 ns -> [atomicl_py.pypy3] 274 ns +- 2 ns: 9.82x slower (+882%)\n decrement: Mean +- std dev: [atomic.pypy3] 27.7 ns +- 0.1 ns -> [atomicl_py.pypy3] 283 ns +- 6 ns: 10.19x slower (+919%)\n setter: Mean +- std dev: [atomic.pypy3] 283 ns +- 5 ns -> [atomicl_py.pypy3] 0.22 ns +- 0.00 ns: 1258.80x faster (-100%)\n cas: Mean +- std dev: [atomic.pypy3] 289 ns +- 6 ns -> [atomicl_py.pypy3] 268 ns +- 3 ns: 1.08x faster (-7%)\n\nLicense\n-------\nMIT\n\n\n.. _AtomicLong: https://docs.oracle.com/javase/9/docs/api/java/util/concurrent/atomic/AtomicLong.html\n.. _atomic: https://github.com/cyberdelia/atomic\n.. _Cython: http://cython.org\n.. _CFFI: https://cffi.readthedocs.io\n.. _benchmarks.py: https://github.com/gagoman/atomicl/blob/master/benchmarks.py\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/gagoman/atomicl", "keywords": "atomiclong", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "atomicl", "package_url": "https://pypi.org/project/atomicl/", "platform": "", "project_url": "https://pypi.org/project/atomicl/", "project_urls": { "Homepage": "https://github.com/gagoman/atomicl" }, "release_url": "https://pypi.org/project/atomicl/0.1.1/", "requires_dist": null, "requires_python": "~=3.4", "summary": "Yet another implementation of AtomicLong", "version": "0.1.1" }, "last_serial": 4483146, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "610c227ba6d62b00c8cce97cfb7b7193", "sha256": "22f1c7a6a8ea762ef4ac44b974b095670e3c619e3c38e0fb2d3e1d21edb75ebc" }, "downloads": -1, "filename": "atomicl-0.1.0-cp33-cp33m-macosx_10_12_x86_64.whl", "has_sig": false, "md5_digest": "610c227ba6d62b00c8cce97cfb7b7193", "packagetype": "bdist_wheel", "python_version": "cp33", "requires_python": "~=3.3", "size": 60290, "upload_time": "2017-09-24T08:41:12", "url": "https://files.pythonhosted.org/packages/32/24/bf7fbbefb0ff0f68c31ebd72316cc1e03d16e22d3f2045381b1f04d6db4b/atomicl-0.1.0-cp33-cp33m-macosx_10_12_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "00c99868b45f260a6c8bf1192c7cfaae", "sha256": "37d80e9099dbaf4d37bf8a302acdf3b1185774dc63f9d85b8fd3b4c714c6d08f" }, "downloads": -1, "filename": "atomicl-0.1.0-cp34-cp34m-macosx_10_12_x86_64.whl", "has_sig": false, "md5_digest": "00c99868b45f260a6c8bf1192c7cfaae", "packagetype": "bdist_wheel", "python_version": "cp34", "requires_python": "~=3.3", "size": 60413, "upload_time": "2017-09-24T08:41:15", "url": "https://files.pythonhosted.org/packages/b3/b6/22dd7526f09d8359154476b0df8e4e146cbfdf035218368cfe32d03edc3d/atomicl-0.1.0-cp34-cp34m-macosx_10_12_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "fe9cae2fd86f008378b41b5c650b3536", "sha256": "dedb52cf7d6bc688ae13a5e775a58967b49dec10731254d52a8bfd74ae01d9c4" }, "downloads": -1, "filename": "atomicl-0.1.0-cp35-cp35m-macosx_10_12_x86_64.whl", "has_sig": false, "md5_digest": "fe9cae2fd86f008378b41b5c650b3536", "packagetype": "bdist_wheel", "python_version": "cp35", "requires_python": "~=3.3", "size": 60116, "upload_time": "2017-09-24T08:41:21", "url": "https://files.pythonhosted.org/packages/05/45/dcf0b87fa5bd755b52840327d612370fa730cbaa161f45c014da81fdd04f/atomicl-0.1.0-cp35-cp35m-macosx_10_12_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "82e03a12bfa36aaf16ab5f5ebbcc8953", "sha256": "30d7aedd4298119d0d1c1d71c7c60ed1c008de0bf342115d98fa55569e7941c0" }, "downloads": -1, "filename": "atomicl-0.1.0-cp36-cp36m-macosx_10_12_x86_64.whl", "has_sig": false, "md5_digest": "82e03a12bfa36aaf16ab5f5ebbcc8953", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": "~=3.3", "size": 60454, "upload_time": "2017-09-24T08:41:23", "url": "https://files.pythonhosted.org/packages/e2/79/16d63bce61bfac876bff41b752e3b9025f330824e756edc3c05ca2051b1a/atomicl-0.1.0-cp36-cp36m-macosx_10_12_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "5f75478a1dae800a0fdf251592d27992", "sha256": "2015ee12d01559d33bb63ba8b62240de2a9627e3ee806723db4d51815aa6764d" }, "downloads": -1, "filename": "atomicl-0.1.0.tar.gz", "has_sig": false, "md5_digest": "5f75478a1dae800a0fdf251592d27992", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.3", "size": 40156, "upload_time": "2017-09-24T08:35:14", "url": "https://files.pythonhosted.org/packages/a6/70/35483e228488ff1f6d2d6e9e743a768f41c09168400b1f13d7cec189ca6c/atomicl-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "49fb099f9796514bb9419faa78fedb48", "sha256": "fbfbcd3d79dfd97c246d4c7d0893084a13583365e9e511db47eabcc7da9e9162" }, "downloads": -1, "filename": "atomicl-0.1.1-cp34-cp34m-macosx_10_6_intel.whl", "has_sig": false, "md5_digest": "49fb099f9796514bb9419faa78fedb48", "packagetype": "bdist_wheel", "python_version": "cp34", "requires_python": "~=3.4", "size": 82369, "upload_time": "2018-11-13T20:42:34", "url": "https://files.pythonhosted.org/packages/f2/f8/692dceaa32761371f87da7725bab015cd9972ff9bf6b7edf04a0ba1f7ded/atomicl-0.1.1-cp34-cp34m-macosx_10_6_intel.whl" }, { "comment_text": "", "digests": { "md5": "5933717fd0e73c88d5b571736c1a4f20", "sha256": "e022418d3a3b3f9d34a46e4796091795926750e9ca99467a42c0b74bf43d5de0" }, "downloads": -1, "filename": "atomicl-0.1.1-cp34-cp34m-manylinux1_i686.whl", "has_sig": false, "md5_digest": "5933717fd0e73c88d5b571736c1a4f20", "packagetype": "bdist_wheel", "python_version": "cp34", "requires_python": "~=3.4", "size": 115394, "upload_time": "2018-11-13T20:40:46", "url": "https://files.pythonhosted.org/packages/d6/6d/27a09392e397c19a7ceece90279efde22ad322e80031dd032c2cb372a436/atomicl-0.1.1-cp34-cp34m-manylinux1_i686.whl" }, { "comment_text": "", "digests": { "md5": "57a5a558b365ce4cde6e8a4f16b2f653", "sha256": "d370613911bf54abeae8968d70f2b75c6ff362dbf724d04605f466c0e7bb7cbb" }, "downloads": -1, "filename": "atomicl-0.1.1-cp34-cp34m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "57a5a558b365ce4cde6e8a4f16b2f653", "packagetype": "bdist_wheel", "python_version": "cp34", "requires_python": "~=3.4", "size": 116265, "upload_time": "2018-11-13T20:40:48", "url": "https://files.pythonhosted.org/packages/12/8e/63417ba27c484ecdd46452ff19a74599fcb21f89006bfc777e1bb67d50f1/atomicl-0.1.1-cp34-cp34m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "94ae81536409511bd57a413924f3faa7", "sha256": "984876333dfac60a86415894aae741eafabd3f68bc085f3b2f3b5d3aab0f1af4" }, "downloads": -1, "filename": "atomicl-0.1.1-cp35-cp35m-macosx_10_6_intel.whl", "has_sig": false, "md5_digest": "94ae81536409511bd57a413924f3faa7", "packagetype": "bdist_wheel", "python_version": "cp35", "requires_python": "~=3.4", "size": 83485, "upload_time": "2018-11-13T20:42:35", "url": "https://files.pythonhosted.org/packages/e3/26/c2d0d4942400a334dcf3a80d809485b7ada2d8be4b9fb1ddd34ad4bd23b3/atomicl-0.1.1-cp35-cp35m-macosx_10_6_intel.whl" }, { "comment_text": "", "digests": { "md5": "35ee491835dc7b5cdb3887763b94f7b6", "sha256": "b0677aca945207fe8c4f33a02ebda27c529818b20d1ea50cab5f25dbd7cd74fa" }, "downloads": -1, "filename": "atomicl-0.1.1-cp35-cp35m-manylinux1_i686.whl", "has_sig": false, "md5_digest": "35ee491835dc7b5cdb3887763b94f7b6", "packagetype": "bdist_wheel", "python_version": "cp35", "requires_python": "~=3.4", "size": 116118, "upload_time": "2018-11-13T20:40:49", "url": "https://files.pythonhosted.org/packages/44/90/6d2e1fb7d97f0e582165f4dcd1f81c47f8029d9a45c18ef39c41a4f9abd9/atomicl-0.1.1-cp35-cp35m-manylinux1_i686.whl" }, { "comment_text": "", "digests": { "md5": "ada016d9648df136d3cf6cebba8544e3", "sha256": "b8b3f59556f46cb170a4aebae240b0143a9691983a427761fe39f7b45be38378" }, "downloads": -1, "filename": "atomicl-0.1.1-cp35-cp35m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "ada016d9648df136d3cf6cebba8544e3", "packagetype": "bdist_wheel", "python_version": "cp35", "requires_python": "~=3.4", "size": 118985, "upload_time": "2018-11-13T20:40:50", "url": "https://files.pythonhosted.org/packages/88/12/7d8f665b78aced7877177be331f1aa124a1d73dcd4e268c3d65403bb6221/atomicl-0.1.1-cp35-cp35m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "260e88aec0a24b442a48fed8e9f05d0a", "sha256": "e7df2b45ab33e97bdabb5c513c7e0d99d2723b7e9687e5ae61d5335754ddba67" }, "downloads": -1, "filename": "atomicl-0.1.1-cp36-cp36m-macosx_10_6_intel.whl", "has_sig": false, "md5_digest": "260e88aec0a24b442a48fed8e9f05d0a", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": "~=3.4", "size": 84993, "upload_time": "2018-11-13T20:42:36", "url": "https://files.pythonhosted.org/packages/09/43/25f6b502d80e43f8b38a3f22d00d7d09930ffda3cf1cff8912deadcf0485/atomicl-0.1.1-cp36-cp36m-macosx_10_6_intel.whl" }, { "comment_text": "", "digests": { "md5": "50564c03c03b0241890ae2358807e81a", "sha256": "01b81880c07ff9829f586a618a67d347206da4881e2e6b6246fe6a3d9097dc1f" }, "downloads": -1, "filename": "atomicl-0.1.1-cp36-cp36m-manylinux1_i686.whl", "has_sig": false, "md5_digest": "50564c03c03b0241890ae2358807e81a", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": "~=3.4", "size": 119020, "upload_time": "2018-11-13T20:40:52", "url": "https://files.pythonhosted.org/packages/83/14/d5e5f203683c8558384ced2a7d4f997fb2cb86b430f50e4de19a215b1dbe/atomicl-0.1.1-cp36-cp36m-manylinux1_i686.whl" }, { "comment_text": "", "digests": { "md5": "e0f8e80c23099cae14a3aba921c4d01c", "sha256": "d39f670e7926cef5df9776131aa68011c10b744428357f6639b8528c7e409bdf" }, "downloads": -1, "filename": "atomicl-0.1.1-cp36-cp36m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "e0f8e80c23099cae14a3aba921c4d01c", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": "~=3.4", "size": 121479, "upload_time": "2018-11-13T20:40:53", "url": "https://files.pythonhosted.org/packages/97/32/b197ede3d5e8b746d5709ebc785d1734400529c03bfac66817b5ffd8c40b/atomicl-0.1.1-cp36-cp36m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "19c66a7fe4495effd8c6296d44503e90", "sha256": "e94fcc00056b3fb372253305c565fe848eef3b1f6e18770ac0dd5e98d13d4069" }, "downloads": -1, "filename": "atomicl-0.1.1-cp37-cp37m-macosx_10_6_intel.whl", "has_sig": false, "md5_digest": "19c66a7fe4495effd8c6296d44503e90", "packagetype": "bdist_wheel", "python_version": "cp37", "requires_python": "~=3.4", "size": 84903, "upload_time": "2018-11-13T20:42:38", "url": "https://files.pythonhosted.org/packages/ff/bd/85982aad80bd1c1e0c9917b74feba2326fc47e89dea10344d0bb23015d1e/atomicl-0.1.1-cp37-cp37m-macosx_10_6_intel.whl" }, { "comment_text": "", "digests": { "md5": "9f31d6f42db898b10b1dfbacbd6f56c4", "sha256": "66cbb615c241dc6bb404ac4e9eb5d2f620c2e8ba36a1046821e0bf55ce8fafd3" }, "downloads": -1, "filename": "atomicl-0.1.1-cp37-cp37m-manylinux1_i686.whl", "has_sig": false, "md5_digest": "9f31d6f42db898b10b1dfbacbd6f56c4", "packagetype": "bdist_wheel", "python_version": "cp37", "requires_python": "~=3.4", "size": 119259, "upload_time": "2018-11-13T20:40:55", "url": "https://files.pythonhosted.org/packages/dc/8f/c9abcd8b0a336d1bf5e8bbcdaaa1831452783faac0232c11d2443e8e31a4/atomicl-0.1.1-cp37-cp37m-manylinux1_i686.whl" }, { "comment_text": "", "digests": { "md5": "f095fc5bd220e7462fb855cb3bab71cf", "sha256": "f0d0265d04cc33eac458985cf52415e5f165aca7d046dfa20bf615bbd01d3d24" }, "downloads": -1, "filename": "atomicl-0.1.1-cp37-cp37m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "f095fc5bd220e7462fb855cb3bab71cf", "packagetype": "bdist_wheel", "python_version": "cp37", "requires_python": "~=3.4", "size": 121610, "upload_time": "2018-11-13T20:40:56", "url": "https://files.pythonhosted.org/packages/98/3b/083b2e5e0e403123769e74d7b9e2165c486fbb2e543a0aecac061115ada3/atomicl-0.1.1-cp37-cp37m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "868e7d391086963bd498930ebbc2c866", "sha256": "8a0a5417ed5d6dfc637ed28a7cc7d677a706355f036c074132bc4834afe9fc2d" }, "downloads": -1, "filename": "atomicl-0.1.1.tar.gz", "has_sig": false, "md5_digest": "868e7d391086963bd498930ebbc2c866", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.4", "size": 9053, "upload_time": "2018-11-13T20:40:57", "url": "https://files.pythonhosted.org/packages/32/45/ddc23cb19820fa0690697f972c7a87c20b5886cc5600c6c42e61d11be31c/atomicl-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "49fb099f9796514bb9419faa78fedb48", "sha256": "fbfbcd3d79dfd97c246d4c7d0893084a13583365e9e511db47eabcc7da9e9162" }, "downloads": -1, "filename": "atomicl-0.1.1-cp34-cp34m-macosx_10_6_intel.whl", "has_sig": false, "md5_digest": "49fb099f9796514bb9419faa78fedb48", "packagetype": "bdist_wheel", "python_version": "cp34", "requires_python": "~=3.4", "size": 82369, "upload_time": "2018-11-13T20:42:34", "url": "https://files.pythonhosted.org/packages/f2/f8/692dceaa32761371f87da7725bab015cd9972ff9bf6b7edf04a0ba1f7ded/atomicl-0.1.1-cp34-cp34m-macosx_10_6_intel.whl" }, { "comment_text": "", "digests": { "md5": "5933717fd0e73c88d5b571736c1a4f20", "sha256": "e022418d3a3b3f9d34a46e4796091795926750e9ca99467a42c0b74bf43d5de0" }, "downloads": -1, "filename": "atomicl-0.1.1-cp34-cp34m-manylinux1_i686.whl", "has_sig": false, "md5_digest": "5933717fd0e73c88d5b571736c1a4f20", "packagetype": "bdist_wheel", "python_version": "cp34", "requires_python": "~=3.4", "size": 115394, "upload_time": "2018-11-13T20:40:46", "url": "https://files.pythonhosted.org/packages/d6/6d/27a09392e397c19a7ceece90279efde22ad322e80031dd032c2cb372a436/atomicl-0.1.1-cp34-cp34m-manylinux1_i686.whl" }, { "comment_text": "", "digests": { "md5": "57a5a558b365ce4cde6e8a4f16b2f653", "sha256": "d370613911bf54abeae8968d70f2b75c6ff362dbf724d04605f466c0e7bb7cbb" }, "downloads": -1, "filename": "atomicl-0.1.1-cp34-cp34m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "57a5a558b365ce4cde6e8a4f16b2f653", "packagetype": "bdist_wheel", "python_version": "cp34", "requires_python": "~=3.4", "size": 116265, "upload_time": "2018-11-13T20:40:48", "url": "https://files.pythonhosted.org/packages/12/8e/63417ba27c484ecdd46452ff19a74599fcb21f89006bfc777e1bb67d50f1/atomicl-0.1.1-cp34-cp34m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "94ae81536409511bd57a413924f3faa7", "sha256": "984876333dfac60a86415894aae741eafabd3f68bc085f3b2f3b5d3aab0f1af4" }, "downloads": -1, "filename": "atomicl-0.1.1-cp35-cp35m-macosx_10_6_intel.whl", "has_sig": false, "md5_digest": "94ae81536409511bd57a413924f3faa7", "packagetype": "bdist_wheel", "python_version": "cp35", "requires_python": "~=3.4", "size": 83485, "upload_time": "2018-11-13T20:42:35", "url": "https://files.pythonhosted.org/packages/e3/26/c2d0d4942400a334dcf3a80d809485b7ada2d8be4b9fb1ddd34ad4bd23b3/atomicl-0.1.1-cp35-cp35m-macosx_10_6_intel.whl" }, { "comment_text": "", "digests": { "md5": "35ee491835dc7b5cdb3887763b94f7b6", "sha256": "b0677aca945207fe8c4f33a02ebda27c529818b20d1ea50cab5f25dbd7cd74fa" }, "downloads": -1, "filename": "atomicl-0.1.1-cp35-cp35m-manylinux1_i686.whl", "has_sig": false, "md5_digest": "35ee491835dc7b5cdb3887763b94f7b6", "packagetype": "bdist_wheel", "python_version": "cp35", "requires_python": "~=3.4", "size": 116118, "upload_time": "2018-11-13T20:40:49", "url": "https://files.pythonhosted.org/packages/44/90/6d2e1fb7d97f0e582165f4dcd1f81c47f8029d9a45c18ef39c41a4f9abd9/atomicl-0.1.1-cp35-cp35m-manylinux1_i686.whl" }, { "comment_text": "", "digests": { "md5": "ada016d9648df136d3cf6cebba8544e3", "sha256": "b8b3f59556f46cb170a4aebae240b0143a9691983a427761fe39f7b45be38378" }, "downloads": -1, "filename": "atomicl-0.1.1-cp35-cp35m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "ada016d9648df136d3cf6cebba8544e3", "packagetype": "bdist_wheel", "python_version": "cp35", "requires_python": "~=3.4", "size": 118985, "upload_time": "2018-11-13T20:40:50", "url": "https://files.pythonhosted.org/packages/88/12/7d8f665b78aced7877177be331f1aa124a1d73dcd4e268c3d65403bb6221/atomicl-0.1.1-cp35-cp35m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "260e88aec0a24b442a48fed8e9f05d0a", "sha256": "e7df2b45ab33e97bdabb5c513c7e0d99d2723b7e9687e5ae61d5335754ddba67" }, "downloads": -1, "filename": "atomicl-0.1.1-cp36-cp36m-macosx_10_6_intel.whl", "has_sig": false, "md5_digest": "260e88aec0a24b442a48fed8e9f05d0a", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": "~=3.4", "size": 84993, "upload_time": "2018-11-13T20:42:36", "url": "https://files.pythonhosted.org/packages/09/43/25f6b502d80e43f8b38a3f22d00d7d09930ffda3cf1cff8912deadcf0485/atomicl-0.1.1-cp36-cp36m-macosx_10_6_intel.whl" }, { "comment_text": "", "digests": { "md5": "50564c03c03b0241890ae2358807e81a", "sha256": "01b81880c07ff9829f586a618a67d347206da4881e2e6b6246fe6a3d9097dc1f" }, "downloads": -1, "filename": "atomicl-0.1.1-cp36-cp36m-manylinux1_i686.whl", "has_sig": false, "md5_digest": "50564c03c03b0241890ae2358807e81a", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": "~=3.4", "size": 119020, "upload_time": "2018-11-13T20:40:52", "url": "https://files.pythonhosted.org/packages/83/14/d5e5f203683c8558384ced2a7d4f997fb2cb86b430f50e4de19a215b1dbe/atomicl-0.1.1-cp36-cp36m-manylinux1_i686.whl" }, { "comment_text": "", "digests": { "md5": "e0f8e80c23099cae14a3aba921c4d01c", "sha256": "d39f670e7926cef5df9776131aa68011c10b744428357f6639b8528c7e409bdf" }, "downloads": -1, "filename": "atomicl-0.1.1-cp36-cp36m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "e0f8e80c23099cae14a3aba921c4d01c", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": "~=3.4", "size": 121479, "upload_time": "2018-11-13T20:40:53", "url": "https://files.pythonhosted.org/packages/97/32/b197ede3d5e8b746d5709ebc785d1734400529c03bfac66817b5ffd8c40b/atomicl-0.1.1-cp36-cp36m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "19c66a7fe4495effd8c6296d44503e90", "sha256": "e94fcc00056b3fb372253305c565fe848eef3b1f6e18770ac0dd5e98d13d4069" }, "downloads": -1, "filename": "atomicl-0.1.1-cp37-cp37m-macosx_10_6_intel.whl", "has_sig": false, "md5_digest": "19c66a7fe4495effd8c6296d44503e90", "packagetype": "bdist_wheel", "python_version": "cp37", "requires_python": "~=3.4", "size": 84903, "upload_time": "2018-11-13T20:42:38", "url": "https://files.pythonhosted.org/packages/ff/bd/85982aad80bd1c1e0c9917b74feba2326fc47e89dea10344d0bb23015d1e/atomicl-0.1.1-cp37-cp37m-macosx_10_6_intel.whl" }, { "comment_text": "", "digests": { "md5": "9f31d6f42db898b10b1dfbacbd6f56c4", "sha256": "66cbb615c241dc6bb404ac4e9eb5d2f620c2e8ba36a1046821e0bf55ce8fafd3" }, "downloads": -1, "filename": "atomicl-0.1.1-cp37-cp37m-manylinux1_i686.whl", "has_sig": false, "md5_digest": "9f31d6f42db898b10b1dfbacbd6f56c4", "packagetype": "bdist_wheel", "python_version": "cp37", "requires_python": "~=3.4", "size": 119259, "upload_time": "2018-11-13T20:40:55", "url": "https://files.pythonhosted.org/packages/dc/8f/c9abcd8b0a336d1bf5e8bbcdaaa1831452783faac0232c11d2443e8e31a4/atomicl-0.1.1-cp37-cp37m-manylinux1_i686.whl" }, { "comment_text": "", "digests": { "md5": "f095fc5bd220e7462fb855cb3bab71cf", "sha256": "f0d0265d04cc33eac458985cf52415e5f165aca7d046dfa20bf615bbd01d3d24" }, "downloads": -1, "filename": "atomicl-0.1.1-cp37-cp37m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "f095fc5bd220e7462fb855cb3bab71cf", "packagetype": "bdist_wheel", "python_version": "cp37", "requires_python": "~=3.4", "size": 121610, "upload_time": "2018-11-13T20:40:56", "url": "https://files.pythonhosted.org/packages/98/3b/083b2e5e0e403123769e74d7b9e2165c486fbb2e543a0aecac061115ada3/atomicl-0.1.1-cp37-cp37m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "868e7d391086963bd498930ebbc2c866", "sha256": "8a0a5417ed5d6dfc637ed28a7cc7d677a706355f036c074132bc4834afe9fc2d" }, "downloads": -1, "filename": "atomicl-0.1.1.tar.gz", "has_sig": false, "md5_digest": "868e7d391086963bd498930ebbc2c866", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.4", "size": 9053, "upload_time": "2018-11-13T20:40:57", "url": "https://files.pythonhosted.org/packages/32/45/ddc23cb19820fa0690697f972c7a87c20b5886cc5600c6c42e61d11be31c/atomicl-0.1.1.tar.gz" } ] }