summaryrefslogtreecommitdiff
path: root/memcache.py
Commit message (Collapse)AuthorAgeFilesLines
* Fix #79, #80 -- Fix storing non-ASCII values on Python 2 and binary values ↵Nicolas Noé2017-11-141-9/+13
| | | | on Python 3
* Fix crash on Python 3 in touch() loggingMatt Davis2017-11-141-1/+1
|
* Fix key ordering failure in doctestsTim Graham2017-11-011-7/+6
|
* Fix typo in get_multi() docstringCharles Chan2017-10-301-1/+1
|
* #112 Cleaning up flake8 alertsSean Reifschneider2016-12-171-2/+3
|
* Add flake8 check to TravisTim Graham2016-12-171-6/+6
|
* Merge pull request #111 from timgraham/has_unicodeSean Reifschneider2016-12-171-11/+0
|\ | | | | Remove unused _has_unicode/_str_cls vars
| * Remove unused _has_unicode/_str_cls varsTim Graham2016-12-161-11/+0
| | | | | | | | Unused since 04f1c78c13bd54050b1d2d3baa9e86d9e79b3629.
* | Merge pull request #113 from timgraham/returnSean Reifschneider2016-12-171-8/+5
|\ \ | | | | | | Remove unnecessary parentheses in return statements
| * | Remove unnecessary parentheses in return statementsTim Graham2016-12-161-8/+5
| |/
* | Fix some typos in docstringsRomuald Brunet2016-12-011-7/+7
|/
* Readme changes for delete() time=None changeSean Reifschneider2016-05-271-3/+3
|
* Merge pull request #82 from dieselmachine/72-version-discrepanciesSean Reifschneider2016-05-271-1/+1
|\ | | | | (#72) setup.py will now pull the version number directly from memcach…
| * (#72) setup.py will now pull the version number directly from memcache.py ↵JT2015-10-011-1/+1
| | | | | | | | (using setuptools.depends.get_module_constant) in order to prevent discrepancies
* | Merge pull request #91 from bartTC/masterSean Reifschneider2016-05-271-2/+2
|\ \ | | | | | | Python3: `get_stats` function fails due to Bytestring encoding errors
| * | Fixed Python3 Bytestring decoding error in get_stats.Martin Mahner2016-03-191-2/+2
| |/
* | Merge pull request #93 from grg350/masterSean Reifschneider2016-05-271-0/+31
|\ \ | | | | | | Adding support for "stats slabs" statistics
| * | fixing indentation 2grg3502016-05-091-1/+1
| | |
| * | fixing indentationgrg3502016-05-091-1/+1
| | |
| * | Adding support for "stats slabs" statisticsraj.gurung2016-05-091-0/+31
| |/
* | Use cPickle with Python 2 again, to fix v1.54 performance regressionEd Morley2016-01-071-1/+6
|/ | | | | | | | | | | | | | | Some Python 3 compatibility changes made python-memcached import pickle rather than cPickle, since the latter isn't available on Python 3: https://github.com/linsomniac/python-memcached/commit/45403325e0249ff0f61d6ae449a7daeeb7e852e5 This is fine on Python 3, since importing pickle will automatically use the faster C implementation if available, however with Python 2 this caused a 400% slowdown in memcache gets between python-memcached v1.53 and v1.54, when dealing with objects other than bytes. This mostly fixes #71, though there is still a 10-20% performance drop using current master plus this change compared to v1.53 (using Python 2.7.10).
* Merge branch 'py3' of ssh://github.com/haypo/python-memcached into haypo-py3Sean Reifschneider2015-08-021-245/+28
|\ | | | | | | | | Conflicts: tests/test_memcache.py
| * More Python 3 fixesVictor Stinner2015-07-271-245/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | * Port set_multi() to Python 3 * Port delete_multi() to Python 3 * Fix _get_server() on Python 3 when the connection to the first server fails: encode to ASCII before calling serverHashFunction. * Fix expect(): don't decode line on Python 3, return the raw line * Add more unit tests * tox now also runs unit tests * Explicit the encoding when calling str.encode(): use 'utf-8' * test_memcache: close sockets in tearDown() * test_get_unknown_value(): delete the key to ensure that it doesn't exist
* | Fix for value being boolean in set().release-1.57Sean Reifschneider2015-07-311-2/+2
|/
* Updating version in memcache.pySean Reifschneider2015-07-261-1/+1
|
* Port memcache to Python 3Victor Stinner2015-04-231-89/+149
| | | | | | | | | | | | | | | | | | * travis: make python 3 tests voting (cannot fail anymore) * setup.py: add Python 3 classifiers * Encode unicode key to UTF-8: add _encode_key() method * Add _encode_cmd() helper method to format a memcache command as a byte string (bytes%args will only be supported in Python 3.5) * Rewrite _map_and_prefix_keys() code converting keys * _val_to_store_info() now accepts Unicode: Unicode is encoded to UTF-8 * _set('cas') doesn't call _val_to_store_info() anymore when it's not needed: begin by checking if the key is in the cas_ids dictionary * Process server reply as bytes * _recv_value() now clears the _FLAG_COMPRESSED flag after decompressing to simplify the code * On Python 3, _recv_value() now decodes byte strings from UTF-8 * Simplify check_key(), _encode_key() now encodes Unicode to UTF-8 * Replace u'...' with six.u('...') in tests for Python 3.2
* updating comment to account for -I optionDave Forgac2014-10-111-3/+4
|
* Merge pull request #50 from cactus/support-alternate-compressionSean Reifschneider2014-09-271-20/+10
|\ | | | | add support for pluggable compressor/decompressor
| * add support for pluggable compressor/decompressorelij2014-08-241-20/+10
| | | | | | | | | | | | | | | | Add support for pluggable compressors. zlib is a fine choice for a default compressor, but in some environments alternatives (lz4/lzf/snappy) that offer differet tradeoffs for size/time, may be preferred.
* | Merge pull request #49 from cactus/noreplySean Reifschneider2014-09-271-43/+110
|\ \ | | | | | | add support for noreply
| * | CAS supports noreply tooelij2014-08-251-2/+2
| | |
| * | add support for noreplyelij2014-08-241-41/+108
| |/ | | | | | | | | | | the memcache protocol defines a 'noreply' optional parameter, which instructs the server to not send a reply. In heavy usage environments this can lead to significant performance improvements.
* | Fixes for empty/None keys.Sean Reifschneider2014-09-241-1/+12
| | | | | | | | | | Empty keys with a prefix are ok (for _multi() mostly). _multi() was silently converting None key to a string.
* | MemcachedKeyCharacterError better describes errorSean Reifschneider2014-09-211-1/+1
|/
* pep8: H201 no 'except:' at least use 'except Exception:'Marc Abramowitz2014-06-091-1/+1
|
* pep8: E227 missing whitespace around bitwise or shift operatorMarc Abramowitz2014-06-091-1/+1
|
* pep8: F402 import 'pickle' from line 52 shadowed by loop variableMarc Abramowitz2014-06-091-1/+0
|
* pep8: H405 multi line docstring summary not separated with an empty lineMarc Abramowitz2014-06-091-4/+13
|
* pep8: E711 comparison to None should be 'if cond is None:'Marc Abramowitz2014-06-091-4/+4
|
* pep8: E265 block comment should start with '# 'Marc Abramowitz2014-06-091-13/+13
|
* Clean up long lines for pep8Marc Abramowitz2014-06-091-7/+8
|
* Sort imports for pep8Marc Abramowitz2014-06-091-3/+4
|
* Resolving conflicts from cabrera-py33_fixes.Sean Reifschneider2014-06-071-316/+413
|
* Complete the Python3 work!Alex Gaynor2014-05-101-1/+1
|
* Merge pull request #42 from alex/iterkeysSean Reifschneider2014-05-101-5/+5
|\ | | | | Removed usage of iterkeys for python3
| * Removed usage of iterkeys for python3Alex Gaynor2014-05-101-5/+5
| |
* | Included Python3 changes from Dustin OpreaSean Reifschneider2014-05-101-5/+19
|/ | | | From #38.
* Merge pull request #41 from alex/stringio-py3kSean Reifschneider2014-05-101-7/+4
|\ | | | | Use io.BytesIO() in favor of StringIO to be python3 friendly
| * Use io.BytesIO() in favor of StringIO to be python3 friendlyAlex Gaynor2014-05-101-7/+4
| |
* | Fixing connection-dead subscript issue.Sean Reifschneider2014-05-101-1/+1
| | | | | | | | From Dustin Oprea, part of #38.