Skip to content

v2.2#25

Merged
calcharp merged 16 commits into
Imageomics:mainfrom
calcharp:main
May 22, 2026
Merged

v2.2#25
calcharp merged 16 commits into
Imageomics:mainfrom
calcharp:main

Conversation

@calcharp
Copy link
Copy Markdown
Member

New update with ATLAS integration completed and docs updated accordingly.

@calcharp calcharp requested a review from egrace479 May 19, 2026 13:58
calcharp and others added 3 commits May 22, 2026 11:58
Remove committed traitblender/site/ and gitignore it so docs live only under docs/; CI still builds site/ for GitHub Pages.

Co-authored-by: Cursor <cursoragent@cursor.com>
Drop legacy Blender 4.x and older TraitBlender version notes from docs; list supported stack as v2.2.0 on Blender 5.1+. Expand root .gitignore with every file and field to update on release (docs, CITATION.cff, Zenodo).

Co-authored-by: Cursor <cursoragent@cursor.com>
Align CITATION.cff, Zenodo publication_date, and docs index BibTeX month with today's release date.

Co-authored-by: Cursor <cursoragent@cursor.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR bumps TraitBlender to v2.2.0 and completes ATLAS morphospace integration (PCA + local RBF deformation from an ATLAS DATABASE export), alongside render-engine compatibility improvements and documentation/release metadata updates.

Changes:

  • Add a new ATLAS morphospace module (including orientations, PCA reconstruction, and local RBF mesh deformation) and integrate dynamic trait-column derivation (pc1..pcN) via n_components.
  • Improve config/runtime compatibility: scope morphospace hyperparameter overrides per morphospace; normalize Eevee render-engine identifiers across Blender versions; keep virtual datasets in sync with dynamically changing trait columns.
  • Update MkDocs navigation and documentation for ATLAS + release bump; refresh packaging/CI wheel download flow (including VTK).

Reviewed changes

Copilot reviewed 38 out of 50 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
traitblender/ui/properties/morphospace_hyperparams.py Adds StringProperty support for hyperparams and adjusts IntProperty bounds logic.
traitblender/ui/operators/generate_morphospace_sample_op.py Refines hyperparameter detection/mapping when calling morphospace sample().
traitblender/mkdocs.yml Adds ATLAS page to MkDocs nav.
traitblender/docs/README.md Updates latest release info + supported stack blurb.
traitblender/docs/morphospaces/shell.md Adds sample image gallery.
traitblender/docs/morphospaces/overview.md Updates morphospace count and adds ATLAS link.
traitblender/docs/morphospaces/circle-grid.md Adds sample image gallery.
traitblender/docs/morphospaces/atlas.md New ATLAS morphospace documentation page.
traitblender/docs/index.md Updates release info + BibTeX metadata (month/version).
traitblender/docs/images/Morphospace Samples/.gitkeep Keeps image directory tracked in git.
traitblender/docs/getting-started/quick-start.md Updates supported versions + adds ATLAS guidance.
traitblender/docs/getting-started/quick-start-api.md Updates supported versions + clarifies Eevee naming in headless context.
traitblender/docs/getting-started/installation.md Renames compatibility section to “Supported versions” and bumps install examples.
traitblender/docs/configuration/config-files.md Documents engine normalization and acceptable Eevee identifiers.
traitblender/core/morphospaces/trait_params.py Adds context-aware hyperparameter merge and dynamic trait-parameter derivation hook.
traitblender/core/morphospaces/list_morphospaces.py Adds explicit GUI ordering for morphospace dropdown.
traitblender/core/helpers/render_engine_compat.py New helper to detect/normalize Eevee engine identifier across Blender versions.
traitblender/core/datasets/traitblender_dataset.py Syncs in-memory datasets when expected trait columns change (dynamic morphospaces).
traitblender/core/config/templates/render.py Normalizes engine on YAML import; uses dynamic engine enum items/options.
traitblender/core/config/templates/morphospace.py Scopes hyperparameter overrides to current morphospace’s defaults.
traitblender/blender_manifest.toml Bumps version and adds VTK wheel entry.
traitblender/assets/morphospace_modules/Shell/init.py Filters hyperparameter overrides to known keys only.
traitblender/assets/morphospace_modules/ATLAS/orientations/init.py New ATLAS orientation set (default + axis quarter-π rotations).
traitblender/assets/morphospace_modules/ATLAS/morphospace/atlas_morphospace.py ATLAS sample generation wrapper around atlas_core (paths/PCs/scale).
traitblender/assets/morphospace_modules/ATLAS/morphospace/atlas_morphospace_sample.py Converts ATLAS mesh arrays into a Blender mesh/object.
traitblender/assets/morphospace_modules/ATLAS/morphospace/atlas_core.py Implements ATLAS DATABASE PCA reconstruction + local RBF deformation pipeline.
traitblender/assets/morphospace_modules/ATLAS/morphospace/init.py Exposes ATLAS morphospace API + MAX_ATLAS_PCS constant.
traitblender/assets/morphospace_modules/ATLAS/init.py Registers ATLAS morphospace (hyperparams, dynamic trait columns, sample signature).
traitblender/assets/configs/default.yaml Notes Eevee engine id normalization behavior.
traitblender/.gitignore Ignores MkDocs site/ output.
requirements-wheels.txt Adds VTK and explicitly lists runtime deps when downloading with --no-deps.
requirements-wheels-headless.txt Same as above for headless builds.
README.md Bumps version and documents ATLAS as third built-in morphospace.
CITATION.cff Bumps release date/version and updates release URL metadata.
build_zips/download_wheels.py New helper script to download pinned wheels per platform and refresh manifest.
build_zips/blender_manifest.template.toml Version bump for manifest template.
.zenodo.json Version + publication date bump.
.gitignore Adds MkDocs output ignore + in-repo release checklist notes.
.github/workflows/release-zips.yml Adds --no-deps to pip download for reproducible wheel sets.
.github/workflows/build-zips.yml Adds --no-deps to pip download for reproducible wheel sets.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread CITATION.cff Outdated
Comment thread traitblender/ui/properties/morphospace_hyperparams.py Outdated
Comment thread traitblender/core/morphospaces/trait_params.py Outdated
Comment thread traitblender/core/datasets/traitblender_dataset.py Outdated
Comment thread traitblender/core/config/templates/morphospace.py Outdated
calcharp and others added 4 commits May 22, 2026 15:17
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Replace exec-built pc1..pc64 sample signature with **traits kwargs, resolve mode count from the DATABASE export, and pass dataset pc columns through the generate-sample operator.

Co-authored-by: Cursor <cursoragent@cursor.com>
ATLAS uses n_components; runtime PC count is bounded by the SSM mode count, not a fixed UI cap.

Co-authored-by: Cursor <cursoragent@cursor.com>
Filter hyperparams in to_dict, _to_yaml, and from_dict the same way as get_hyperparams_for so stale keys from other morphospaces are not written or loaded.

Co-authored-by: Cursor <cursoragent@cursor.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 38 out of 50 changed files in this pull request and generated 4 comments.

Comment thread traitblender/ui/operators/generate_morphospace_sample_op.py
Comment thread traitblender/core/helpers/render_engine_compat.py
Comment thread traitblender/assets/morphospace_modules/ATLAS/morphospace/atlas_core.py Outdated
Only include manifest in resolved paths when manifest.json exists, and
list only existing files in the Found line when required assets are missing.

Co-authored-by: Cursor <cursoragent@cursor.com>
@calcharp calcharp merged commit 7e485e8 into Imageomics:main May 22, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants