v0.4.0
What's Changed
This release makes marimo notebooks feel at home in JupyterLab: switch Python environments in place, and keep both saved and ephemeral tabs across reloads.
⭐️ Highlights
Switch Python environments from the file browser
Right-click a saved marimo Python notebook and choose Change Python Environment to select one of your Jupyter kernel environments. If the notebook is running, the extension confirms the restart before applying the new environment.
✨ Enhancements
- Change the Python environment for an existing marimo notebook (#129)
🐛 Bug fixes
- Restore saved marimo notebook tabs after a JupyterLab reload (#127)
- Restore ephemeral notebook tabs after a JupyterLab reload (#128)
- Reject unsupported Markdown filenames during notebook creation (#131)
📚 Documentation
- Document the explicit Tornado WebSocket size configuration for large outputs (#125)
🧰 Maintenance
- Update frontend and CI dependencies and lockfiles (#84, #103, #115, #117, #119, #122, #124)
- Add least-privilege workflow permissions and automatic formatting fixes (#116, #120)
- Add shared contributor instructions for coding agents (#121)
Contributors
Thanks to all our community and contributors who made this release possible.
And especially to our new contributors:
- @maxcmiller made their first contribution in #127
Full Changelog: v0.3.0...v0.4.0
