What's new in bigfloat 0.3.0a2?
===============================


What's new in bigfloat 0.3.0a1?
===============================


Prerequisites
-------------

- For now, Python 2.7 and MPFR version >= 3.0 are required.  Support for earlier
  versions of Python is planned.  Support for MPFR 2.x will probably not be
  added.


Library
-------

- Major rewrite and restructuring of the core code.  The core now uses Cython
  rather than ctypes.

- mpfr module now separately available as an extension type, with semantics very close
  to the Mpfr library.

- Added bigfloat support for new rounding mode MPFR_RNDA (round away from zero).

- Rounding modes are now represented as named integers (instances of
  RoundingMode, an int subclass), rather than strings.  This allows them to be passed
  directly to Mpfr functions.

- Fixed a bug that meant old context wasn't restored when changing exponents
  with one valid exponent and one invalid. (eminmax)

- Many more docstrings than originally; better function signatures.

- Restructured bigfloat package: mpfr wrapper module is now bigfloat.mpfr,
  context class and related functions are in bigfloat.context, rounding modes
  are defined in bigfloat.rounding_modes, and the main BigFloat type is defined
  in bigfloat.core.  Everything is importable directory from bigfloat, as
  before.


Documentation
-------------

- Most of the documentation is now generated automatically using Sphinx's autodoc extension.


What's new in bigfloat 0.2.1?
=============================

Library
-------

- Simplify weakref callback scheme used to ensure BigFloat instances
  are freed properly.

- Make sure all python files in distribution have the LGPL header.


What's new in bigfloat 0.2?
===========================

Library
-------

- The setup.py file no longer attempts to locate the MPFR library at
  install time.  The configuration file still exists, and can be edited
  to give a hard-coded location.  Alternatively, ctypes should find the
  library if it's within the usual library search paths.  (If not, it
  might be necessary to set LD_LIBRARY_PATH or DYLD_LIBRARY_PATH.)
  
- Use a weakref callback to ensure mpfr_clear gets called, instead of
  relying on __del__.

- Make bigfloat compatible with versions of MPFR as far back as MPFR 2.3.0

- Relicense under LGPL, since this package might be considered a
  derived work of MPFR.


Tests
-----

- Skip the hashing consistency tests (those that test whether hash(n)
  == hash(BigFloat(n) for integers n) on Python 2.5.  In rare cases,
  this equality fails with Python 2.5, and this is awkward to fix.  If
  this affects you, upgrade to Python 2.6 or avoid mixing BigFloat
  instances with ints in sets or dictionary keys.


What's new in bigfloat 0.1.2?
=============================

Library
-------

- Make Context objects hashable.

Documentation
-------------

- Add 'where to get it' section to the documentation, pointing both
  to the PyPI page and the bitbucket source.

- Expand installation information in documentation.

Packaging/distribution
----------------------

- Include html documentation in distribution, in docs directory.

- Include INSTALL and CHANGELOG files in distribution.

- Make sure the bigfloat_config.py file ends up in the top-level
  package directory.

- Add /usr/lib{32,64} and /usr/local/lib{32,64} to default search
  paths in setup.py.
