Change history

PyEPR 0.8.2 (03/08/2014)

  • fixed segfault caused by incorrect access to epr.Dataset.description string in case of closed products
  • fixed a memory leak in epr.Raster (closes gh-10)
  • the size parameters (src_width and src_height) in epr.Band.create_compatible_raster() are now optional. By default a epr.Raster with the same size of the scene is created
  • the test suite have been improved
  • improved the NDVI computation example
  • updates sphinx config
  • small clarification in the Installation section of the User Manual.
  • EPR C API (version bundled with the official source tar-ball)
    • in case of error always free resources before setting the error code. This avoids error shadowing in some cases.
    • fixed a bug that caused reading of the incorrect portion of data in case of mirrored annotation datasets (closes gh-9)
    • fixed a bug that caused incorrect data sub-sampling in case of mirrored datasets

PyEPR 0.8.1 (07/09/2013)

  • fixed an important bug in the error checking code introduced in previous release (closes gh-8)
  • fixed the NDVI example
  • no more display link URL in footnotes of the PDF User Manual

PyEPR 0.8 (07/09/2013)

  • now the epr.Product objects have a epr.Product.close() method that can be used to explicitly close products without relying on the garbage collector behaviour (closes gh-7)
  • new epr.Product.closed (read-only) attribute that can be used to check if a epr.Product has been closed
  • the Product class now supports context management so they can be used in with statements
  • added entries for epr.__version__ and epr.__revision__ in the reference manual
  • the epr.__revision__ module attribute is now deprecated
  • some cythonization warnings have been fixed
  • several small improvements to the documentation

PyEPR 0.7.1 (19/08/2013)

  • fixed potential issues with conversion from python strings to char*
  • new snapshot of the EPR C API sources (2.3dev):
    • the size of the record tables has been fixed
    • the EPR_NUM_PRODUCT_TABLES has been fixed
    • fixed a missing prototype
    • several GCC warnings has been silenced
    • additional checks on return codes
    • now and error is raised when an invalid flag name is used
  • better factorization of Python 3 specific code
  • use the CLOUD flag instead of BRIGHT in unit tests
  • added function/method signature to all doc-strings for better interactive help
  • several improvements to the documentation:
    • updated the README.txt file to mention EPR C API sourced inclusion in the PyEPR 0.7 (and lates) source tar-ball
    • small fix in the installation instructions: the pip tool does not have a “–prefix” parameter
    • always use the python3 syntax for the print function in all examples in the documentation
    • links to older (and dev) versions of the documentation have been added in the man page of the HTML doc
    • removed date form the doc meta-data. The documentation build date is reported in the front page of the LaTeX (PDF) doc and, starting from this release, in the footer of the HTML doc.
    • the Ohloh widget has been added in the sidebar of the HTML doc
    • improved the regexp for detecting the SW version in the :file`setup.py` script
    • formatting

PyEPR 0.7 (04/08/2013)

  • more detailed error messages in case of open failures

  • new sphinx theme for the HTML documentation

  • Travis-CI has been set-up for the project

  • now the source tar-ball also includes a copy of the EPR C API sources so that no external C library is required to build PyEPR.

    This features also makes it easier to install PyEPR using pip.

    The user can still guild PyEPR against a system version of the ERP-API library simply using the --epr-api-src option of the setup.py script with “None”” as value.

    The ERP C API included in the source tar-ball is version 2.3dev-pyepr062, a development and patched version that allows the following enhancements.

    • support for ERS products in ENVISAT format
    • support for ASAR products generated with the new ASAR SW version 6.02 (ref. doc. PO-RS-MDA-GS-2009_4/C
    • fix incorrect reading of “incident_angle” bands (closes gh-6). The issue is in the EPR C API.

PyEPR 0.6.1 (26/04/2012)

  • fix compatibility with cython 0.16
  • added a new option to the setup script (--epr-api-src) to build PyEPR using the EPR-API C sources

PyEPR 0.6 (12/08/2011)

  • full support for Python 3
  • improved code highligh in the documentation
  • depend from cython >= 0.13 instead of cython >= 0.14.1. Cythonizing epr.pyx with Python 3 requires cython >= 0.15

PyEPR 0.5 (25/04/2011)

  • stop using PyFile_AsFile() that is no more available in Python 3
  • now documentation uses intersphinx capabilities
  • code examples added to documentation
  • tutorials added to documentation
  • the LICENSE.txt file is now included in the source distribution
  • the cython construct with nogil is now used instead of calling Py_BEGIN_ALLOW_THREADS() and Py_END_ALLOW_THREADS() directly
  • dropped old versions of cython; now cython 0.14.1 or newer is required
  • suppressed several constness related warnings

PyEPR 0.4 (10/04/2011)

  • fixed a bug in the epr.Product.__str__(), Dataset.__str__() and erp.Band.__repr__() methods (bad formatting)
  • fixed epr.Field.get_elems() method for char and uchar data types
  • implemented epr.Product.read_bitmask_raster(), now the epr.Product API is complete
  • fixed segfault in epr.Field.get_unit() method when the field has no unit
  • a smaller dataset is now used for unit tests
  • a new tutorial section has been added to the user documentation

PyEPR 0.3 (01/04/2011)

PyEPR 0.2 (20/03/2011)

  • sphinx documentation added
  • added docstrings to all method and classes
  • renamed some method and parameter in order to avoid redundancies and have a more pythonic API
  • in case of null pointers a epr.EPRValueError is raised
  • improved C library shutdown management
  • introduced some utility methods to epr.Product and epr.Record classes

PyEPR 0.1 (09/03/2011)

Initial release