Skip to content
This repository has been archived by the owner on Jun 18, 2023. It is now read-only.

Latest commit

 

History

History
232 lines (160 loc) · 13.1 KB

CHANGELOG.rst

File metadata and controls

232 lines (160 loc) · 13.1 KB

Change Log

All notable changes will appear in this log that begins with the release of v0.5.0. Changes are categorized into "Added", "Changed", "Fixed", and "Removed". To see a comparison between releases on Github, click or follow the release version number URL.

For information on the style of this change log, see keepachangelog.com.

v0.7.0 - 2017-09-28

This release is basically v0.6.4, but the changes warrant a minor release because the configuration file examples have changed to correctly specify the green/swir1 bands (used by CCDC's "Tmask"). This also marks the first minor release in a long time.

Fixed

v0.6.4 - 2017-09-28

Fixed

Changed

  • Updates to documentation and deployment.

v0.6.3 - 2017-07-24

Updates to deployment information (e.g., conda environment.yaml) and some fixes for Python 3.

v0.6.2 - 2017-01-18

Version v0.6.x will be backward patched for any bug fixes (for an undetermined amount of time) as version v0.7.0 will introduce backwards incompatible changes in order to enable incorporation of data from multiple sensors and to better link time series models together in a cohesive pipeline.

Fixed

v0.6.1 - 2016-05-12

Version v0.6.x will be backward patched for any bug fixes (for an undetermined amount of time) as version v0.7.0 will introduce backwards incompatible changes in order to enable incorporation of data from multiple sensors and to better link time series models together in a cohesive pipeline.

Fixed

  • CCDCesque: Fixed case in which bands not used as "test indices" would not have time series models estimated (i.e., no coef or rmse) if the time series ends immediately after training #88
  • RLM: Fixed divide by zero error when n == p (number of observations equals number of parameters estimated)

v0.6.0 - 2016-04-22

Milestone v0.6.0

Changed

  • CCDCesque: Optimize algorithm implementation. Performance estimates show 2x speed gain #70
  • CLI: Improve yatsm pixel by enabling the plotting of multiple refit model estimates on the same graph (commit)
  • CLI: Improve yatsm pixel --embed option (commit)
  • CLI: Add --verbose-yatsm to main yatsm command so it works with all programs running a YATSM algorithm (commit)
  • Use setuptools entry points to point YATSM to available time series algorithms (commit)

Added

  • Expose stay_regularized for segment refitting steps #74
  • Add capability to specify fit section for statistical estimators that are passed to the fit method of the estimator #61
  • CCDCesque: allow specification of min_rmse per band using an array or just one value for all bands #75
  • Add submodule yatsm.regression.diagnostics for regression diagostics, including RMSE (commit)
  • Add new module yatsm.accel with decorator (try_jit) that applies numba.jit to functions only if numba is available #70
  • Apply yatsm.accel.try_jit to calculation of yatsm.regression.diagnostics.rmse, yatsm.regression.robust_fit.RLM, and others #70
  • Benchmark algorithm performance across project history using Airspeed Velocity #71
  • Improve clean target in package's setup.py so it deletes built estimator pickles and .c/.so built with Cython (commit)
  • Increase test coverage from ~20% to ~80%
  • Added documentation to Read the Docs

Fixed

  • CCDCesque: Fix bug in calculation of end attribute for last timeseries record #72
  • CCDCesque: Fix bug in parsing of test_indices if user doesn't supply any #73
  • "Packaged" estimator pickles are built on installation of YATSM so they will work with user versions of libraries (commit)
  • Fix DeprecationWarnings with scikit-learn>=0.17.0 (commit)
  • yatsm.regression.robust_fit.RLM: Fix a bug caused by dividing by zero. This bug only occurs when the number of observations in a time series segment is approximately equal to the number of parameters (n ~= k) #86
  • Fix NumPy deprecation warnings and improve yatsm changemap num performance #83

v0.5.5 - 2015-11-24

Milestone v0.5.5

Added

  • Abort if config file 'n_bands' looks incorrect (commit)

Changed

  • Reorganize long term mean phenology code into generic phenology related submodule.
  • Reorganize changemap and map logic to separate module #60

Fixed

  • Fix bug with spline EVI prediction in LTM phenology module when data include last day in leap year (366) #56
  • Fix bug with phenology half-max calculation that created erroneous transition dates #58
  • Fix bug with phenology calculation for 100% masked data pixels #54
  • Fix yatsm pixel to correctly plot designs that include categorical variables (commit)
  • Fix passing of a list of dataset min/max values within config files instead of 1 number #59
  • Add missing phenology module to setup.py (commit)

v0.5.4 - 2015-10-28

Milestone v0.5.4

Fixed

  • Fix multiple bugs encountered when running phenology estimates #49

Changed

  • Metadata from yatsm line runs are now stored in metadata sub-file of NumPy compressed saved files #53
  • Algorithm configurations must now declare subsections that match estimator methods (e.g., init and fit) #52
  • Refactored yatsm.phenology to make LongTermMeanPhenology estimator follow scikit-learn API #50

Added

  • Add --num_threads option to yatsm CLI. This argument sets various environment variables (e.g., OPENBLAS_NUM_THREADS or MKL_NUM_THREADS) before beginning computation to set or limit multithreaded linear algebra calculations within NumPy #51
  • Add this changelog!

v0.5.3 - 2015-10-20

Milestone v0.5.3

Changed

  • Update configuration file parsing for classifiers to use yaml. Users need to update their classifier configuration files to use this new format.

Fixed

  • Fixed bug when running on real datasets with 100% missing data in timeseries (e.g., in scene corners) #47 #48
  • Fix yatsm train and yatsm classify for v0.5.0+ releases

Removed

  • Deleted intermediate "helper" classes that were used to type-check ini configuration files

v0.5.2 - 2015-10-09

Milestone v0.5.2

Fixed

  • Catch TSLengthException so yatsm line can continue running #43
  • Allow refit estimators to be from pre-packaged, distributed pickles #44
  • Remove references to old variable names in yatsm.algorithms.postprocess #45

v0.5.1 - 2015-10-06

Milestone v0.5.1

Added

  • Use environment variables in configuration files #42
  • Pre-package a set of pickled estimators using package_data from setuptools #41

v0.5.0 - 2015-09-14

Milestone v0.5.0

Very backwards incompatible release required to redefine project objectives and use better technology (click & YAML) for command line interface.

Changed

  • Command line interface uses click #28
  • Redefine YATSM as baseclass and rename CCDC implementation to CCDCesque #29
  • Specify prediction method using serialized "pickle" instances of scikit-learn compatible estimators #26
  • Configuration file now uses YAML format for better organization and more sustainable parsing #30
  • Refactor robust fit into more generalized refit step. User can generate additional [prefix]_coef and [prefix]_rmse results using specified estimators #33
  • Tests now use py.test fixtures for better code reuse
  • Reorganize requirements.txt organization and documentation

Added

  • Add environment.yaml for creating environments within the Anaconda distribution using conda