[PR #1345] [MERGED] chore(labs): upgrade marimo pin to 0.23.1 and fix resulting lint issues #5142

Closed
opened 2026-04-19 12:50:08 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/harvard-edge/cs249r_book/pull/1345
Author: @profvjreddi
Created: 4/16/2026
Status: Merged
Merged: 4/16/2026
Merged by: @profvjreddi

Base: devHead: chore/marimo-0.23-upgrade


📝 Commits (1)

  • bb0e38f chore(labs): upgrade marimo pin to 0.23.1 and fix resulting lint issues

📊 Changes

34 files changed (+67 additions, -69 deletions)

View changed files

📝 labs/requirements.txt (+1 -1)
📝 labs/vol1/lab_00_introduction.py (+2 -4)
📝 labs/vol1/lab_01_ml_intro.py (+2 -2)
📝 labs/vol1/lab_02_ml_systems.py (+2 -2)
📝 labs/vol1/lab_03_ml_workflow.py (+2 -2)
📝 labs/vol1/lab_04_data_engr.py (+2 -2)
📝 labs/vol1/lab_05_nn_compute.py (+2 -2)
📝 labs/vol1/lab_06_nn_arch.py (+2 -2)
📝 labs/vol1/lab_07_ml_frameworks.py (+2 -2)
📝 labs/vol1/lab_08_model_train.py (+2 -2)
📝 labs/vol1/lab_09_data_selection.py (+2 -2)
📝 labs/vol1/lab_10_model_compress.py (+2 -2)
📝 labs/vol1/lab_11_hw_accel.py (+2 -2)
📝 labs/vol1/lab_12_perf_bench.py (+2 -2)
📝 labs/vol1/lab_13_model_serving.py (+2 -2)
📝 labs/vol1/lab_14_ml_ops.py (+2 -2)
📝 labs/vol1/lab_15_responsible_engr.py (+2 -2)
📝 labs/vol1/lab_16_ml_conclusion.py (+2 -2)
📝 labs/vol2/lab_01_introduction.py (+2 -2)
📝 labs/vol2/lab_02_compute_infra.py (+2 -2)

...and 14 more files

📄 Description

bumps the marimo dependency from >=0.19.0 to >=0.23.1 and updates all 33 labs to reflect the new generated-with version. newer marimo adds a stricter branch-expression rule (MR002) that flagged the if getattr(ledger, "is_wasm", False): await ledger.load_async() pattern used at the top of every lab.

changes

file(s) change
labs/requirements.txt marimo pin: >=0.19.0>=0.23.1
all 33 labs __generated_with string updated to 0.23.1
all 33 labs await ledger.load_async() now bound to _ so marimo knows it's not a display expression
lab_00_introduction.py removed unused from mlsysim import Hardware at module scope that broke the App init contract in 0.23.1

verification

  • marimo check passes with zero issues across all 33 labs
  • pytest labs/tests/test_static.py: 656 passed, 4 skipped, 1 xfailed

why now

user asked for labs to be on latest marimo. this is the minimal upgrade that gets clean linting without touching lab content. a followup pass for the widget-in-gated-cell pattern (flagged by the audit script in the new ci sanity tooling) can land separately once we understand whether newer marimo's dataflow handling makes that pattern benign.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/harvard-edge/cs249r_book/pull/1345 **Author:** [@profvjreddi](https://github.com/profvjreddi) **Created:** 4/16/2026 **Status:** ✅ Merged **Merged:** 4/16/2026 **Merged by:** [@profvjreddi](https://github.com/profvjreddi) **Base:** `dev` ← **Head:** `chore/marimo-0.23-upgrade` --- ### 📝 Commits (1) - [`bb0e38f`](https://github.com/harvard-edge/cs249r_book/commit/bb0e38fd2d95590895e8debf639ceddb33b2d492) chore(labs): upgrade marimo pin to 0.23.1 and fix resulting lint issues ### 📊 Changes **34 files changed** (+67 additions, -69 deletions) <details> <summary>View changed files</summary> 📝 `labs/requirements.txt` (+1 -1) 📝 `labs/vol1/lab_00_introduction.py` (+2 -4) 📝 `labs/vol1/lab_01_ml_intro.py` (+2 -2) 📝 `labs/vol1/lab_02_ml_systems.py` (+2 -2) 📝 `labs/vol1/lab_03_ml_workflow.py` (+2 -2) 📝 `labs/vol1/lab_04_data_engr.py` (+2 -2) 📝 `labs/vol1/lab_05_nn_compute.py` (+2 -2) 📝 `labs/vol1/lab_06_nn_arch.py` (+2 -2) 📝 `labs/vol1/lab_07_ml_frameworks.py` (+2 -2) 📝 `labs/vol1/lab_08_model_train.py` (+2 -2) 📝 `labs/vol1/lab_09_data_selection.py` (+2 -2) 📝 `labs/vol1/lab_10_model_compress.py` (+2 -2) 📝 `labs/vol1/lab_11_hw_accel.py` (+2 -2) 📝 `labs/vol1/lab_12_perf_bench.py` (+2 -2) 📝 `labs/vol1/lab_13_model_serving.py` (+2 -2) 📝 `labs/vol1/lab_14_ml_ops.py` (+2 -2) 📝 `labs/vol1/lab_15_responsible_engr.py` (+2 -2) 📝 `labs/vol1/lab_16_ml_conclusion.py` (+2 -2) 📝 `labs/vol2/lab_01_introduction.py` (+2 -2) 📝 `labs/vol2/lab_02_compute_infra.py` (+2 -2) _...and 14 more files_ </details> ### 📄 Description bumps the marimo dependency from >=0.19.0 to >=0.23.1 and updates all 33 labs to reflect the new generated-with version. newer marimo adds a stricter branch-expression rule (MR002) that flagged the `if getattr(ledger, "is_wasm", False): await ledger.load_async()` pattern used at the top of every lab. ## changes | file(s) | change | |---|---| | `labs/requirements.txt` | marimo pin: `>=0.19.0` → `>=0.23.1` | | all 33 labs | `__generated_with` string updated to `0.23.1` | | all 33 labs | `await ledger.load_async()` now bound to `_` so marimo knows it's not a display expression | | `lab_00_introduction.py` | removed unused `from mlsysim import Hardware` at module scope that broke the App init contract in 0.23.1 | ## verification - `marimo check` passes with zero issues across all 33 labs - `pytest labs/tests/test_static.py`: 656 passed, 4 skipped, 1 xfailed ## why now user asked for labs to be on latest marimo. this is the minimal upgrade that gets clean linting without touching lab content. a followup pass for the widget-in-gated-cell pattern (flagged by the audit script in the new ci sanity tooling) can land separately once we understand whether newer marimo's dataflow handling makes that pattern benign. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-19 12:50:08 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/cs249r_book#5142