Permalink
Browse files

Update README version compat, dev docs

  • Loading branch information...
1 parent c482e6b commit a5b317c6727c5220a1e776d7fe4f726d55429dcc @thobbs thobbs committed Jul 17, 2012
Showing with 12 additions and 9 deletions.
  1. +1 −2 README.mkd
  2. +11 −7 doc/development.rst
View
@@ -10,8 +10,7 @@ with the following features:
* A batch interface
* A class for mapping classes to Cassandra column families
-The latest release is fully compatible with Cassandra 0.8 and 1.0, and
-compatible with the data API of 0.7.
+The latest release is fully compatible with Cassandra 0.7, 0.8, 1.0, and 1.1.
*pycassa* is open source under the [MIT license](http://www.opensource.org/licenses/mit-license.php).
View
@@ -4,9 +4,13 @@ Development
New thrift API
--------------
-pycassa includes Cassandra's Python Thrift API in various sub-packages under
-`pycassa.cassandra`. With new versions of Cassandra there's new versions of
-the API and new Python files need to be generated.
+pycassa includes Cassandra's Python Thrift API in `pycassa.cassandra`.
+Since Cassandra 1.1.0, the generated Thrift definitions are fully backwards
+compatible, allowing you to use attributes that have been deprecated or
+removed in recent versions of Cassandra. So, even though the code is
+generated from a Cassandra 1.1.0 definition, you can use the resulting code
+with 0.7 and still have full access to attributes that were removed after
+0.7, such as the memtable flush thresholds.
The following explains the procedure using Mac OS Lion as an example. Other
Linux and BSD versions should work in similar ways. Of course you need to
@@ -62,10 +66,10 @@ We are only interested in the generated Python modules::
ls thrift/gen-py/cassandra/*.py
-These should be copied into a new sub-package under `pycassa/cassandra` like
-`c11`. There's a couple more places that need to be updated in `setup.py`,
-`pycassa/connection.py`, `cassandra/constants.py` and `cassandra/ttypes.py`.
-Don't forget to review the documentation either.
+These should replace the python files in `pycassa/cassandra`, allowing you
+to use the latest Thrift methods and object definitions, such as CfDef (which
+controls what attributes you may set when creating or updating a column
+family). Don't forget to review the documentation.
Make sure you run the tests, especially if adjusting the default protocol
version or introducing backwards incompatible API changes.

0 comments on commit a5b317c

Please sign in to comment.