Releases: flatironinstitute/CaImAn
Releases · flatironinstitute/CaImAn
v1.11.3
v1.11.2
- Several fixes for 3d data handling (and ordering) from @ethanbb
- Added bokeh implementation of view_quilt (by @salehtahini)
- Logging refactoring - we now use a named logger so users can integrate caiman with their code but have seperate loglevels/configurations for their code and caiman’s. Also fixed incorrect docs on configuring logging while updating them with this change
- Bugfix for custom CAIMAN_DATA paths
- Fix incomplete earlier bugfix for #1326 (reported by @EmeEmu and @marberi)
- Small improvement to error handling in the (included but dated) caiman_gui.py script
- Adjust pins of peakutils to deal with upstream package coordination issues that broke caiman installs
- Several small cleanups/fixes while adjusting the above
v1.11.1
This is a small release:
- Pin tensorflow to less than 2.16 for now, because 2.16 changes their implementation of the keras API to 3.0 and redoes those namespaces
- Fix a bug that @rob-the-bot found
- Fixed a case where the wrong unpacking was called on a distributed compute object (thanks @ethanbb )
- Fix some cases where serialised NoneType values in a hdf5 file were being improperly unpacked (thanks @ethanbb )
- Editable source-based installs (which very few people are using) are better handled by caimanmanager, making this option have fewer steps for users
v.1.11.0
This release makes two disruptive changes, among others.
- If you use CLI demos, you'll find them to be totally reworked in this release to be more applike and driven by jsonfiles. This is intended to make them potentially usable without being edited.
- If you build other software that imports caiman, this release has more functions in the code that generate output files do so in the temp/ directory rather than leave them in a variety of random places. Not everything was changed; future releases will likely continue to increase tidiness on this front, so if you import caiman and need to know where files land, please reach out to [email protected] if you want a heads-up or to make requests/suggestions. Eventually the codebase will likely have per-run directories and have standard file outputs that most functions produce, hopefully making it much easier to wrap caiman (either as a library or as an external call)
The codebase is moving towards the standard that if the user requests something be put in a file with a particular name:
- If that name contains a path, it will be put exactly in that path, meeting the request
- If that name does not contain a path, the codebase will find a suitable place to put it and return or store a value somewhere indicating where it was put. Right now this is always caiman_data/temp/ but in the future after we have per-run directories, there may be further distinction between logs, temporary files, and output files (we have not committed to specifics yet, but intend to move in this direction)
The full changelist:
- Significant SBX format reworking, tiff format fixes from ethanbb
- Bugfix in detecting N5 and ZARR files from marberi
- Removed support for the oldest (pre-hdf5) format of MAT files, better messages for that code in general
- Full refactoring of most CLI demos to be applications, driven by JSON, to be usable without code modification. Added a README
- CLI demos have some long-overdue fixes to display their results correctly. Note that demo_behaviour requires particular builds of OpenCV (that are built against Qt6 rather than standalone).
- Changes across the codebase to have it less often produce files all over the place during a run
- Removed some dead code and entries in data structures throughout the codebase (including some that used the now nonsupported spams library as a dynamic import). caiman.behavior.extract_components() no longer supports the method_factorization value of dict_learn
- Movie.save() now always returns the filename regardless of filetype; this is now preferred because if one doesn’t include a path it will save in temp/ and the caller can use the return value to know how to reopen it later
- environment.yml better handles alternate distributions of conda (like miniforge, which we still don’t recommended but it now more likely to work)
- Ensure that caimanmanager will not copy pycache directories into caiman_data
- Miscellaneous small bugfixes
v1.10.9
v1.10.8
v1.10.7
v1.10.6
v1.10.5
For this release:
- CNMFParams has undergone a moderate refactoring to accept json serialisation, better catch use of the API that won't do anything, and to prefer taking input in forms that match the categorisation of different fields (a deprecation warning is in place for old "flat" inputs, which will be in place for a fairly long time until everything has had time to migrate). This also sets the stage for a revamp of the CLI demos which did not make it into this release
- Some documentation fixes on CNMFParams, some formerly-undocumented parameters have some docs
- Scanbox file support has been updated to handle modern files (user contribution: Ethan Blackwood)
- Documentation improvements (memory optimisations, contributors doc)
- pylab imports removed
- Recent changes to the scipy api handled
- Numerous bugfixes (including one with hdf5 encoding of strings)