Skip to content

Releases: ComputationalCryoEM/ASPIRE-Python

v0.11.0

27 Apr 16:56
4d8a136

Choose a tag to compare

ASPIRE v0.11.0 is minor release, adding several scientific and API changes.

This release provides the following features:

  • Extensible ClassAvgSource framework
  • Ab-initio modeling for Cn symmetry (CLSymmetryCn)
  • FLE Basis (FLEBasis2d)
  • IndexedSource for source slicing and remapping
  • Immutable source API migration
  • Image and Volume API cleanup (return types)
  • asnumpy as immutable views
  • Additional RELION 3.1 STAR file support
  • SNR Estimation and Simulation utilities
  • Improved whiten syntax
  • Immutable Source API

Documentation and Logging:

  • Tutorial Gallery restructuring
  • Lecture Feature Demo updates
  • Class Averaging API documentation and UML
  • Introductory API documentation and UML (gallery)
  • Continued filtering of log messages
  • CTF forward model validation and tutorial

Bug fixes:

  • Redundant Image conversion bug in denoised_src
  • Fixed eval_coords clustering (adjusted Rand score)
  • Negative Image index slicing (wraparound bug)
  • Polar Fourier Row Major cleanup

Systems/CI Updates:

  • conda BLAS accelerated numerical backends (mkl, openblas, accelerate)
  • Relaxed pip version requirements
  • Long running test suite on review-ready
  • CI documentation and gallery build on push
  • Windows CI patches
  • Resolve deprecation warnings (pandas, scipy)
  • Partial removal of parameterized_class
  • black 23.1.0 updates

v0.10.1

06 Jan 19:19
97f579e

Choose a tag to compare

ASPIRE v0.10.1 is a patch release focused on adding several API improvements, bug fixes, and CI updates.

This release provides the following features:

  • Synthetic volume generators (Legacy and compact Asymmetric, Cn, Dn, T, O)
  • confuse based ASPIRE config
  • Multi dimensional stack axis for Image and Volume
  • Parallel and batched BFR and BFSR alignment
  • Scale colorbar for Image.show utilities
  • Implement and check top level imports (import aspire)
  • Restores ability to use cufinufft via config
  • NoiseAdder framework and updates

Documentation and Logging:

  • User configuration tutorial
  • Dramatically reduced console log spam
  • Replaced some logging with tqdm progress bars
  • Support user/runtime logger and tqdm configuration
  • Updated simulation docstring
  • Docstring formatting
  • Pipeline demo gallery

Bug Fixes and Cleanup:

  • Updates rotation convention to be counter-clockwise
  • Real coefficient rotations
  • Normalize background dtype
  • Fourier Bessel zero finding cleanup
  • im_translate and preprocessing cleanup/deprecation
  • CTFEstimator and voltage_to_wavelength unit fixes
  • CTF starfile output column name
  • Unit test fixes for averagers
  • Pytest parallel processing limits
  • Added missing paramatrized test cases
  • Gaussian 2D and 3D util cleanup
  • Unified transpose and flip for Volume and Image
  • covar2d ells mask bug fix
  • Consistently use recent about_axis() and Volume.load()
  • ImageSource.save() dict return
  • Remove Micrograph and MrcStack in favor of ImageSource
  • Consistent use of fft module
  • Dtype updates (Basis, Simulation, Volume, CLOrient3D, nufft)
  • Filter indices bug fix
  • Migration to Image.Resolution from Image.res (via DeprecationWarning)
  • Workaround for scipy==v0.10.0 2D interpolation
  • importlib resources updates

Systems/CI Updates:

  • GPU CI
  • Daily documentation build testing (develop)
  • CI config and additional logging
  • Disable ray on Azure for OSX and Windows
  • Adds pytest-xdist plugin for developers
  • Support building docs without running gallery
  • Updates for latest scikit-learn release
  • Began migration towards pure pytests
  • tox v4 support
  • Azure OSX 12 updates
  • Github actions v3/v4 updates

v0.10.0

27 Oct 19:47
d08a9f7

Choose a tag to compare

ASPIRE v0.10.0 is large release adding a wide range of features and fixes.

This release provides the following features:

  • Common Lines Method for C3/C4 Symmetry (CLSymmetryC3C4, experimental)
  • Image Accessor API for ImageSource
  • Parallelized BFSReddyChatterjiAverager2D and ReddyChatterjiAverager2D class averaging image aligners
  • Support Nonsequential ImageSource.images
  • Improved RIRClass2D batching
  • crop_pad_3d
  • Replace 2D Downsample algorithm (includes 1-pixel scaling bugfix)
  • ClassSelector API and RandomClassSelector (now randomized as default)
  • gaussian_* helper functions
  • Filter.sign method
  • Integrate CTF estimator with CoordinateSource

Bug fixes:

  • Improved dtype passthrough
  • Volume.flip default axis change
  • Rectangular micrograph axes
  • Fix crash in BatchedRotCov2D when invoked without CTF details
  • Volume.dtype mismatches and checks

Systems/CI Updates:

  • Refresh Azure pipeline Ubuntu images
  • Deprecate Azure OSX 10.15 CI in favor of OSX 11

Cleanup and Documentation Updates:

  • Logical (F)FBBasis3D tests
  • Documentation format cleanup (fixes broken parsing)
  • Top level submodule imports (API improvement)
  • .rots ~> .rotations attribute cleanup
  • 3D Downsampling cleanup
  • Improved Getting Started page
  • Improved Gallery Tutorials and Experiments examples
  • Sphinx language patch
  • Implement lower bound checks for FSPCA components
  • Fourier-Bessel Mixin class (FBBasisMixin)
  • Resolve PIL package deprecations
  • Update ComplexPCA scikit workaround for upstream releases
  • Improve evaluate and evaluate_t API standards
  • Improve Zenodo affiliation integration

v0.9.2

02 Jun 16:04
1bff8d3

Choose a tag to compare

ASPIRE v0.9.2 is a patch release.

This release adds the following new features:

Bug fixes:

Resolves deprecation warning for PIL.
Patches ComplexPCA for newer sklearn.
Updates Zenodo references.

v0.9.1

15 Apr 17:45

Choose a tag to compare

ASPIRE v0.9.1 is a patch release.

This release adds the following new features:

  • crop_pad_2d() in aspire.utils.coor_trans

Bug fixes:

  • Some images appeared flipped by 180 degrees in Reddy Chatterji image registration.
  • Basis objects did not stop the user from expanding images that did not match the size of the basis.
  • ArrayImageSource should have integer filter indices.

Code cleanup:

  • Basis objects can be instantiated with an integer instead of a tuple when creating square or cubic bases.
  • More descriptive commenting and docstrings added to Bessel function zero-finding code.
  • Testing for Downsampling and Fourier-Bessel 2D basis that used to depend on hardcoded results and output files now instead test expected mathematical properties.
  • Improvements to the gallery section of the documentation page include grammar fixes, updates to the author page, and a consistent color map for all images in experiment demonstrations.

v0.9.0

23 Feb 19:09
6cb389e

Choose a tag to compare

ASPIRE v0.9.0 is a minor release, adding many scientific features and software improvements.

This release provides the following new features:

  • Adds simulated and experimental abinitio pipeline gallery experiments
  • Adds ImageSource subclasses supporting whole-micrograph/particle-coordinate sources
  • Refactor and add Cn symmetry to Gaussian blob volume generation
  • extract-particles preprocessing
  • Adds Reddy Chetterji based image registration
  • Refactors class averaging towards Averager2D framework
  • Volume .mrc loading and saving functions
  • Adds Volume projection gallery tutorial

Bug fixes:

  • FB3D and FFB3D fixes (norm legendre factorial and quadrature points)
  • cov2d shrinker formula
  • Redundant Whitening for Simulation sources
  • PolarBasis2D default initialization
  • Improve handling empty result sets in APPLE
  • Default cov2d noise estimation
  • cov2d denoising matrix normalization
  • RelionSource with a single image
  • DenoisedImageSource batching
  • CTF estimation CLI output_dir

Code Cleanup:

  • Standardize use of Rotation class
  • PSWF and FPSWF cleanup, minor performance improvements
  • Force finufft signals to be complex
  • Replace CTF estimation log files with STAR
  • Refactor and cleanup grid indexing
  • Remove APPLE settings from site configuration
  • Add APPLE settings as class and command line options
  • Removes orientation estimation settings from site configutation
  • Replace importlib_resources with importlib.resources
  • Deprecates ensure
  • Tutorial gallery updates
  • Updates code contributors
  • Minor logging and documentation improvements

Systems/CI Updates:

  • Roll default Python to 3.7
  • Deprecates Python 3.6
  • Adds Python 3.10
  • Update formatting to Black 22.1.0
  • Roll stable MacOS tests to 10.15 from 10.14

v0.8.1

05 Nov 13:11

Choose a tag to compare

ASPIRE v0.8.1 is an early patch release.

This release provides the following features:

  • New Sphinx-Gallery Documentation and Tutorial refresh
  • Aligner classes supporting simple 2D class average alignments
  • Conversion to GEMMI for starfile IO

Bug fixes:

  • Cov2D shrinker formulas
  • Cov2D noise variance estimation
  • Relion Source - mrcs singleton

Systems/CI Updates:

  • Ubuntu 18.04LTS Azure deprecation (now 20.04LTS)
  • Tox updates - py3.{6,7,8}-dev targets
  • Minor setup.py updates

Also beginning with this release ASPIRE-Python releases will begin being tracked by Zenado.
A persistent DOI will become published in the next release.

v0.8.0

21 Sep 12:43
4fdf77d

Choose a tag to compare

ASPIRE v0.8.0 adds the following scientific features:

  • Begin adding Class Averaging Components (experimental)
  • Adaptive Support Radius Calculations
  • Wavelet-based approximate Earth-Mover's Distance (wemd)
  • Irregular (Non Square) Block Diagonal Extensions

Additionally this release includes the following updates:

  • Minor Numpy Updates in preperation for Python 3.9
  • ArrayImageSource should now admit numpy arrays directly
  • Minor README updates
  • Introduce informational Code Coverage reporting to CI (Codecov)
  • Minor PIL Upstream dependency patch
  • Improve corrupt mrc file handling in APPLE.picking
  • ArrayImageSource Patches for use in MeanEstimator

v0.7.0

03 Jun 14:50

Choose a tag to compare

This version adds a core backend component for CTF Estimation along with mating CLI entry point which wraps MRC file IO.

Otherwise this is mostly fixes for issues found during development:

  • Bugfix covar2d shrinker and get_cwf_coeffs for clean images (noise_var=0)
  • Bugfix Simulation n=1 crashes
  • Move some developer deps to "dev" package extension
  • Demo Notebook corrections and refresh
  • Bugfix in Pandas code supporting Starfile IO
  • Bugfix filter eval points outside interp grid
  • Add parallel test code coverage job to GitHub Actions (Codecov)
  • Add tests for Rotation class

v0.6.3

05 Mar 19:11

Choose a tag to compare

v0.6.3 Mainly consists of small patches and continuous updates for dependent software and CI systems.
It also extends the tutorials and notebook based documentation.

  • cufinufft v1.2 Updates
  • Update Example Notebooks and add a more comprehensive demonstration
  • Replace Travis CI with GitHub Actions
  • Migrate GitHub Pages Documentation to GitHub Actions
  • FFB3D/FB3D debugging (order and dtype patches)
  • Remove unused skimage dependency
  • Add aspire cli entry point
  • Fix ImageArraySource and add working tutorial to test suite
  • Minor doc updates
  • Use nufft "many" interface in 3D calls
  • Add isotropic noise estimator
  • Separate save function into save_metedata and save_images
  • Option to load numeric backend modules