<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/pymemcache.git/docs, branch github-actions</title>
<subtitle>github.com: pinterest/pymemcache.git
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/'/>
<entry>
<title>Change serialization interface to be an object (#245)</title>
<updated>2019-08-26T18:11:31+00:00</updated>
<author>
<name>Stephen Rosen</name>
<email>sirosen@globus.org</email>
</author>
<published>2019-08-26T18:11:31+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=5699c9dfa7067a99000e281091dd6400a1e84122'/>
<id>5699c9dfa7067a99000e281091dd6400a1e84122</id>
<content type='text'>
* Change serialization interface to be an object

Rather than passing separate serialization and deserialization methods
to a pymemcache client, pass an object implementing a very simple
two-method interface.

This is a rather significant breaking change and should be part of an
x.0.0 major release.

Resolves #56

As suggested in that issue, this is a cleaner interface, as there's no
sensible context in which you would provide only one of these two
methods and it should therefore be thought of as a
serialization/deserialization protocol.

Also adds a note to the documentation's Best Practices list that you
should use the built-in serializer object unless you have a reason to do
otherwise.

* Support "de/serializer" in addition to "serde"

In order to support older client usage in addition to the new
serialization object (protocol), restore the "serializer" and
"deserializer" arguments to the Client classes.
These are marked as deprecated and will be automatically wrapped into a
small "serde" object.

In order to make the various object names more distinguishable and more
informative, the built-in default serializer is now called
"python_memcache_pickle_serde"

Additionally, default client.serde to a "no-op serializer".
This object does no transforms on the data. By putting this in place, we
can skip some conditionals in the code around presence or absence of a
serializer and therefore simplify internally (at the cost of an extra,
unnecessary, functional call in some cases).

It also simplifies logic around the handling of flags because we are now
*guaranteed* the presence of a serializer object which returns some
flags. i.e. "default flags" are no longer the responsibility of the
various serializer usage sites.
This is done carefully to ensure that passing a `serializer` without a
`deserializer` is respected.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Change serialization interface to be an object

Rather than passing separate serialization and deserialization methods
to a pymemcache client, pass an object implementing a very simple
two-method interface.

This is a rather significant breaking change and should be part of an
x.0.0 major release.

Resolves #56

As suggested in that issue, this is a cleaner interface, as there's no
sensible context in which you would provide only one of these two
methods and it should therefore be thought of as a
serialization/deserialization protocol.

Also adds a note to the documentation's Best Practices list that you
should use the built-in serializer object unless you have a reason to do
otherwise.

* Support "de/serializer" in addition to "serde"

In order to support older client usage in addition to the new
serialization object (protocol), restore the "serializer" and
"deserializer" arguments to the Client classes.
These are marked as deprecated and will be automatically wrapped into a
small "serde" object.

In order to make the various object names more distinguishable and more
informative, the built-in default serializer is now called
"python_memcache_pickle_serde"

Additionally, default client.serde to a "no-op serializer".
This object does no transforms on the data. By putting this in place, we
can skip some conditionals in the code around presence or absence of a
serializer and therefore simplify internally (at the cost of an extra,
unnecessary, functional call in some cases).

It also simplifies logic around the handling of flags because we are now
*guaranteed* the presence of a serializer object which returns some
flags. i.e. "default flags" are no longer the responsibility of the
various serializer usage sites.
This is done carefully to ensure that passing a `serializer` without a
`deserializer` is respected.</pre>
</div>
</content>
</entry>
<entry>
<title>Inaugurate pymemcache 3.0 development</title>
<updated>2019-08-20T16:43:13+00:00</updated>
<author>
<name>Jon Parise</name>
<email>jon@pinterest.com</email>
</author>
<published>2019-08-20T16:43:13+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=f6ca790148cacb9b1144248d531adeffac0f7d3c'/>
<id>f6ca790148cacb9b1144248d531adeffac0f7d3c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix long_description string in Python packaging (#249)</title>
<updated>2019-08-06T19:06:21+00:00</updated>
<author>
<name>Jon Parise</name>
<email>jon@pinterest.com</email>
</author>
<published>2019-08-06T19:06:21+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=762856daf858360e4bd848fd82040f266bfdb2e2'/>
<id>762856daf858360e4bd848fd82040f266bfdb2e2</id>
<content type='text'>
When defining `long_description` in setup.cfg using the `file:`
directive, we need to keep everything on one line. Otherwise, it will
treat the value as a block of literal text.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When defining `long_description` in setup.cfg using the `file:`
directive, we need to keep everything on one line. Otherwise, it will
treat the value as a block of literal text.</pre>
</div>
</content>
</entry>
<entry>
<title>Bump documentation version for 2.2.0 release</title>
<updated>2019-07-30T16:35:32+00:00</updated>
<author>
<name>Jon Parise</name>
<email>jon@pinterest.com</email>
</author>
<published>2019-07-30T16:35:32+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=9f93c47c86e0a1dae08929c88d13e1caa4ff96ac'/>
<id>9f93c47c86e0a1dae08929c88d13e1caa4ff96ac</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add noreply warning to getting_started doc (#241)</title>
<updated>2019-07-24T19:35:25+00:00</updated>
<author>
<name>Stephen Rosen</name>
<email>sirosen@globus.org</email>
</author>
<published>2019-07-24T19:35:25+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=c42453c336fece50a123f410554df0bb55b21859'/>
<id>c42453c336fece50a123f410554df0bb55b21859</id>
<content type='text'>
resolves #239

Add a warning to the Best Practices section of the Getting Started
doc which explains the interaction between `noreply=True` and error
handling.

Also, fix a very minor typo, ``"noreply`` in a nearby line.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
resolves #239

Add a warning to the Best Practices section of the Getting Started
doc which explains the interaction between `noreply=True` and error
handling.

Also, fix a very minor typo, ``"noreply`` in a nearby line.</pre>
</div>
</content>
</entry>
<entry>
<title>Finish preparing the 2.1.0 release</title>
<updated>2019-01-08T17:36:50+00:00</updated>
<author>
<name>Jon Parise</name>
<email>jon@pinterest.com</email>
</author>
<published>2019-01-08T17:36:50+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=ee0a49a8d064dfda499690d8bd64eaf317e329f6'/>
<id>ee0a49a8d064dfda499690d8bd64eaf317e329f6</id>
<content type='text'>
This updates the changelog and includes a final documentation cleanup
pass.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This updates the changelog and includes a final documentation cleanup
pass.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add UNIX domain socket support (#206)</title>
<updated>2019-01-02T18:15:13+00:00</updated>
<author>
<name>Jon Parise</name>
<email>jon@pinterest.com</email>
</author>
<published>2019-01-02T18:15:13+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=cd21d18e499571e8aa21920800590157adf03ce0'/>
<id>cd21d18e499571e8aa21920800590157adf03ce0</id>
<content type='text'>
The client's `server` argument can now be a string containing the path
to the memcached server's UNIX domain socket.

Also document all of the connection-oriented client parameters.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The client's `server` argument can now be a string containing the path
to the memcached server's UNIX domain socket.

Also document all of the connection-oriented client parameters.</pre>
</div>
</content>
</entry>
<entry>
<title>Bump docs' the copyright year to 2018</title>
<updated>2018-09-18T22:34:22+00:00</updated>
<author>
<name>Jon Parise</name>
<email>jon@pinterest.com</email>
</author>
<published>2018-09-18T22:34:22+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=dde3204b5f76256c59bce7624f79ac8d5db90af8'/>
<id>dde3204b5f76256c59bce7624f79ac8d5db90af8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update documentation to cover serde module</title>
<updated>2018-09-12T20:19:06+00:00</updated>
<author>
<name>Joe Gordon</name>
<email>jogo@pinterest.com</email>
</author>
<published>2018-09-12T18:59:26+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=e52ef4848dc24a56b552183dfc384c519f59292d'/>
<id>e52ef4848dc24a56b552183dfc384c519f59292d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update getting_started.rst</title>
<updated>2017-11-15T16:41:13+00:00</updated>
<author>
<name>gs230937207</name>
<email>32325444+gs230937207@users.noreply.github.com</email>
</author>
<published>2017-11-15T16:41:13+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/pymemcache.git/commit/?id=d8c60e10a99bcb91694231f9c3b8a7e9d8f90f31'/>
<id>d8c60e10a99bcb91694231f9c3b8a7e9d8f90f31</id>
<content type='text'>
With python3 (3.5 here) json_deserializer receives the values as bytes. 

Disclaimer: I am a python beginner, so if there is another way to achieve the same result please let me know.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With python3 (3.5 here) json_deserializer receives the values as bytes. 

Disclaimer: I am a python beginner, so if there is another way to achieve the same result please let me know.</pre>
</div>
</content>
</entry>
</feed>
