What's Changed
Highlights ⭐
-
🧪 Test notebooks with pytest!. It's now possible to test notebooks using
pytest
! Runningpytest test_notebook.py
will run and test all cells whose name starts withtest_*
. This is only possible because marimo notebooks are stored as code (Python, not JSON!). Learn more at our docs. Shoutout to @dmadisetti for contributing this feature! -
🔬Experimental tracing panel. This release includes an exciting new experimental tracing panel, giving you insight into which cells run, when, and for how long. Shoutout to @Light2Dark for contributing this feature! Enable it through the user settings (⚙ icon at the top right of your notebook).
-
🖱 Usability improvements. This release includes a number of usability improvements, including helpful prompts when you accidentally try using IPython magics, the ability to copy/paste the contents of a notebook file directly into the notebook (pasting creates cells!), the ability to use sandboxed notebooks with HTML export (thanks @metaboulie for contributing this!) and a few bug fixes.
All changes
- docs: show import marimo as mo at notebook top by @akshayka in #3243
- docs: fix marimo-embed of ui.dataframe by @akshayka in #3245
- tidy: Tweaks to enable pytest on marimo nbs by @dmadisetti in #3238
- fix: arrow key navigation taking precedence in inputs by @akshayka in #3244
- improve: parse google-style attributes in docstrings by @akshayka in #3247
- improvement: allow non-index.html files and add docs for wasm export by @mscolnick in #3248
- fix quotes in save.py:persistent_cache docstring by @gabrielgrant in #3255
- examples: ui element usage examples by @akshayka in #3254
- Add mapping for quaternion -> numpy-quaternion by @moble in #3253
- chore: make RPCs private methods by @akshayka in #3252
- fix: read sandbox dependencies when opening remote files by @akshayka in #3250
- Fix: ui.datetime() rendering with empty initial value by @devin-ai-integration in #3249
- feat(cli): add --sandbox flag to
marimo export html
command by @metaboulie in #3236 - docs: add marimo-embed-inline by @mscolnick in #3261
- docs: cleanup motherduck docs by @mscolnick in #3260
- improvement: help spread the love of marimo by @mscolnick in #3263
- improvement: map jupyter magic to helpful descriptions by @mscolnick in #3262
- improve: example installation instructions by @akshayka in #3265
- Update CONTRIBUTING.md by @singlebeam in #3268
- add trailing slash for /index.html redirects by @Light2Dark in #3269
- feat: make cells runnable with full arguments by @dmadisetti in #3251
- Update installation.md by @singlebeam in #3272
- docs: warn users more strongly against using mo.state() and on_change handlers. by @akshayka in #3266
- improvement: allow pasting full marimo applications in a cell by @mscolnick in #3273
- experimental: tracing panel by @Light2Dark in #3168
- improvement: handle pl.Duration by @mscolnick in #3274
- fix: number input reset by @devin-ai-integration in #3276
- test: Add unit tests for codemirror modules by @devin-ai-integration in #3275
- Integrate Biome with VCS to simplify ignore patterns by @manzt in #3283
- docs: pytest in marimo by @dmadisetti in #3281
- improvement: tracing perf, hide charts and skip markdown by @mscolnick in #3282
New Contributors
- @gabrielgrant made their first contribution in #3255
- @moble made their first contribution in #3253
- @singlebeam made their first contribution in #3268
Full Changelog: 0.10.6...0.10.7