Releases: Pluze/LabKit-MATLAB-Workbench
Releases · Pluze/LabKit-MATLAB-Workbench
Release list
LabKit MATLAB Workbench v3.0.0
Highlights
- Replaces legacy task inputs with file panels across app workflows, with stronger file selection state, labels, diagnostics, and close-guard behavior.
- Adds protected image enhancement workflows and the launcher version manager for selecting recent releases, tags, and main-branch builds.
- Tightens app workflow documentation, UI diagnostics, validation routing, and direct-main git handoff rules.
- Reduces duplicate MATLAB validation by running the MATLAB Tests workflow on
mainpushes and pull requests tomain, not feature-branch pushes or release tags.
Fixes
- Fixes stale image drag callbacks and improves batch crop file workflow feedback.
- Fixes app diagnostics crash reporting.
- Fixes the Batch Crop folder-scan filePanel refresh crash from issue #25 by hardening shared filePanel entry normalization.
- Requires launcher-managed manifests so launcher-installed apps follow the supported manifest contract.
Upgrade Note
- This is a major release because app task inputs were replaced with file panels and legacy path-panel workflows were removed.
- Launcher users should download the attached
labkit_launcher.masset from this release. labkit.uifacade metadata is now 3.2.2 for the filePanel normalization fix.
Validation
- Local:
/Applications/MATLAB_R2025a.app/bin/matlab -batch "buildtool changed"passed on349a754987740634491bf814ea0212715d191298. - CI: GitHub Actions
MATLAB Testsrun28392746745passed on349a754987740634491bf814ea0212715d191298.
LabKit MATLAB Workbench v2.4.2
Highlights
- Route MATLAB CI shards through buildfile tasks instead of workflow-maintained runner selectors.
- Organize contract guardrail tests by ownership and project topic so test routing follows the repository layout.
Fixes
- Keep app contract guardrails under the apps suite after the contract directory split.
- Update testing and release docs so CI shard membership follows build tasks, suites, and tags.
Validation
- matlab -batch "buildtool listTasks"
- matlab -batch "addpath('tests'); runLabKitTests('Tests','runnableBuildTaskSpecsMapToKnownTestScopes','HtmlReport',false,'RunName','build_task_guardrail_probe')"
- matlab -batch "buildtool headless"
LabKit MATLAB Workbench v2.4.1
Highlights
- Hardened release CI selector coverage so workflow test-class selectors now fail when they drift from the repository test tree.
- Tightened LabKit facade requirement checks so apps cannot pass by requiring a future facade version that only intersects the advertised range.
- Made app version-title formatting idempotent and improved safe file-dialog defaults for macOS/Linux HOME fallback.
Fixes
- Removed stale project CI selectors and added current version/repository hygiene guardrails to push CI.
- Standardized remaining app-local input dialogs in DIC preprocess, DIC postprocess, and curvature measurement on LabKit safe input defaults.
- Made CI checkout keep the parent commit available so version and changed-file guardrails have a stable baseline.
Upgrade Note
labkit.uifacade contract is now2.2.1; existing apps requiringui >=2.2 <3remain compatible.- DIC Preprocess, DIC Postprocess, and Curvature Measurement app versions are now
1.0.1.
Validation
- Local:
matlab -batch "buildtool headless"passed on commit49d9f41. - Local:
matlab -batch "buildtool gui"passed on commit49d9f41. - CI:
MATLAB Testspush workflow passed on commit49d9f41. - CI:
MATLAB Teststag workflow passed forv2.4.1.
LabKit MATLAB Workbench v2.4.0
Highlights
- Added version metadata for the launcher and every supported app.
- App windows and the launcher now show version and update-date information.
- Added a lightweight app
"version"request alongside existing requirement checks. - Added discovery-driven version guardrails so launcher, app, and facade code changes must use increasing
X.Y.Zversions. - Reduced hardcoded app registry lists in boundary tests in favor of app discovery.
Upgrade Note
labkit.uicontract version is now2.2.0; apps now requireui >=2.2 <3for version-title support.- App and launcher version metadata must be updated when their code or user-facing behavior changes.
- The release asset is the tag-exported
labkit_launcher.m; users can keep downloading only the launcher, or download source archives from the release page for offline/portable use.
Validation
- Release tag:
v2.4.0atd70c2607325f9b6ee5546805a83f7a9696373940. - Local validation:
matlab -batch "buildtool changed"passed before tagging. - CI validation: GitHub Actions
MATLAB Testspassed onmainford70c2607325f9b6ee5546805a83f7a9696373940.
LabKit MATLAB Workbench v2.3.3
Highlights
- Added MATLAB-native LabKit facade contract checks for app launch paths.
- Added facade version APIs for UI, DTA, RHS, and biosignal packages.
- Made automated GUI validation run with hidden test windows by default while still creating real MATLAB GUI objects.
- Tightened launcher update hygiene and safe default dialog-folder behavior.
Fixes
- Normalized contributor identity display with
.mailmap. - Updated GitHub onboarding and issue templates.
Upgrade Note
- Apps now declare LabKit facade requirements and check them before GUI construction.
- Facade contract versions are now visible through
labkit.ui.version(),labkit.dta.version(),labkit.rhs.version(), andlabkit.biosignal.version(). - Keep lab data and exports outside the LabKit runtime folder before using launcher updates.
Validation
- Local
buildtool changedpassed on commit20ea41b83ef3c5b10206d7205163063a44a226d6. - GitHub Actions
MATLAB Testspassed on release commita7e7dfb1fa2d7acbf0f16931e19920f1c87223d9.
LabKit MATLAB Workbench v2.3.2
Highlights
- Improved Image Enhance and Image Match preview responsiveness by keeping preview processing on the current display-resolution image and reserving full-resolution batch processing for export.
- Preserved pixel-radius semantics in Image Enhance previews by scaling radius/window-style controls to the downsampled preview resolution.
- Stabilized EIS plot limit handling when coordinate selections and log-axis modes change.
Fixes
- Fixed Image Enhance and Image Match Apply actions so they record workflow steps instead of processing every loaded image.
- Fixed Image Enhance preview mismatch for Local contrast and Sharpen radius controls when previews are downsampled.
- Fixed EIS log-axis zoom and coordinate reset behavior after changing axis selections.
- Updated release launcher documentation so the README points at the downloadable release asset.
Upgrade Note
- No breaking workflow changes. Existing app entry points and saved outputs remain compatible.
- Download
labkit_launcher.mfrom this release asset for the latest launcher copy.
Validation
- GitHub Actions
MATLAB Testspassed for commit29669ca6a3e3fdd88de3ab2f817aeba8b2b2e4d1on run27980201219.
LabKit MATLAB Workbench v2.3.1
Highlights
- Refreshed the root README around direct single-file launcher download and launcher-first app startup.
- Reorganized the documentation index and app launch notes to separate normal user workflow from maintainer references.
- Made the build task documentation guardrail parse CRLF and LF line endings consistently.
Validation
LabKit MATLAB Workbench v2.3.0
Highlights
- Fixed a critical LabKit Launcher Clean Artifacts path-handling bug that could delete files outside the project after administrator approval.
- Improved Batch Image Crop padding for figure-preparation workflows, including up to 200% repaired-reflect padding.
- Preserved crop preview coordinates and zoom while rotation or padding settings change.
- Added reusable image display coordinate support for preview axes.
Fixes
- Hardened launcher artifact cleanup so it only removes intended repository artifact targets and rejects unsafe path-list handling.
- Added regression coverage for char-vector path-list cleanup bugs to prevent repeat cleanup actions from iterating over individual path characters.
- Reduced visible batch-crop padding seams by repairing source image border pixels before reflected padding.
- Prevented padding changes from shifting the plotted source-image coordinate frame.
- Clarified validation routing rules so changed-file planning is consulted before hand-selecting broader local gates.
Upgrade Note
- Update immediately if you use the LabKit Launcher Clean Artifacts action from versions after v2.2.0 and before v2.3.0.
- Local full GUI validation can steal focus on macOS because MATLAB opens real figures; use focused GUI targets, CI, or another noninteractive session when the user is actively typing.
Validation
- Local: buildtool headless passed for commit f2ed23c before validation-rule edits.
- Local: buildtool gui passed for commit f2ed23c before validation-rule edits.
- Local: ProjectDocumentationGuardrailTest/testingDocOwnsBuildTaskCommandMatrix passed after validation-rule wording edits.
- CI: MATLAB Tests run 27919342487 passed on commit f2ed23c.
- CI: MATLAB Tests run 27919426695 passed for the v2.3.0 tag.
LabKit MATLAB Workbench v2.2.0
Highlights
- Added a self-contained launcher update panel with separate Latest and Release update paths.
- Latest downloads the current GitHub main zip; Release downloads the latest GitHub release and falls back to the latest tag.
- Kept zip updates disabled for git checkouts while supporting repair of damaged zip installs.
- Added an ASCII-only repository hygiene guardrail and removed legacy non-ASCII label compatibility.
Validation
- Local: buildtool changed passed, including 157 headless tests and 3 launcher GUI tests.
- CI: MATLAB Tests passed on main for commit c904bac.
LabKit MATLAB Workbench 2.1
Highlights
- Stabilized the app interactions and launcher repair path before the 2.1 release.
- Fixed multiple app-level usability regressions around logs, busy-window titles, plot refresh, and signal-axis zoom behavior.
Fixes
- Launcher zip updater now reports the real update error instead of masking it with a MATLAB message-identifier formatting error.
- Zip updater backup/archive paths are scalarized for MATLAB archive APIs.
- Log tabs expand log panels to the available height.
- Busy window titles no longer accumulate repeated [Working: ...] suffixes.
- VT resistance plot refresh/reset clears previous markers and annotations before redraw.
- Time-series preview axes use mouse-wheel zoom on the horizontal time axis only.
Upgrade Note
This release supersedes 2.0. Version 2.0 has fatal path-handling and update defects that can make normal use fail, so users should upgrade to 2.1 or newer.
Validation
- Local: buildtool headless passed.
- Local: buildtool gui passed.
- CI: MATLAB Tests passed for commit 76ddf7d.