Skip to content

Releases: marimo-team/marimo

0.16.1

22 Sep 19:46

Choose a tag to compare

This release includes improvements to internationalization and important bug fixes.

✨ Enhancements

  • Add to outline mo.outline() (#6430)
  • Display plain output for explain queries in duckdb (#6439)
  • Add GetNotebookErrors tool (#6445)
  • Add session_id to system_context (#6443)
  • Use user's (or configured) locale for dates, times, and numbers (#6433)
  • Add locale to display config (#6432)
  • Show tool location and kind when no output (#6441)
  • Add datasource tool (#6422)
  • Use user's local for date inputs (#6412)
  • Hover over cell (#6420)
  • Display tool inputs for tool accordion (#6452)
  • Add maybe import marimo to Generate with AI (#6471)

🐛 Bug fixes

  • Preserve literal strings in type annotations (#6451)
  • check if default schema and db is string, for engines (#6438)
  • String quoting for marimo (#6470)
  • Skip adding import if already exists (#6475)
  • Restrict uvicorn version to avoid notebook creation issues (#6453) (#6467) (4c17a0e)
  • Center slides better for iframed content (#6465)
  • Return original markdown text, override format (#6464)
  • Prevent new language adapter instances being created on keypress (#6459)
  • Specify utf-8 encoding when writing toml files (#6449)

📚 Documentation

  • Update CLAUDE.md to incorporate marimo check (#6448)
  • Update system prompt & CLAUDE.md (#6437)

📝 Other changes

  • check ignore for ci (#6474)
  • Run check on examples (#6450)
  • Fix uv snapshot (#6440)

Contributors

Thanks to all our community and contributors who made this release possible: @bjoaquinc, @daizutabi, @dmadisetti, @Light2Dark, @manzt, @maxkoretskyi, @mscolnick, @nojaf

Full Changelog: 0.16.0...0.16.1

0.16.0

18 Sep 21:46

Choose a tag to compare

This release brings multi-cell AI code generation and marimo check for static code analysis, along with preview features for AI agents.

Highlights

Generate multiple cells with AI

You can now generate entire notebooks with AI within marimo.

The "Generate with AI" feature has been upgraded to create multiple cells at once, organizing code into logical units (#6312).

As you watch the AI work, cells stream in with a distinctive visual indicator, making it clear which cells are AI-generated. Accept suggestions with Tab or reject with Escape.

Detect and fix common issues with marimo check

marimo includes a comprehensive linting system that helps you write better, more reliable notebooks. The new marimo check command detects and reports on common errors before runtime, ensuring your notebooks follow marimo's best practices (#6288).

Run marimo check to identify issues like multiple definitions, circular dependencies, and syntax errors. Add --fix to automatically resolve formatting issues. Configure marimo check as a hook with AI coding agents like Claude Code or Google Gemini to automatically correct potential mistakes in AI-generated code.

# Check for issues
marimo check notebook.py

# Auto-fix formatting issues
marimo check --fix notebook.py

You can also use marimo check for CI/CD pipelines with its non-zero exit codes on warnings.

AI Agent Sidebar (Preview)

Connect marimo notebooks to AI coding assistants like Claude Code or Gemini CLI through the new Agent sidebar (#6331, #6389). This experimental integration uses the Agent Client Protocol (ACP) to enable AI agents to help write and modify code directly in your notebooks.

Enhanced agent capabilities:

  • Upload files directly from your computer into the agent context
  • Reference data with @ - mention dataframes, variables, and errors
  • Attach files with # - include notebook files in your prompts
  • Open terminal for agent commands directly from the sidebar

Note: This feature is behind a feature flag and ready for early testing. Start your agent with --watch mode for best results.

✨ Enhancements

  • Clean up stack traces with marimo check (#6423)
  • Add session_ttl parameter to create_asgi_app (#6419)
  • Add xterm addons and terminal resize (#6395)
  • Add tables and variable tool (#6396)
  • Download table regardless of cell selection (#6391)
  • Upload files, @-symbol for data, # for files in the Agent panel (#6389)
  • Add script to generate lint docs (#6379)
  • Refresh example notebooks (#6378)
  • marimo check --fix (#6288)
  • Update ToolManager to initialize in lifespans.py and use ToolBase for backend tool registration (#6375)
  • Expand app.run to allow programmatic overrides (#6359)
  • Better ACP commands, edit the notebook without --watch, slash-commands (#6360)
  • Generate multiple cells with "Generate with AI" (#6312)
  • Add progress_bar with iterator and total (#6424)
  • Add "open in terminal" to Agent sidebar (#6405)
  • Add async progress bar functionality (#6336)

🐛 Bug fixes

  • Allow parsing lists in app config kwargs (#6427)
  • Handle 'import *' correctly for marimo check (#6425)
  • Remove body tags when rendering custom HTML (#6421)
  • Pandas series with columns the same as index name (#6418)
  • Shelex paths for lsp (#6403)
  • Add 'class' as a builtin (#6399)
  • Handle nested msgspec parsing (#6382)
  • Add string conversion in DataTableColumn.__post_init__ (#6383)
  • Fix enter for renaming a cell not working (#6376)
  • Allow syntax errors (#6371)
  • Fix could not find function given request: FunctionCallRequest (#6365)
  • Fix InstallHook.js:1 in HTML, <tr> cannot be a child of <table> (#6367)
  • Use TypeVar for Cls in class_definition (#6364)
  • Allow invalid decorator permutations (#6357)
  • Allow test cells in the presence of async cells (#6355)
  • Handle empty tool results in agents (#6431)

📚 Documentation

  • Add agents docs and feature flag (#6409)
  • Add --unsafe-fixes and example rule (#6398)
  • Add syntax error check rule as a base example (#6384)

📝 Other changes

  • Tests for edge case file names (#6400)
  • Tool calls styling and streamdown (#6411)
  • Change styles for staged AI cells (#6410)
  • Frontend filename edge case tests (#6401)
  • Pass around single bytes of message for KernelMessage (#6380)
  • Lazyer initialization of tools (#6377)
  • Use nested op from data (#6381)
  • Pin duckdb <=1.3.0 for type-checking (#6374)

Contributors

Thanks to all our community and contributors who made this release possible: @Antyos, @bjoaquinc, @daizutabi, @dmadisetti, @Light2Dark, @maxkoretskyi, @mscolnick, @nojaf

And especially to our new contributors:

Full Changelog: 0.15.5...0.16.0

0.15.5

15 Sep 18:12

Choose a tag to compare

What's Changed

  • fix: show both inputs and task list in TODO mkdocs-marimo example by @superlopuh in #6351
  • Fix UI element updates not working in WASM due to request parsing order by @manzt in #6354

New Contributors

Full Changelog: 0.15.4...0.15.5

0.15.4

15 Sep 15:02

Choose a tag to compare

This is a quick follow-up to 0.15.3 with important bug fixes for how messaging works inside marimo.

Preview features

  • WIP Agent sidebar (Claude Code and Gemini CLI) (#6331)
  • Add marimo._ipc for multi-environment kernels (#6303)

Enhancements

  • Add progress_bar type hints (#6304)

Bug fixes

  • Remove dual JSON encoding in pyodide message callback (#6350)
  • Apply styles manually for actions menu (#6346)
  • Json encode handle more human types, and more human readable for tables (#6334)
  • Checks if sql variable data exists before accessing it (#6327)
  • Fallback to __dict__/__slots___ in enc_hook for unknown objects (#6332)

Documentation

  • Debugging notebooks (#6305)

Other changes

  • Update react-aria dependencies (#6344)
  • Introduce ToolBase and centralize tool implementations (#6309)

Contributors

Thanks to all our community and contributors who made this release possible: @Antyos, @bjoaquinc, @dmadisetti, @Light2Dark, @manzt, @mscolnick.

And especially to our new contributors:

Full Changelog: 0.15.3...0.15.4

0.15.3

11 Sep 18:31

Choose a tag to compare

This release focuses on AI enhancements and developer experience improvements, with better ways to provide context to AI chat and real-time feedback during package installation. Internal messaging improvements also make notebooks more responsive.

✨ Highlights

Enhanced AI context with files, cell outputs, and attachments

Provide richer context to AI chat by referencing files with #, cell outputs with @, and attaching images or other media (#6241, #6240, #6181, #6256). The AI can now "see" your code outputs, charts, tables, and files to provide more targeted assistance.

Cell outputs with @ context in AI chat

Real-time package installation progress

See live installation logs when marimo installs packages (#6279), giving feedback on what's happening during dependency installation without requiring the terminal.

Streaming package installation logs

✨ Enhancements

  • Basic Debugpy integration (#6311)
  • Add pycap to module name map (#6315)
  • Visibility for @ in Generate with AI, also add model dropdown (#6300)
  • Stream packages installation logs (#6279)
  • AI parse from parts in the backend, enable attachments for more providers (#6256)
  • Support empty directories with mo.ui.file_browser (#6261)
  • Migrate custom serde to msgspec (#6234)
  • Cell output for @ context w/ attachments for media output (#6240)
  • Lazy-load command pallete and sidebar panels (#6232)
  • Add Azure OpenAI provider support for existing models (#6231)
  • SQL cells can't both define and refer to itself (#6216)
  • Add warning when styling and sorting together (#6225)
  • Add mapping for upath to universal-pathlib (#6221)
  • Attachments in chat sidebar (#6181)
  • OpenAI version 5 models go above 4 (#6212)
  • Update Gemini2.5 models (#6215)
  • Reference files as context with # (#6241)

🐛 Bug fixes

  • Marimo export script with headers (#6320)
  • Attempt to fix intermittent CLI test failures (#6308)
  • Fix progress_bar.__iter__ type hint to return Iterator instead of Iterable (#6292)
  • Fix tools conversion (#6289)
  • Validate auth-token on websocket (#6284)
  • AI endpoints from msgspec migration (#6273)
  • AI endpoints from msgspec migration (more fixes) (#6278)
  • Set SQL footer's background colour and border color (#6267)
  • Create dataclass wrapper for VariableValue to resolve Pydantic compatibility (#6265)
  • Vertical layout cleanup for read mode rendering pipeline (#6248)
  • Fixed storybook setup for static layouts with window.MARIMO_STATIC (#6246)
  • Output cell fails to wrap text in HTML export (#6245)
  • Add additional test for lowest resolution bounds (#6198)
  • Remove uneccesary keys in google tools ai call (#6201)
  • If the gpu stats command fails, don't run it again on every usage check (#6202)

📚 Documentation

  • Move CLAUDE.md to snippets (#6276)
  • Add some notes on deploying programmatically (#6217)
  • Add CLAUDE.md to prompts docs (#6227)

🔬 Preview features

  • Add --server-startup-command (#6238)
  • Add MCP server integration with notebook inspection tools (#6222)

📝 Other changes

  • Refactor backend tools to use abstract class (#6235)
  • Upgrade AI SDK to v5 (#6242)
  • Added vertical layout one column setup with long text in cells to storybook (#6233)
  • Add asset URL support for templates and server (#6204)
  • Implement timeout option (#6196)
  • Fix storybook tailwind compatibility fixes (#6206)
  • Fix storybook's missing requestClientAtom dependency (#6208)

Contributors

Thanks to all our community and contributors who made this release possible: @bjoaquinc, @dmadisetti, @koaning, @Light2Dark, @loginoff, @lucharo, @manzt, @maxkoretskyi, @mscolnick, @tgbrooks, @wlach, @x2764tech, @zaneselvans.

And especially to our new contributors:

Full Changelog: 0.15.2...0.15.3

0.15.2

29 Aug 17:37

Choose a tag to compare

This release fixes a breaking dependency issue in 0.15.1

🐛 Bug fixes

  • Bump Websockets (>=0.14.2) (#6197)

0.15.1

28 Aug 18:57

Choose a tag to compare

This release focuses on performance improvements and AI capabilities, making marimo notebooks faster and more intelligent.

✨ Highlights

Configure "Displayed models" in the AI configuration

The new AI Model Configuration interface (#6140) allows users to customize which models appear in their AI dropdown, providing better control over models used for development.

Model Tab Changes

Add "Notebook Errors" as a context in any AI input

marimo copilot can now include notebook errors as context when you ask for help (#6158), making debugging faster and more intuitive.

Errors as chat context

When your code encounters issues like missing tables, import errors, or other exceptions, simply ask the AI chat "Can you help me fix these @Errors" and it will analyze the complete error context - including tracebacks, error messages, and relevant code - to provide targeted solutions.

✨ Enhancements

  • Use * wildcard for matching secret path (#6189)
  • include bigquery dialect and update codemirror-sql (#6178)
  • add custom model form (#6174)
  • Chalk -> chalk-diagrams (#6164)
  • Handle missing DOMParser global for VSCode extension (#6161)
  • Store previous prompts in local storage. cycle through with up/down arrow (#6157)
  • Handle errors in stream responses (#6153)
  • Start LSP and MCP in the background, avoid repetitive io reads (#6142)
  • Set observer for VsCode theme in useTheme (#6149)
  • Improved model order (#6146)
  • Add tab to configure "Displayed models" in the AI configuration (#6140)
  • Add support for extra headers in OpenAI configuration (#6134)
  • use opinionated standard sql dialect (#6128)
  • Check node version (#6130)
  • Add back thinking & model card (#6113)
  • Update module_name_to_pypi_name.py - psycopg2 (#6112)
  • Add "Notebook Errors" as a context in any AI input (#6158)

🐛 Bug fixes

  • More aggressive static parsing (#6176)
  • Turn off toplevel function post hook in run mode (#6180)
  • Fixes for functions and anywidget virtual file when auto-instantiate=off (#6184)
  • Ai sidebar styles and skip unecessary input parsing (#6177)
  • Fixed lossing focus of cell name input on context menu (#6175)
  • More try catches for datasource introspection (#6171)
  • Resolve CSS path issues in islands build (#6166)
  • Remove unecessary work in scoped state (#6160)
  • Use 'uv tree' to list packages if available (#6136)
  • Pin narwhals in typecheck (#6155)
  • Fix cellname overlap (#6133)
  • Proper handling of requests to /health, /.well-known and ./assets in the vite dev setup (#6135)
  • Chat sidebar perf improvments (#6129)
  • GitHub copilot resiliency with LSP proxy retry (#6131)
  • Adjust cell matching for --watch (#6127)
  • Show empty databases, but only for defined duckdb connections (#6119)
  • Catch script edgecase for convert (#6115)
  • Katex can't be italics (#6120)

📚 Documentation

  • Add _repr_mimebundle_ for img and tuple outputs (#6165)
  • Update language links in README_Traditional_Chinese.md (#6126)
  • Show bullet list (#6121)
  • Updated AI docs (#6065)
  • Fix mkdocs.yml to correct docs darkmode button action (#6105)

📝 Other changes

  • Enable qualified sql references to shadow regular variables (#6168)
  • Update all storybook dependencies to ^9.1.3 (#6169)
  • Get fully qualified name in sql refs (#5992)
  • loosen typings for experimental config on the backend (#6138)
  • Xdg config commons and migrate utils to use Path (#6101)
  • Strongly type backend experimental flag (#6100)

Contributors

Thanks to all our community and contributors who made this release possible: @dmadisetti, @koaning, @Light2Dark, @manzt, @maxkoretskyi, @meowesque, @mscolnick, @spagettnet, @tetsugo02

And especially to our new contributors:

Full Changelog: 0.15.0...0.15.1

0.15.0

21 Aug 21:47

Choose a tag to compare

This release comes with improvements to AI integration and support for multiple models. While these changes include several breaking changes to how models are configured (see below), they provide more flexibility for using different models for different tasks.

✨ Highlights

Use different models for different tasks

You can now configure separate models for chat, code editing, and autocomplete in an improved UI (#6018, #6011). Models use provider prefixes like ollama/qwen-coder or azure/gpt-4o.

Keyboard shortcuts for AI suggestions

Accept AI suggestions with Tab, reject with Escape (#6094).

Tables in AI chat

The chat sidebar now renders markdown tables (#6006).

🚨 Breaking changes

  • Use fully qualified model ids (#6003): Model IDs must now include provider prefixes (e.g., gpt-4o becomes openai/gpt-4o). Old IDs will show warnings but still work temporarily.

    # Before (marimo.toml)
    [ai.models]
    chat_model = "gpt-4o"
    autocomplete_model = "codestral-latest"
    # After (marimo.toml)
    [ai.models]
    chat_model = "openai/gpt-4o"
    autocomplete_model = "mistral/codestral-latest"
  • Multiple models for different roles (#6018): Config paths have moved - ai.open_ai.model is now ai.models.chat_model, completion.model is now ai.models.autocomplete_model. The completion.base_url and completion.api_key fields are removed in favor of provider-specific configs.

    # Before (marimo.toml)
    [ai.open_ai]
    model = "gpt-4o"
    
    [completion]
    model = "gpt-3.5-turbo"
    base_url = "https://api.openai.com/v1"
    api_key = "sk-..."
    # After (marimo.toml)
    [ai.models]
    chat_model = "openai/gpt-4o"
    autocomplete_model = "openai/gpt-3.5-turbo"
    
    [ai.openai]
    api_key = "sk-..."
  • More AI config settings for different providers (#6011): Provider-specific endpoints (azure, ollama, open_ai_compatible) now have their own config sections.

    # Before (marimo.toml)
    [ai.openai]
    base_url = "https://myazure.openai.azure.com/openai/deployments/gpt-4o"
    model = "gpt-4o"
    # After (marimo.toml)
    [ai.models]
    chat_model = "azure/gpt-4o"
    
    [ai.azure]
    base_url = "https://myazure.openai.azure.com"
    api_version = "2024-02-01"

✨ Enhancements

  • Forward Ctrl+Escape from CodeMirror to parent elements (#6114)
  • Add thinking tag and a model card for dropdown (#6106)
  • More lenient AI config, and more descriptive error (#6096)
  • Add hotkeys to AI completion (#6094)
  • Use descriptive link text instead of 'here' (#6090)
  • Support -h flag for help in CLI (#6089)
  • update logic for determining when AI is enabled (#6081)
  • Add AI model dropdown for "Generate with AI" (#6064)
  • Patch fetch with more leniant file matching (#6073)
  • Handle blob protocol in runtime manager (#6071)
  • Update AI provider and conversion functions for async support (#6070)
  • Cache sql parsing (#6068)
  • Add GitHub as a provider, add OpenAI models (#6044)
  • Update dropdown for model select (#6029)
  • Non-blocking formatting and auto-export (#6022)
  • Better fill-in-the-middle prompting (#6028)
  • Add send button for 'Generate with AI' (#6017)
  • Fallback to os.environ for AI API keys (#6016)
  • Add svgs and improve ui for chat config (#6013)
  • Include code for 'Generate with AI' by default & fix flakey test (#6014)
  • Support tables in AI chat sidebar (#6006)
  • Using XDG_STATE_HOME environment variable to support the Linux XDG Base Directory (#6048)

🐛 Bug fixes

  • Correct command mode handling for vim vs non-vim modes (#6092)
  • Remove tools if empty (#6109)
  • Properly detect Linux platform for hotkeys (#6099)
  • Check for module type for sql engine (#6103)
  • "No outline-solid" -> "No outline found" (#6091)
  • Clean up finder/module logic for recursion (#6075)
  • Only use max_completion_tokens on reasoning models (#6082)
  • Clamp height for prompt input in generate height (#6083)
  • Don't do health check in static notebooks (#6079)
  • Clean up pytest default name (#6077)
  • Stdout and stderr should not be stoppable by users (#5955)
  • Ignore table filters from unknown columns (#6069)
  • Close completion without going into command mode (#6059)
  • Fix borderless cell dividers after Tailwind v4 migration (#6051)
  • Fix Tailwind v4 shadow colors (#6050)
  • Fix rtc null pointer (#6047)
  • Check for array types better in duckdb (#6030)
  • Refactor so that sql engines uses the same logic for returning df (#5991)
  • Stub and restore cache meta values (#5996)
  • Convert time duration to numeric for column explorer (#6087)

📚 Documentation

  • Document command mode vim bindings (Mac, Windows, Linux) (#6004)
  • Update and fix Spanish README translation (#6036)
  • Add dataflow blog, fix reddit link (#6037)
  • Add warning about Ollama /v1 endpoint to prevent 404 errors (#6009)

🔬 Preview features

  • Fix tools feature flag name (#6097)
  • Improved SQL completions, linting, and hover (#5938)

📝 Other changes

  • Tools being empty (#6110)
  • Revert "add thinking tag and a model card for dropdown" (#6111)
  • Update @marimo-team/codemirror-ai to v0.3.2 (#6102)
  • Cleanup docs on mode dropdown (#6095)
  • Update dependency mermaid to v11.10.0 [security] (#6078)
  • Use as_series=False in assert_frame_equal to compare Narwhals dataframes (#6035)
  • Update react-aria dependencies (#6040)

Contributors

Thanks to all our community and contributors who made this release possible: @akshayka, @AldoHdz97, @dmadisetti, @FBruzzesi, @jonathanyale, @Light2Dark, @manzt, @mscolnick, @TDYQ-Liu, @thliang01

And especially to our new contributors:

Full Changelog: 0.14.17...0.15.0

0.14.17

11 Aug 20:38

Choose a tag to compare

This release introduces several conveniences for exploring and visualizing in-memory objects, along with bug fixes.

✨ Highlights

Inspect objects with mo.inspect()

This release adds a new mo.inspect() utility inspired by rich.inspect, providing a way to explore Python objects interactively within marimo notebooks (#5936).

obj = MyClass()
mo.inspect(obj)

Shows attributes, methods, and documentation in a structured format instead of unhelpful <object at 0x...> output.

Improved ibis integration

Ibis tables now render using marimo's native formatters (#5855), and there is now support for Ibis catalogs, enabling multi-database queries (#5978). Thanks to community member @kyrre for both contributions!

Enhanced AI context

Better @ completions for variables, dataframes, and SQL tables within chat and AI cells (#5962).

Cross-cell variable deletion

You can now use del to delete variables from other cells to reclaim memory (#5966). Cells that delete a variable automatically depend on all cells that reference it. This should be considered an advanced feature but can be useful for memory-intensive workflows with large datasets or tensors.

🚨 Breaking changes

  • Sandbox mode now explicitly requires a notebook file (#5511)

    marimo edit --sandbox now raises a UsageError when run without specifying a notebook file. Previously, sandbox mode allowed editing multiple notebooks but they would share the same environment, breaking isolation and potentially poisoning the shared venv. Multi-notebook sandboxing may be supported in the future with better-defined behavior.

✨ Enhancements

  • Ibis catalogs (#5978)
  • AI context registry + codemirror decorated resources (#5962)
  • Allow deleting variables defined by other cells (#5966)
  • Add mo.inspect for rich object introspection (#5936)
  • Recursive key completion (#5922)
  • Formatters for Ibis objects (#5855)
  • Enable Ctrl+[ vim escape on Windows (#5914)
  • Opinionated formatters work on subclasses. improve searching perf for formatters (#5899)
  • Editable columns in data editor (#5848)
  • Add smart limits and file count display to mo.ui.file_browser (#5882)
  • Reorganize runtime settings in user configuration menu (#5891)
  • Support hiding code in setup cells (#5852)
  • Improve cache for anywidget (#5879)

🐛 Bug fixes

  • Allow builtin functions to be hashed for cache (#5994)
  • Keep box-shadow CSS definitions on single lines (#5985)
  • Make it possible to close open snippet (#5954)
  • Revert logic for steps in tracing-chart (#5968)
  • Allow caching on embedded apps (#5957)
  • As_html for svg and add tests (#5947)
  • Formatter for 'type()' and make ibis formatters opinionated (#5948)
  • Do not run create __marimo__/cache by default (#5910)
  • Improved robustness of cache wrapper in module contexts (#5873)
  • Bin step was too small for large bin values (#5924)
  • Normalize line endings in HTTP responses for Windows generated scripts (#5916)
  • Forward config parameter from plotly fig.show() (#5880)
  • Find first directory parent for __file__ in mo.notebook_dir (#5906)
  • Fix Windows multiprocessing test hanging after pytest path fix (#5903)
  • Fix __file__ in embedded notebooks (#5854)
  • Handle double interruptions (#5892)
  • Performant charts doesn't show stats (#5874)
  • Add fallback to csv for col summaries (#5871)

📚 Documentation

  • Expound upon mo.cache expectations and limitations (#5917)
  • Rename "CODE" to "PYTHON" in cell type selector UI (#5913)
  • Add a video for lazy execution (#5890)
  • Advise that a new vs code extension is coming soon (#5878)
  • Document working with marimo notebooks in existing projects (#5839)

📝 Other changes

  • Remove dead code (#5997)
  • Update polars and revert test changes (#5987)
  • Migrate to Tailwind CSS v4 (#5979)
  • Refactor frontend request layer to use dependency injection (#5971)
  • Allow dangerous sandbox to be set with an environment variable (#5958)
  • Update codemirror dependencies (#5951)
  • Don't include traceback in session deserialzation (#5915)
  • Inline-completions parsing issue (#5931)
  • Skip mcp requirements if no tools are enabled (#5902)
  • Refactor pending delete service with reducer pattern (#5900)
  • Refactor CellArray/Cell to use atom-based state management (#5897)

Contributors

Thanks to all our community and contributors who made this release possible: @akshayka, @AnirudhDagar, @bjoaquinc, @davidangarita1, @dmadisetti, @kyrre, @Light2Dark, @manzt, @mscolnick, @thliang01, @zilto.

And especially to our new contributors:

Full Changelog: 0.14.16...0.14.17

0.14.16

01 Aug 14:30

Choose a tag to compare

This release extends code completion with basedpyright support and includes several important bug fixes.

✨ Enhancements

  • Clear selection or autocomplete popup first before exiting to command mode (#5849)
  • Use svg renderer and support enum charts (#5846)
  • Add basedpyright (#5712)

🐛 Bug fixes

  • Top-level cache decorator with additional deps (#5862)
  • Make reusable cell link only clickable on text, not entire block (#5851)
  • Set combobox to truncate (#5829)
  • Fix missing !pip transform in notebook converter (#5841)

📝 Other changes

  • Add fallback to csv for col summaries (#5871)
  • Update dependency openapi-typescript to ^7.8.0 (#5869)
  • marimo-snippets on dataframe page (#4638)
  • Use break-word in row-viewer panel (#5845)

Full Changelog: 0.14.15...0.14.16