Skip to content

publish: Windows -nodisplay detection + merge upstream master - #26

Open
olemarius90 wants to merge 29 commits into
masterfrom
cursor/publish-examples-windows-c47b
Open

olemarius90 wants to merge 29 commits into
masterfrom
cursor/publish-examples-windows-c47b

Conversation

@olemarius90

@olemarius90 olemarius90 commented May 13, 2026

Copy link
Copy Markdown
Owner

Resolved merge with unioslo/USTB master

(Previous merge + conflict resolution — see earlier description.)

Latest: Windows Git Bash + empty publish fix

Symptom: publish_all_examples is not found ... but exists in: C:\Repositories\ustb and 0 examples published — Git Bash passes /c/Repositories/ustb into MATLAB cd(), which Windows MATLAB does not treat as the repo root.

Fix: Rewrite paths with cygpath -m (if available) or /c/x/yC:/x/y before -batch. Echo (MATLAB cwd path: ...) so you can confirm.

  • set -o pipefail so a failed MATLAB run exits the script instead of packaging/uploading an empty 4K tarball.
  • publish_publications.sh: same path logic, omit -nodisplay on Windows, single-line -batch (matches publish_examples.sh robustness).
Open in Web Open in Cursor 

cursoragent and others added 29 commits April 11, 2026 07:15
…ming

- Add examples/dataset_smoke_tests: uff_dataset_registry, run_dataset_smoke_tests,
  simple_process_dataset, website_slug_for_dataset, export_dataset_previews_to_website
- Add examples/dataset_catalog_previews: dataset_preview_beamform (one case per
  dataset matching canonical examples), export_png_like_b_data_plot, README
- Website: datasets.html, nav links, dataset PNG previews, build_datasets_page.py,
  .gitignore exception for website/assets/images/datasets/*.png
- tools.download: strip trailing slash from base URL to avoid // in requests (CI)

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
- Alpinion hypoechoic: use FI_UFF_synthetic_TX_SLSC RTB-style DAS (transmit/receive tukey25, f# 4/3) instead of FI_UFF_Alpinion recipe
- FieldII STAI dynamic range and axial gradient: apply uniform FOV weights after coherent compounding like process_simulation*.m
- PICMUS: use default DAS code path as in picmus examples (drop code.matlab override)
- test02: always load /scan from UFF per CPWC_UFF_read.m
- Vralstad speckle sim: normalize channel data before RTB DAS
- FieldII CPWC res v2: match process_CPWC_L7_4_probe_point_scatter DAS-only pipeline

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
- export_dataset_previews_to_website: optional indices vector, clear b_data each iteration
- export_png_like_b_data_plot: use get_image('log') for consistent reshape
- dataset_preview_beamform: coherent_compounding after Alpinion hypoechoic DAS; MLA [4,1] for carotid; drop redundant N_frames=1 on hypoechoic
- Updated PNGs for datasets present under data/ (stubs unchanged for missing files)

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
- export_dataset_previews_to_website: 'local_only' skips HTTP download and uses files in data_path() only
- dataset_preview_beamform: subsample large Field II STAI scan grids (same FOV) and clear channel_data after DAS to avoid OOM during preview export
- Refresh website/assets/images/datasets/*.png from MATLAB export (per-registry index runs)

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
write_gray_stub_preview used G=200-235 with R=B=0, which read as green
on GitHub Pages. Use flat R=G=B for missing-local .uff placeholders;
regenerate the 10 stub PNGs.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
…ctor aspect

export_png_like_b_data_plot now calls b_data.plot (pcolor + axis equal) and
captures the axes instead of flattening get_image to a square PNG. Regenerated
local-dataset thumbnails. README updated.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
* gitignore: local build artifacts, pycache, python/dist, website/api

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* publications: move Vrålstad blocked-array code to TUFFC, TUSON 2026

- Move Preprint/.../Vralstad_et_al_* to publications/TUFFC/ (MATLAB helpers)
- Update Correction_of_simulated_blockage header and Zenodo dataset URL
- Registry, dataset preview comment, website publications + datasets page

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* publications: move Vrålstad 2026 paper to TUSON/ with year in folder name

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* REFoCUS: pad without IPT; publish Vrålstad TUSON example to website

- Add tools.pad_post_samples; preprocess.refocus uses it instead of padarray
- Correction_of_simulated_blockage: MATLAB DAS if MEX missing; headless skips
  interactive gCNR; demod.plot_off when no desktop
- Publish MATLAB HTML to website/examples/TUSON/...; link from publications.html

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
* gitignore: local build artifacts, pycache, python/dist, website/api

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* publications: move Vrålstad blocked-array code to TUFFC, TUSON 2026

- Move Preprint/.../Vralstad_et_al_* to publications/TUFFC/ (MATLAB helpers)
- Update Correction_of_simulated_blockage header and Zenodo dataset URL
- Registry, dataset preview comment, website publications + datasets page

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* publications: move Vrålstad 2026 paper to TUSON/ with year in folder name

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* REFoCUS: pad without IPT; publish Vrålstad TUSON example to website

- Add tools.pad_post_samples; preprocess.refocus uses it instead of padarray
- Correction_of_simulated_blockage: MATLAB DAS if MEX missing; headless skips
  interactive gCNR; demod.plot_off when no desktop
- Publish MATLAB HTML to website/examples/TUSON/...; link from publications.html

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* website: track publish PNGs for Vrålstad TUSON example; gitignore exception

MATLAB publish writes Correction_of_simulated_blockage_*.png; *.png was
ignored so only HTML was committed and figures 404d on GitHub Pages.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* ci: publish publication HTML via examples-v1 release like other examples

- Add publish_publications.sh (builds publications-html.tar.gz for TUSON Vrålstad)
- Ignore website/examples/ and local publish output; remove committed HTML/PNGs
- Document in PUBLISHING_EXAMPLES.md; label TUSON in generate_examples_index
- Trigger deploy when publish_publications.sh changes

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* website: group publications by T-USON, TUFFC, IUS; fix Vrålstad venue

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* tests: use Zenodo for integration dataset downloads (ustb.no no longer serves)

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* tests: align integration downloads with actual Zenodo record file list

Record 19550715 no longer includes Verasonics_P2-4, PICMUS_experiment_*, or
L7_CPWC_193328 — those URLs 404. Use L7_FI_IUS2018, PICMUS_simulation_resolution_*
Rename fi_phased_cardiac test to fi_verasonics_linear (linear scan/RTB pattern).
Update zenodo_dataset_files_base comment.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* tests: PICMUS integration use contrast_speckle UFF (on Zenodo record 19550715)

simulation_resolution_distortion.uff is not in the 9-file deposit; contrast_speckle is.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* tests: restore PICMUS resolution integration to ustb.no dataset URL

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
* CI: fix GitHub Pages deploy curl (use -f, validate tar, trigger on workflow change)

- curl without -f saves 404 HTML as the tarball so the olemarius90 release
  fallback never runs and publication iframes 404 (e.g. Vrålstad TUSON page).
- gzip -t and assert Vrålstad published HTML exists after extract.
- Include this workflow file in on.push paths so workflow-only fixes redeploy.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

* CI: validate publications tarball content; fall back to fork; install as examples/TUSON

- Primary URL can 200+valid gzip with wrong asset; validate extracted path, then
  retry olemarius90/USTB.
- copy publications/TUSON to website/examples/TUSON to match publication iframes.
- In try_publications, avoid set -e exiting on a failed [ -f ] in a function.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
Exercise WA, DCWA, and DAS on STAI_UFF_CIRS_phantom matching the
Fourier beamforming example; coarser scan grid for CI runtime.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
Update integration_fourier_beamforming_sta_test.m
…rmer (fix publications iframe 404)

- publish_all_examples: extra pass for sandbox/The_Generalized_Beamformer CPWC_double_adaptive_redone -> examples_html/generalized_beamformer
- generate_examples_index: folder label for generalized_beamformer
- PUBLISHING_EXAMPLES: document publications iframes and unioslo release upload
- Vralstad Preprint: speckle ROI snapnow loop for three blockage levels + primary pipeline

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
…rs for example HTML

- Omit -nodisplay on non-Unix (fixes MATLAB warning on Windows)
- Detect das_c mexw64 or mexa64
- Skip FI_UFF SLSC examples, multi_frame 303, dataset_catalog helpers, dataset_smoke_test_all
- Document in PUBLISHING_EXAMPLES.md

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
Avoids MATLAB warning on Git Bash when uname/OS reporting is ambiguous.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
…cript conflicts

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
Rewrite MSYS /c/... paths to C:/... (cygpath -m or drive-letter fallback)
before cd/addpath so publish_all_examples resolves. Add pipefail so a
failed MATLAB run stops the script instead of uploading an empty tarball.

Align publish_publications.sh: single-line batch, Windows nodisplay omit.

Co-authored-by: Ole Marius Hoel Rindal <olemarius90@users.noreply.github.com>
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