{ "info": { "author": "TUNE Inc.", "author_email": "jefft@tune.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: PyPy" ], "description": ".. -*- mode: rst -*-\n\npymemcache-client\n-----------------\n\nExtension of Python package `pymemcache `_ providing client configuration.\n\n\nBadges\n------\n\n.. start-badges\n\n.. list-table::\n :stub-columns: 1\n\n * - docs\n - |docs| |license|\n * - info\n - |hits| |contributors|\n * - tests\n - |travis| |coveralls|\n * - package\n - |version| |supported-versions|\n * - other\n - |requires|\n\n.. |docs| image:: https://readthedocs.org/projects/pymemcache-client/badge/?style=flat\n :alt: Documentation Status\n :target: http://pymemcache-client.readthedocs.io\n\n.. |hits| image:: http://hits.dwyl.io/TuneLab/pymemcache-client.svg\n :alt: Hits\n :target: http://hits.dwyl.io/TuneLab/pymemcache-client\n\n.. |contributors| image:: https://img.shields.io/github/contributors/TuneLab/pymemcache-client.svg\n :alt: Contributors\n :target: https://github.com/TuneLab/pymemcache-client/graphs/contributors\n\n.. |license| image:: https://img.shields.io/badge/License-MIT-yellow.svg\n :alt: License Status\n :target: https://opensource.org/licenses/MIT\n\n.. |travis| image:: https://travis-ci.org/TuneLab/pymemcache-client.svg?branch=master\n :alt: Travis-CI Build Status\n :target: https://travis-ci.org/TuneLab/pymemcache-client\n\n.. |coveralls| image:: https://coveralls.io/repos/TuneLab/pymemcache-client/badge.svg?branch=master&service=github\n :alt: Code Coverage Status\n :target: https://coveralls.io/r/TuneLab/pymemcache-client\n\n.. |version| image:: https://img.shields.io/pypi/v/pymemcache-client.svg?style=flat\n :alt: PyPI Package latest release\n :target: https://pypi.python.org/pypi/pymemcache-client\n\n.. |supported-versions| image:: https://img.shields.io/pypi/pyversions/pymemcache-client.svg?style=flat\n :alt: Supported versions\n :target: https://pypi.python.org/pypi/pymemcache-client\n\n.. |requires| image:: https://requires.io/github/TuneLab/pymemcache-client/requirements.svg?branch=master\n :alt: Requirements Status\n :target: https://requires.io/github/TuneLab/pymemcache-client/requirements/?branch=master\n\n.. end-badges\n\n\nInstall\n-------\n\n.. code-block:: bash\n\n pip install pymemcache-client\n\n\nInstall Memcached\n-----------------\n\nTo run examples and tests locally upon **\"localhost\"**, memcached must be installed.\n\n**Install memcached using brew**\n\n.. code-block:: bash\n\n $ brew install memcached\n\n ==> Installing memcached\n ==> Downloading https://homebrew.bintray.com/bottles/memcached-1.5.3.sierra.bottle.tar.gz\n ######################################################################## 100.0%\n ==> Pouring memcached-1.5.3.sierra.bottle.tar.gz\n ==> Caveats\n To have launchd start memcached now and restart at login:\n brew services start memcached\n Or, if you don't want/need a background service you can just run:\n /usr/local/opt/memcached/bin/memcached\n ==> Summary\n \ud83c\udf7a /usr/local/Cellar/memcached/1.5.3: 11 files, 198.7KB\n\n\n**Start memcached using brew**\n\n.. code-block:: bash\n\n $ brew services start memcached\n\n ==> Successfully started `memcached` (label: homebrew.mxcl.memcached)\n\nArchitecture\n------------\n\nExtension of Python package `pymemcache `_ returning ``from pymemcache.client.hash import HashClient``\nand configured using either ``~/.pymemcache.json`` or ``pymemcache.json``.\n\n\nFunctionality\n-------------\n\n``class PymemcacheClient``: Prepare a Pymemcache Client using available configuration.\n\nConfiguration can be provided when creating an instance of this class by:\n\n- User-level file: ``~/.pymemcache.json``\n- Application-level file: ``./pymemcache.json``\n- Provided as *file path* value in JSON-format to parameter ``config_file``\n- Provided as ``dict`` value in JSON-format to parameter ``config``\n\nConfiguration\n-------------\n\nThis is the expected configuration that can be provided to ``class PymemcacheClient`` is in JSON format:\n\n.. code-block:: text\n\n {\n \"client_type\": \"[OPTIONAL str, DEFAULT 'basic']\",\n \"servers\": [\n {\n \"host\": \"[str]\",\n \"port\": [int]\n }\n ],\n \"server_type\": \"[OPTIONAL str, DEFAULT 'standard']\",\n \"connect_timeout\": [OPTIONAL float, Defaults to forever],\n \"timeout\": [OPTIONAL float, Defaults to forever],\n \"no_delay\": [OPTIONAL bool, DEFAULT false],\n \"ignore_exc\": [OPTIONAL bool, DEFAULT false],\n \"default_noreply\": [OPTIONAL bool, DEFAULT true],\n \"allow_unicode_keys\": [OPTIONAL bool, DEFAULT false]\n }\n\n- ``\"client_type\"``: [OPTIONAL] Type of memcached client, DEFAULT ``\"basic\"``\n + ``\"basic\"``: Memcached client using ``from pymemcache.client.base import Client``. A client for a single memcached server.\n + ``\"hash\"``: Memcached client using ``from pymemcache.client.hash import HashClient``. A client for communicating with a cluster of memcached servers.\n- ``\"servers\"``: A list of memcached servers and requiring at least one.\n + if ``\"client_type\"`` is ``\"basic\"``, then 1 server and only 1 is required.\n + if ``\"client_type\"`` is ``\"hash\"``, then 1 or more servers is required.\n- ``\"server_type\"``: Defining special needs for connect to memcached servers, DEFAULT ``\"standard\"``.\n + ``\"standard\"``: Pooling server connections using standard HTTP.\n + ``\"elasticache\"``: Pooling server connections using Auto Discovery through `AWS Elasticache `_.\n- ``\"connect_timeout\"``: OPTIONAL float, seconds to wait for a connection to the memcached server. Defaults to \"forever\" (uses the underlying default socket timeout, which can be very long), i.e., the socket is put in blocking mode waiting to connect to memcached server.\n- ``\"timeout\"``: OPTIONAL float, OPTIONAL float, seconds to wait for send or recv calls on the socket connected to memcached. Defaults to \"forever\" (uses the underlying default socket timeout, which can be very long), i.e., the socket is put in blocking mode.\n- ``\"no_delay\"``: OPTIONAL bool, set the TCP_NODELAY flag, which may help with performance in some cases. DEFAULT ``false``.\n- ``\"ignore_exc\"``: OPTIONAL bool, True to cause the \"get\", \"gets\", \"get_many\" and \"gets_many\" calls to treat any errors as cache misses. DEFAULT ``false``.\n- ``\"default_noreply\"``: OPTIONAL bool, the DEFAULT value for ``'noreply'`` as passed to store commands. DEFAULT ``true``.\n- ``\"allow_unicode_keys\"``: OPTIONAL bool, support unicode (utf8) keys. DEFAULT ``false``.\n\n\nDependencies\n------------\n\n``pymemcache-client`` module is built upon Python 3 and has dependencies upon\nseveral Python modules available within `Python Package Index PyPI `_.\n\n- `pymemcache `_\n- `telnetlib3 `_\n- `ujson `_\n\n\n.. :changelog:\n\nRelease History\n===============\n\n0.3.2 (2018-02-16)\n------------------\n- Migrate to github/TuneLab\n\n0.3.1 (2018-01-25)\n------------------\n- migrate to github/tuneinc\n\n0.3.0 (2017-12-10)\n------------------\n- readthedocs.org\n\n0.2.0 (2016-12-08)\n------------------\n- Alpha\n- More robust JSON configuration\n- Handles ``pymemcache.client.hash.HashClient``\n- Handles ``pymemcache.client.base.Client``\n\n0.1.0 (2016-12-07)\n------------------\n- First Release\n\n0.0.1 (2016-12-07)\n------------------\n- Initial commit\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/TuneLab/pymemcache-client/archive/v0.3.2.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/TuneLab/pymemcache-client", "keywords": "pymemcache client tune", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "pymemcache-client", "package_url": "https://pypi.org/project/pymemcache-client/", "platform": "", "project_url": "https://pypi.org/project/pymemcache-client/", "project_urls": { "Download": "https://github.com/TuneLab/pymemcache-client/archive/v0.3.2.tar.gz", "Homepage": "https://github.com/TuneLab/pymemcache-client" }, "release_url": "https://pypi.org/project/pymemcache-client/0.3.2/", "requires_dist": null, "requires_python": "", "summary": "Extension of Python package pymemcache providing client configuration through pymemcache.json.", "version": "0.3.2" }, "last_serial": 3852714, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "0c70f51575804c7dcb3f8fd558ee8e4e", "sha256": "f0d262d409c95e3b871a1e8e33c64abcfb6575d1697c4377bfa9f0726d4211a3" }, "downloads": -1, "filename": "pymemcache_client-0.2.1-py3.6.egg", "has_sig": false, "md5_digest": "0c70f51575804c7dcb3f8fd558ee8e4e", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 10085, "upload_time": "2017-12-08T20:48:11", "url": "https://files.pythonhosted.org/packages/58/19/4830d9251143ba9f2f9f3789b396371a6c03b886b8984b356e19be8d4741/pymemcache_client-0.2.1-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "d1e098a3b8a6e3ecceb1b98c728189de", "sha256": "d30f5c21b50e119e9edb44a25b9365cc668bab991bdf12f045e464672b8f4bfb" }, "downloads": -1, "filename": "pymemcache_client-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d1e098a3b8a6e3ecceb1b98c728189de", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10043, "upload_time": "2017-12-08T20:48:09", "url": "https://files.pythonhosted.org/packages/2a/4c/40c83896900e2b0746fdbeb7a01f0b94a6cf23f378ea5f9829463a78d33f/pymemcache_client-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b55dbda0329b62c7757276f8081643df", "sha256": "0461281d0ded88c5f391559dbf22013755d473ff3b7b654d8b7bda18623ef7d2" }, "downloads": -1, "filename": "pymemcache-client-0.2.1.tar.gz", "has_sig": false, "md5_digest": "b55dbda0329b62c7757276f8081643df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11231, "upload_time": "2017-12-08T20:48:14", "url": "https://files.pythonhosted.org/packages/0c/cd/a3d0e6f85f82462f3b6844217a23fda9781676ff5122c144ca6f2756fb12/pymemcache-client-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "0472630c53b14b0d3f4d0695de8e9a4a", "sha256": "caadc773ae4815f66292374d1cef46163fa38c09ee5a3a7d4dbcb52be2a83cd0" }, "downloads": -1, "filename": "pymemcache_client-0.2.2-py3.6.egg", "has_sig": false, "md5_digest": "0472630c53b14b0d3f4d0695de8e9a4a", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 10102, "upload_time": "2017-12-10T16:03:23", "url": "https://files.pythonhosted.org/packages/07/01/a2abfda5e44b2322ca08e918d5525951176a9ea3da51e154cab1255c116b/pymemcache_client-0.2.2-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "89b316b79f17e212f7129180b21655ce", "sha256": "48723366ab45161bf881d6a5f1ebbc2cff80bc18f0ebcf7887cc1da671cca3c0" }, "downloads": -1, "filename": "pymemcache_client-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "89b316b79f17e212f7129180b21655ce", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10097, "upload_time": "2017-12-10T16:03:19", "url": "https://files.pythonhosted.org/packages/d9/b9/2140a036dc864f2994d85c10139f95db76e1f091272a07cad852ffd83dff/pymemcache_client-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0d31c3dc7ad3c8ce1da9cd46e3117e58", "sha256": "93fd3ee1ae05cf14e3584f213dd2ce0eb2afe6fe07e21e33fff5378bf65bc296" }, "downloads": -1, "filename": "pymemcache-client-0.2.2.tar.gz", "has_sig": false, "md5_digest": "0d31c3dc7ad3c8ce1da9cd46e3117e58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11257, "upload_time": "2017-12-10T16:03:27", "url": "https://files.pythonhosted.org/packages/57/fc/86c6f461f07d45f0ab920efb8f443cd9d2c416b31043b89881911720d504/pymemcache-client-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "3ceb9e4c3bb099dc3be261fb11da5e06", "sha256": "81e5a5a14403bb15bf3c0a545d6eddce27cd837b0abdcced4c4cc3a2eb99f057" }, "downloads": -1, "filename": "pymemcache_client-0.3.0-py3.6.egg", "has_sig": false, "md5_digest": "3ceb9e4c3bb099dc3be261fb11da5e06", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 10098, "upload_time": "2017-12-10T16:07:40", "url": "https://files.pythonhosted.org/packages/f5/73/9f42f195e741fa66297da56f51347d59650170d90169dac97291e056e38c/pymemcache_client-0.3.0-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "893f3d31afd52f5550d50dddb180cd05", "sha256": "f86fdb74454a1ca425d5a7acb6b5e01148baf6a1327a9e9a9842055b40edc907" }, "downloads": -1, "filename": "pymemcache_client-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "893f3d31afd52f5550d50dddb180cd05", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10088, "upload_time": "2017-12-10T16:07:36", "url": "https://files.pythonhosted.org/packages/4e/68/07b4da9c492ee8405d06db09091c2a0014a49a6e3cdb41a8d3255ac3c3b4/pymemcache_client-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9adcbbef5fe0b79f80040a1cd28d694d", "sha256": "c089ffe54889c54522e3ead0b130e10d03013dfb2821e5f681ea111be5040cdc" }, "downloads": -1, "filename": "pymemcache-client-0.3.0.tar.gz", "has_sig": false, "md5_digest": "9adcbbef5fe0b79f80040a1cd28d694d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11255, "upload_time": "2017-12-10T16:07:43", "url": "https://files.pythonhosted.org/packages/19/93/7fcb21addd710806bbef4039500119823a022577b2b6ad0d56740ad162f3/pymemcache-client-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "0c7745f536691c9f98ee779504f80c38", "sha256": "fb0154fe62966b3b35e7b747ccef7a63a2257c84b2bbe2c9664b611364990803" }, "downloads": -1, "filename": "pymemcache_client-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0c7745f536691c9f98ee779504f80c38", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10097, "upload_time": "2018-01-28T18:46:57", "url": "https://files.pythonhosted.org/packages/06/c1/4dc40eccd9e8819e67e91f7b92a0641e844d18f1b584d58c2d41d35ec928/pymemcache_client-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9813ac99e3152586a1b9c23fdcc75f4a", "sha256": "610d475f2e57afc23a0f62dc70e263e41641c387562038672322acf0c4a3a35d" }, "downloads": -1, "filename": "pymemcache-client-0.3.1.tar.gz", "has_sig": false, "md5_digest": "9813ac99e3152586a1b9c23fdcc75f4a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8053, "upload_time": "2018-01-28T18:46:55", "url": "https://files.pythonhosted.org/packages/cc/a1/5b37afed7d444ab2461375d70afe9543064067c81b72eff60e89d3515cbc/pymemcache-client-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "57a6eb27299040d46deba3cf6b083b01", "sha256": "fac97bb27a596eaffb5022e3aab3b1bbe57f4c866da969d97c034057b98528f6" }, "downloads": -1, "filename": "pymemcache_client-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "57a6eb27299040d46deba3cf6b083b01", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10140, "upload_time": "2018-02-18T17:39:59", "url": "https://files.pythonhosted.org/packages/48/76/bc22937e235d97bac9dcf6b3503674431bcbc8921f4201bf3af1aa6b19eb/pymemcache_client-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "13750c56acfdcc483be1497af67ce349", "sha256": "72b8520012563fa8e39b7ff02b187d723d8b1781b7a581f2b51c6ebf65331ac6" }, "downloads": -1, "filename": "pymemcache-client-0.3.2.tar.gz", "has_sig": false, "md5_digest": "13750c56acfdcc483be1497af67ce349", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8096, "upload_time": "2018-02-18T17:39:57", "url": "https://files.pythonhosted.org/packages/2b/9d/1a65aa8487ac30c43de697c8e84935b42abff6f9769b3984f15a2606516e/pymemcache-client-0.3.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "57a6eb27299040d46deba3cf6b083b01", "sha256": "fac97bb27a596eaffb5022e3aab3b1bbe57f4c866da969d97c034057b98528f6" }, "downloads": -1, "filename": "pymemcache_client-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "57a6eb27299040d46deba3cf6b083b01", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10140, "upload_time": "2018-02-18T17:39:59", "url": "https://files.pythonhosted.org/packages/48/76/bc22937e235d97bac9dcf6b3503674431bcbc8921f4201bf3af1aa6b19eb/pymemcache_client-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "13750c56acfdcc483be1497af67ce349", "sha256": "72b8520012563fa8e39b7ff02b187d723d8b1781b7a581f2b51c6ebf65331ac6" }, "downloads": -1, "filename": "pymemcache-client-0.3.2.tar.gz", "has_sig": false, "md5_digest": "13750c56acfdcc483be1497af67ce349", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8096, "upload_time": "2018-02-18T17:39:57", "url": "https://files.pythonhosted.org/packages/2b/9d/1a65aa8487ac30c43de697c8e84935b42abff6f9769b3984f15a2606516e/pymemcache-client-0.3.2.tar.gz" } ] }