Skip to content

Commit 3d8ca03

Browse files
author
Luke Bakken
committed
Release notes file
1 parent eabd694 commit 3d8ca03

File tree

1 file changed

+305
-0
lines changed

1 file changed

+305
-0
lines changed

Diff for: RELNOTES.md

+305
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,305 @@
1+
# Riak Python Client Release Notes
2+
3+
## 2.4.2 Patch Release - 2016-02-20
4+
5+
* [Fix SSL host name](https://github.com/basho/riak-python-client/pull/436)
6+
* [Use `riak-client-tools`](https://github.com/basho/riak-python-client/issues/434)
7+
8+
## 2.4.1 Patch Release - 2016-02-03
9+
10+
* [Riak TS: Millisecond precision](https://github.com/basho/riak-python-client/issues/430)
11+
* [Fix release process](https://github.com/basho/riak-python-client/issues/429)
12+
13+
## 2.4.0 Feature Release - 2016-01-13
14+
15+
This release enhances Riak Time Series functionality.
16+
17+
* [Encapsulate table description](https://github.com/basho/riak-python-client/pull/422)
18+
19+
## 2.3.0 Feature Release - 2015-12-14
20+
21+
Release 2.3.0 features support for new
22+
[time series](https://github.com/basho/riak-python-client/pull/416)
23+
functionality.
24+
25+
This is release retires support for Python 2.6.x but adds support for
26+
Python 3.5.x.
27+
28+
There are also many bugfixes and new enhancements:
29+
30+
* [Protocol buffers are now integrated into the Python Client]
31+
(https://github.com/basho/riak-python-client/pull/418)
32+
* [Support for Preflists and Write-Once bucket types]
33+
(https://github.com/basho/riak-python-client/pull/414)
34+
* [Support Riak 2.1.1]
35+
(https://github.com/basho/riak-python-client/pull/407)
36+
* [Native SSL support for Python 2.7.9+]
37+
(https://github.com/basho/riak-python-client/pull/397)
38+
39+
40+
## 2.2.0 Feature Release - 2014-12-18
41+
42+
Release 2.2.0 features support for
43+
[Python 3](https://github.com/basho/riak-python-client/pull/379),
44+
specifically 3.3 and 3.4. This version uses the native SSL security instead
45+
of [pyOpenSSL](http://pypi.python.org/pypi/pyOpenSSL) which is required
46+
for the Python 2 series.
47+
48+
This release also includes many bugfixes and enhancements, most
49+
notably:
50+
51+
* [Fixed an issue with the implementation of `Mapping.__iter__`]
52+
(https://github.com/basho/riak-python-client/pull/367)
53+
* [Test client certificate generation updated]
54+
(https://github.com/basho/riak-python-client/pull/373)
55+
* [Protocol Buffers had a socket.send issue]
56+
(https://github.com/basho/riak-python-client/pull/382)
57+
* [Support for bucket types in Map/Reduce jobs added]
58+
(https://github.com/basho/riak-python-client/pull/385)
59+
* [Race condition in `RiakBucket` creation fixed]
60+
(https://github.com/basho/riak-python-client/pull/386)
61+
* [Data Types can now be deleted]
62+
(https://github.com/basho/riak-python-client/pull/387)
63+
* [2i Range Queries with a zero end index now work]
64+
(https://github.com/basho/riak-python-client/pull/388)
65+
66+
67+
## 2.1.0 Feature Release - 2014-09-03
68+
69+
Release 2.1.0 features support for Riak 2.0 capabilities including:
70+
71+
* Bucket Types
72+
* Riak Data Types (CRDTs)
73+
* Search 2.0 (codename Yokozuna)
74+
* Security: SSL/TLS, Authentication, and Authorization
75+
76+
As a result of the new security features, the package now depends on
77+
[pyOpenSSL](http://pypi.python.org/pypi/pyOpenSSL) and will warn if
78+
your version of OpenSSL is too old.
79+
80+
This release also includes many bugfixes and enhancements, most
81+
notably:
82+
83+
* The default protocol is now 'pbc', not 'http'.
84+
* When used correctly, streaming requests no longer result in leaks
85+
from the connection pool.
86+
* The size of the multiget worker pool can be set when initializing
87+
the client.
88+
* Secondary index queries can now iterate over all pages in a query.
89+
* The number of times a request is retried after network failure is
90+
now configurable.
91+
* The additional request options `basic_quorum` and `notfound_ok` are
92+
now supported.
93+
94+
## 2.0.3 Patch Release - 2014-03-06
95+
96+
Release 2.0.3 includes support for 1.4.4's 2I regexp feature and fixes
97+
a few bugs:
98+
99+
* Docs generation now uses the version from the top-level package.
100+
* Some internal uses of the deprecated RiakClient.solr were removed.
101+
* More errors will be caught and propagated properly from multiget
102+
requests, preventing deadlocks on the caller side.
103+
104+
## 2.0.2 Patch release - 2013-11-18
105+
106+
Release 2.0.2 includes support for the 1.4.1+ "timeout" option on
107+
secondary index queries.
108+
109+
## 2.0.1 Patch release - 2013-08-28
110+
111+
Release 2.0.1 includes a minor compatibility fix for Python 2.6 and an
112+
updated README.
113+
114+
## 2.0.0 Feature Release - 2013-07-30
115+
116+
Release 2.0 is the culmination of many months of rearchitecting the
117+
client. Highlights:
118+
119+
* Automatic connection to multiple nodes, with request retries,
120+
through a thread-safe connection pool.
121+
* All Riak 1.3 and 1.4 features, including bucket properties,
122+
paginating and streaming secondary indexes, CRDT counters,
123+
client-specified timeouts, and more.
124+
* Cleaner, more Pythonic access to RiakObject and RiakBucket
125+
attributes, favoring properties over methods where possible.
126+
* Simpler representations of links (3-tuples) and index entries
127+
(2-tuples).
128+
* Streaming requests (keys, buckets, MapReduce, 2i) are now exposed as
129+
iterators.
130+
* Feature detection prevents sending requests to hosts that can't
131+
handle them.
132+
* Better handling of siblings -- you don't have to request them
133+
individually anymore -- and registrable resolver functions.
134+
* A new `multiget` operation that fetches a collection of keys using
135+
a pool background threads.
136+
* A more resilient, repeatable test suite that generates buckets and
137+
key names that are essentially random.
138+
* Last but not least, a brand new, more detailed documentation site!
139+
140+
Other features:
141+
142+
* Added an encoder/decoder pair to support `text/plain`.
143+
* The Travis CI build will now install the latest Riak to run the
144+
suite against.
145+
146+
Other bugfixes:
147+
148+
* The `charset` metadata can now be received via the `Content-Type`
149+
header on HTTP.
150+
* Objects with empty keys and buckets with empty names cannot be
151+
created or accessed, as they are unaddressable over HTTP.
152+
* Performance and compatibility of `TestServer` was improved.
153+
* Non-ASCII request bodies are better supported on HTTP.
154+
* Enabling and disabling search indexing on a bucket now uses the
155+
`search` bucket property.
156+
157+
## 1.5.2 Patch Release - 2013-01-31
158+
159+
Release 1.5.2 fixes some bugs and adds HTTPS/SSL support.
160+
161+
* Added support for HTTPS.
162+
* Fixed writing of the `app.config` for the `TestServer`.
163+
* Reorganized the tests into multiple files and cases.
164+
* Some methods on `RiakObject` were made private where appropriate.
165+
* The version comparison used in feature detection was loosened to
166+
support pre-release versions of Riak.
167+
* Prevent fetching the `protobuf` package from Google Code.
168+
* Prefer `simplejson` over `json` when present.
169+
170+
## 1.5.1 Patch Release - 2012-10-24
171+
172+
Release 1.5.1 fixes one bug and some documentation errors.
173+
174+
* Fix bug where `http_status` is used instead of `http_code`.
175+
* Fix documentation of `RiakMapReduce.index` method.
176+
* Fix documentation of `RiakClient.__init__` method.
177+
178+
## 1.5.0 Feature Release - 2012-08-29
179+
180+
Release 1.5.0 is a feature release that supports Riak 1.2.
181+
182+
Noteworthy features:
183+
184+
* Riak 1.2 features are now supported, including Search and 2I queries
185+
over Protocol Buffers transport. The Protocol Buffers message
186+
definitions now exist as a separate package, available on
187+
[PyPi](http://pypi.python.org/pypi/riak_pb/1.2.0).
188+
189+
**NOTE:** The return value of search queries over HTTP and MapReduce
190+
were changed to be compatible with the results returned from the
191+
Protocol Buffers interface.
192+
* The client will use a version-based feature detection scheme to
193+
enable or disable various features, including the new Riak 1.2
194+
features. This enables compatibility with older nodes during a
195+
rolling upgrade, or usage of the newer client with older clusters.
196+
197+
Noteworthy bugfixes:
198+
199+
* The code formatting and style was adjusted to fit PEP8 standards.
200+
* All classes in the package are now "new-style".
201+
* The PW accessor methods on RiakClient now get and set the right
202+
instance variable.
203+
* Various fixes were made to the TestServer and it will throw an
204+
exception when it fails to start.
205+
206+
## 1.4.1 Patch Release - 2012-06-19
207+
208+
Noteworthy features:
209+
210+
* New Riak objects support Riak-created random keys
211+
212+
Noteworthy bugfixes:
213+
214+
* Map Reduce queries now use "application/json" as the Content-Type
215+
216+
## 1.4.0 Feature Release - 2012-03-30
217+
218+
Release 1.4.0 is a feature release comprising over 117 individual
219+
commits.
220+
221+
Noteworthy features:
222+
223+
* Python 2.6 and 2.7 are supported. On 2.6, the unittest2 package is
224+
required to run the test suite.
225+
* Google's official protobuf package (2.4.1 or later) is now a
226+
dependency. The package from downloads.basho.com/support is no
227+
longer necessary.
228+
* Travis-CI is enabled on the client. Go to
229+
http://travis-ci.org/basho/riak-python-client for build status.
230+
* Riak 1.0+ features, namely secondary indexes and primary quora
231+
(PR/PW), are supported.
232+
* `if_none_match` is a valid request option when storing objects, and
233+
will prevent the write when set to `True` if the key already exists.
234+
* Links can be set wholesale using the `set_links()` method.
235+
* Transport-specific options can be passed through when creating a
236+
`Client` object.
237+
* A connection manager was added that will (when manipulated manually)
238+
allow connections to multiple Riak nodes. This will be fully
239+
integrated in a future release.
240+
241+
Noteworthy bugfixes:
242+
243+
* Links now use the proper URL-encoding in HTTP headers, preventing
244+
problems with explosion from multiple encoding passes.
245+
* Many fixes were applied to make the Protocol Buffers transport more
246+
stable.
247+
* `RiakObject.get_content_type()` will behave properly when content
248+
type is not set.
249+
* Deprecated transport classes were removed since their functionality
250+
had folded into the primary transports.
251+
* A temporary fix was made for unicode bucket/key names which raises
252+
an error when they are used and cannot be coerced to ASCII.
253+
* The Erlang sources/beams for the TestServer are now included in the
254+
package.
255+
* MapReduce failures will now produce a more useful error message and
256+
be handled properly when no results are returned.
257+
258+
There are lots of other great fixes from our wonderful
259+
community. [Check them out!](https://github.com/basho/riak-python-client/compare/1.3.0...1.4.0)
260+
261+
## 1.3.0 Feature Release - 2011-08-04
262+
263+
Release 1.3.0 is a feature release bringing a slew of updates.
264+
265+
Noteworthy features:
266+
267+
* #37: Support for the Riak Search HTTP Interface (Mathias Meyer)
268+
* #36: Support to store large files in Luwak (Mathias Meyer)
269+
* #35: Convenience methods to enable, disable and check search indexing
270+
on Riak buckets (Mathias Meyer)
271+
* #34: Port of Ripple's test server to Python, allows faster testing
272+
thanks to an in-memory Riak instance (Mathias Meyer)
273+
* #31: New transports: A Protocol Buffers connection cache
274+
(riak.transports.pbc.RiakPbcCacheTransport), a transport to reuse the
275+
underlying TCP connections by setting SO_REUSEADDR on the socket
276+
(riak.transports.http.RiakHttpReuseTransport), and one that tries to
277+
reuse connections to the same host (riak.transports.http.RiakHttpPoolTransport)
278+
(Gilles Devaux)
279+
280+
Fixes:
281+
282+
* #33: Respect maximum link header size when using HTTP. Link header is now
283+
split up into multiple headers when it exceeds the maximum size of 8192 bytes.
284+
(Mathias Meyer)
285+
* #41: Connections potentially not returned to the protocol buffers connection
286+
pool. (Reid Draper)
287+
* #42: Reset protocol buffer connection up on connection error (Brett Hoerner)
288+
289+
## 1.2.2 Patch Release - 2011-06-22
290+
291+
Release 1.2.2 is a minor patch release.
292+
293+
Noteworthy fixes and improvements:
294+
295+
* #29: Add an nicer API for using key filters with MapReduce (Eric Moritz)
296+
* #13 and #24: Let Riak generate a key when none is specified (Mark Erdmann)
297+
* #28: Function aliases for the Riak built-in MapReduce functions (Eric Moritz)
298+
* #20: Add a convenience method to create Riak object directly from file (Ana Nelson)
299+
* #16: Support return\_body parameter when creating a new object (Stefan Praszalowicz, Andy Gross)
300+
* #17: Storing an object fails when it doesn't exist in Riak (Eric Moritz, Andy Gross)
301+
* #18: Ensure that a default content type is set when none specified (Andy Gross)
302+
* #22: Fix user meta data support (Mathias Meyer)
303+
* #23: Fix links to the wiki (Mikhail Sobolev)
304+
* #25: Enable support for code coverage when running tests (Mikhail Sobolev)
305+
* #26: Debian packaging (Dmitry Rozhkov)

0 commit comments

Comments
 (0)