# PyWavelets 0.3.0 Release Notes

Contents

- PyWavelets 0.3.0 Release Notes
  - New features
    - Test suite
    - n-D Inverse Discrete Wavelet Transform
    - Thresholding
  - Backwards incompatible changes
  - Other changes
  - Authors
    - Issues closed for v0.3.0
    - Pull requests for v0.3.0

PyWavelets 0.3.0 is the first release of the package in 3 years. It is the result of a significant effort of a growing development team to modernize the package, to provide Python 3.x support and to make a start with providing new features as well as improved performance. A 0.4.0 release will follow shortly, and will contain more significant new features as well as changes/deprecations to streamline the API.

This release requires Python 2.6, 2.7 or 3.3-3.5 and NumPy 1.6.2 or greater.

Highlights of this release include:

- Support for Python 3.x (>=3.3)
- Added a test suite (based on nose, coverage up to 61% so far)
- Maintenance work: C style complying to the Numpy style guide, improved templating system, more complete docstrings, pep8/pyflakes compliance, and more.

## New features

### Test suite

The test suite can be run with `nosetests pywt` or with:

    >>> import pywt
    >>> pywt.test()

### n-D Inverse Discrete Wavelet Transform

The function `pywt.idwtn`, which provides n-dimensional inverse DWT, has been added. It complements `idwt`, `idwt2` and `dwtn`.

### Thresholding

The function pywt.threshold has been added. It unifies the four thresholding functions that are still provided in the `pywt.thresholding` namespace.

## Backwards incompatible changes

None in this release.

## Other changes

Development has moved to a new repo. Everyone with an interest in wavelets is welcome to contribute!

Building wheels, building with `python setup.py develop` and many other standard ways to build and install PyWavelets are supported now.

## Authors

- Ankit Agrawal +
- François Boulogne +
- Ralf Gommers +
- David Menéndez Hurtado +
- Gregory R. Lee +
- David McInnis +
- Helder Oliveira +
- Filip Wasilewski
- Kai Wohlfahrt +

A total of 9 people contributed to this release. People with a “+” by their names contributed a patch for the first time. This list of names is automatically generated, and may not be fully complete.

### Issues closed for v0.3.0

- #3: Remove numerix compat layer
- #4: Add single code base Python 3 support
- #5: PEP8 issues
- #6: Migrate tests to nose
- #7: Expand test coverage without Matlab to a reasonable level
- #8: Replace custom C templates by Numpy’s templating system
- #9: Replace Cython templates by fused types
- #10: Replace use of __array_interface__ with Cython’s memoryviews
- #11: Format existing docstrings in numpydoc format.
- #12: Complete docstrings, they’re quite sparse right now
- #13: Reorganize source tree
- #24: doc/source/regression should be moved
- #27: Broken test: test_swt_decomposition
- #28: Install issue, no module tools.six
- #29: wp.update fails after removal of nodes
- #32: wp.update fails on 2D
- #34: Wavelet string attributes shouldn’t be bytes in Python 3
- #35: Re-enable float32 support
- #36: wavelet instance vs string
- #40: Test with Numpy 1.8rc1
- #45: demos should be updated and integrated in docs
- #60: Moving pywt forward faster
- #61: issues to address in moving towards 0.3.0
- #71: BUG: _pywt.downcoef always returns level=1 result

### Pull requests for v0.3.0

- #1: travis: check all branches + fix URL
- #17: [DOC] doctrings for multilevel functions
- #18: DOC: format -> functions.py
- #20: MAINT: remove unnecessary zero() copy()
- #21: Doc wavelet_packets
- #22: Minor doc fixes
- #25: TEST: remove useless functions and use numpy instead
- #26: Merge most recent work
- #30: Adding test for wp.rst
- #41: Change to Numpy templating system
- #43: MAINT: update six.py to not use lazy loading.
- #49: Taking on API Issues
- #50: Add idwtn
- #53: readme updated with info related to Py3 version
- #63: Remove six
- #65: Thresholding
- #70: MAINT: PEP8 fixes
- #72: BUG: fix _downcoef for level > 1
- #73: MAINT: documentation and metadata update for repo fork
- #74: STY: fix pep8/pyflakes issues
- #77: MAINT: raise ValueError if data given to dwt or idwt is not 1D…