Changelog

0.8.0

Package:

  • Improved test coverage.

  • Improved style and linting by revising and reducing global message disables (#224, #231, #233).

  • Ensured numpy=2.0 support (#234).

  • Removed experimental and untested code (#40, #239).

New/Updated functionality:

  • Extended Caching to RecurrenceNetwork and child classes as well as Surrogates. (#236).

  • Revised API of Surrogates to conform to OO structure assumed by Cached. (#236).

Documentation:

  • Removed malfunctioning links from Introduction (369b086).

  • Moved tutorial notebooks into docs, dropped nbsphinx-link dependency (c54102e).

  • Added EventSeriesClimateNetwork to API documentation (#232).

  • Removed outdated MathJax path for correct math display (0dd133c).

Bug fixes:

  • Fixed unnoticed bug in SpatialNetwork.{in|out}average_link_distance() (6b40587).

  • Substituted deprecated shorthand scipy.sparse.*_matrix.A for scipy>=1.14 compatibility (1d96e58).

  • Substituted variable name I in C code, which might interfere with C’s own macro for complex numbers (#225, #226).

  • Fixed setup of Travis-CI on Windows builds (#237).

0.7.0

Package:

  • Migrated to PEP 517/518 package format (a6c4c83).

  • Added full Windows support (#159, #160).

  • Reestablished CI on Linux (#191, #192) and added macOS and Windows (#214).

  • Improved test coverage.

  • Discontinued Python 3.7 support (4cf6969).

  • Replaced optional dependecy netcdf4 with h5netcdf (cd8ee00, #12, #210).

  • Replaced outdated progressbar with tqdm (#202).

Documentation:

New/Updated functionality:

  • Generalized spatial and interacting network analysis (#131): added SpatialNetwork class, added Watts-Strogatz model to Network, added new metrics to RecurrencePlot, CoupledClimateNetwork and InteractingNetworks.

  • Added EventSeries and EventSeriesClimateNetwork classes (#156).

  • Extended n.s.i. measures in Network with directed and weighted versions (#153).

  • Replaced MapPlots class with simplified MapPlot based on Cartopy (#174, #203).

Extensions:

Bug fixes:

  • Resolved indexing and typing problems in extensions (#126, #141, #145, #162, #163).

  • Overhauled the memoization/caching system (#124, #148, #219).

  • Shifted the histogram index in RecurrencePlot line distributions (#166, #209).

  • Resolved numerous other issues related to inheritance and method overloading, deprecated APIs, etc. For a full list, see the release milestone.

0.6.1

  • Fixed some bugs and compatibility issues.

  • Improved test framework.

  • Added pyunicorn description paper reference to all code files.

0.6.0

  • Migrated from Python 2.7 to Python 3.7.

  • Completed transition from Weave to Cython.

  • Added Event Coincidence Analysis.

0.5.2

  • Updated test suite and CI.

0.5.1

  • Added reference to pyunicorn description paper published in the journal Chaos.

0.5.0

  • Substantial update of CouplingAnalysis.

  • New methods in RecurrenceNetwork: transitivity_dim_single_scale, local_clustering_dim_single_scale.

  • Renamed time-directed measures in VisibilityGraph: left/right -> retarded/advanced.

  • Improved documentation and extended publication list.

  • Began transition from Weave to Cython.

  • Added unit tests and improved Pylint compliance.

  • Set up continuous testing with Travis-CI.

  • Fixed some minor bugs.

0.4.1

  • Removed a whole lot of get_ s from the API. For example, Network.get_degree() is now Network.degree().

  • Fixed some minor bugs.

0.4.0

  • Restructured package (subpackages: core, climate, timeseries, funcnet, utils).

  • Removed dependencies: Pysparse, PyNio, progressbar.

  • Added a module for resistive networks.

  • Switched to tox for test suite management.

  • Ensured PEP8 and PyFlakes compliance.

0.3.2

  • Fixed some minor bugs.

  • Switched to Sphinx documentation system.

0.3.1

  • First public release of pyunicorn.