Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
Added
Changed
Deprecated
Removed
Fixed
Security
[2.1.0] - 2026-06-26
Primarily docstring and documentation development but during that process some code fixes, or renamings for clarity, were done.
Added
Documentation with Sphinx and Read the Docs.
Code of Conduct.
Changelog.
Contributing Guide.
Added docstrings for modules, classes, and functions. Updated the few that were previously present but out of date.
[2.0.0] - 2026-05-18
A major refactor of MISalign to decouple modules and make it easier to extend. Many of the refactors involved creating a standard interface/Protocol for an aspect of MISalign and then splitting previously interlinked functionality into separate implementations of the interface.
Breaking: The vast majority of classes and functions were modified in some capacity which likely breaks existing code at least slightly.
Note: This changelog was written after the 2.0.0 release was already completed so it may be incomplete. Many things where changed or renamed as part of the holistic refactor process.
Added
HDF5 support added both for using data sets from existing HDF5 files(with
MISImageHDF5) as well as native HDF5 single file projects(withMISProjectHDF5).The new
MISProject,MISImage, andMISRelationclasses all include data passthrough of JSON-serializable information. This means notes, priorities, or any other added detail can be included and should not be affected by MISalign load/update/save cycles. This opens up a lot of extensibility and was a major reason for the refactoring as the previous.misformat did not have much if any flexibility for including new data fields...._projectvariants of many of the solving and rendering workflow functions incanvas/canvas_rectangularwere added to simplify the rendering process when rendering from aMISProject.
Changed
Breaking:
model/project>MISProjectprotocol withMISProjectJSONandMISProjectHDF5implementations replaces themodel/mis_file>MisFileclass for storing project data.MisFileprojects were JSON stored with.misfile extension,MISProjectJSONprojects are differently formatted JSON stored with a.mis.jsonfile extension & extension prefix. A conversion function from.misto.mis.jsonis available in the project modulemodel/project>convert_mis_project_json.Breaking:
model/image>MISImagewithMISImageFileandMISImageHDF5implementations replacemodel/image>Image. This change was primarily made to enable non-image file data sources.Breaking:
model/relation>MISRelationwithMISRelationReference,MISRelationRectangular, andMISRelationPointsimplementations replacemodel/relation>Relation. This change splits the if/else logic of each type of relation into their own class.Breaking:
canvas/canvas_renderandcanvas/canvas_solvemodules were merged intocanvas/canvas_rectangularmodule.Breaking: To enable
MISImageHDF5usage the visualization and rendering functions incanvas/canvas_rectangularandalignment/interactive_manualwere changed to usenp.asarray(MISImage)rather than take image filepaths and manually open the images.Breaking: Distance from edge generation
Image.dfe_arr()was moved intocanvas/canvas_rectangularasweight_dfe()
[1.0.0] - 2024-05-14
The initial full release of MISalign.