Highlights ⭐
1. **SQL Engine Support**. Connect to various databases like postgresql, mysql, snowflake and more, using your preferred SQL engine.
This release adds support for using for multiple SQL connection libraries, such as SQLModel and SQLAlchemy. You can now define SQL connections in your code like:
python
import sqlalchemy
import sqlmodel
import duckdb
Create an in-memory SQLite database with SQLAlchemy
sqlite_engine = sqlachemy.create_engine("sqlite:///:memory:")
Create a Postgres database with SQLModel
postgres_engine = sqlmodel.create_engine("postgresql://username:passwordserver:port/database")
Create a DuckDB connection
duckdb_conn = duckdb.connect("file.db")
And then select which connection to use in the SQL cell.
![image](https://github.com/user-attachments/assets/8ba7f094-aefd-4cfc-95c0-19da5ee3378e)
h/t Light2Dark
2. **Markdown file-format improvements** - Markdown notebooks (i.e. `marimo edit notebook.md`) has an improved syntax format: `python {.marimo}`. You can also use SQL cells in the markdown file-format, using `sql {.marimo}`. To learn more, run `marimo tutorial markdown-format`
h/t dmadisetti
4. **Markdown syntax** - Added support for details, admonitions, and emojis in markdown
5. **Performance & Reliability** - Lots of bug fixes for better resource cleanup and memory management, as well as disabling features not used in run-mode.
What's Changed
* feat: SQL engines by mscolnick in https://github.com/marimo-team/marimo/pull/3563
* update: update code block to python {.marimo} by dmadisetti in https://github.com/marimo-team/marimo/pull/3387
* chore: add hatch build hook to build marimo when installed from github by mscolnick in https://github.com/marimo-team/marimo/pull/3639
* docs: typo by mscolnick in https://github.com/marimo-team/marimo/pull/3641
* tests: add tests for try-format by mscolnick in https://github.com/marimo-team/marimo/pull/3643
* fix: duckdb querying dataframes with engines by mscolnick in https://github.com/marimo-team/marimo/pull/3642
* fix: show 'Clear Output' cell action when console has output by Light2Dark in https://github.com/marimo-team/marimo/pull/3650
* fix(deps): update all npm non-major dependencies by renovate in https://github.com/marimo-team/marimo/pull/3655
* improve: run mode performance for streams by akshayka in https://github.com/marimo-team/marimo/pull/3648
* chore(deps): update dependency scikit-bio to >=0.6.3 by renovate in https://github.com/marimo-team/marimo/pull/3647
* chore(deps): update dependency google-generativeai to v0.8.4 by renovate in https://github.com/marimo-team/marimo/pull/3646
* fix: correctness of formatting by mscolnick in https://github.com/marimo-team/marimo/pull/3644
* improvement: removed border and and fix tooltips when multi-column view by Light2Dark in https://github.com/marimo-team/marimo/pull/3649
* fix: date range not defaulting to `start` and `stop` by Hofer-Julian in https://github.com/marimo-team/marimo/pull/3651
* chore: update year in copyright notice script by akshayka in https://github.com/marimo-team/marimo/pull/3657
* perf: resource cleanup, don't start module reloader in run mode by akshayka in https://github.com/marimo-team/marimo/pull/3656
* chore: add PERF ruff rules by mscolnick in https://github.com/marimo-team/marimo/pull/3662
* chore: enable preview rules from ruff by mscolnick in https://github.com/marimo-team/marimo/pull/3663
* fix: handle TOML parsing errors in config reader by devin-ai-integration in https://github.com/marimo-team/marimo/pull/3671
* fix: differentiate methods and properties in dark theme by devin-ai-integration in https://github.com/marimo-team/marimo/pull/3673
* docs: markdown extensions by akshayka in https://github.com/marimo-team/marimo/pull/3658
* improvement: inline layouts when exported to wasm by mscolnick in https://github.com/marimo-team/marimo/pull/3661
* flaky: add warning for flaky test opposed to failure by dmadisetti in https://github.com/marimo-team/marimo/pull/3674
* fix: md format fix for columns and sql engine by dmadisetti in https://github.com/marimo-team/marimo/pull/3664
* improvement: show engine's tables in the datasources panel by mscolnick in https://github.com/marimo-team/marimo/pull/3665
* fix: filtering datasets based on variables by mscolnick in https://github.com/marimo-team/marimo/pull/3676
* [pre-commit.ci] pre-commit autoupdate by pre-commit-ci in https://github.com/marimo-team/marimo/pull/3678
* improv: update the sql dropdown to a better design and show disconnected engine by Light2Dark in https://github.com/marimo-team/marimo/pull/3682
* Add openai-whisper to module name list by koaning in https://github.com/marimo-team/marimo/pull/3681
* chore(deps): update dependency vitest to v3.0.5 [security] by renovate in https://github.com/marimo-team/marimo/pull/3684
* smoke test: docstring_to_markdown by mscolnick in https://github.com/marimo-team/marimo/pull/3686
* fix: checks whether latestEngineSelected is in list of engines by Light2Dark in https://github.com/marimo-team/marimo/pull/3685
* fix: sql dropdown when initialized by mscolnick in https://github.com/marimo-team/marimo/pull/3687
New Contributors
* Hofer-Julian made their first contribution in https://github.com/marimo-team/marimo/pull/3651
**Full Changelog**: https://github.com/marimo-team/marimo/compare/0.10.19...0.11.0