marimo-team / marimo

A reactive notebook for Python — run reproducible experiments, execute as a script, deploy as an app, and version with git.

Home Page:https://marimo.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

yaml is not a default library (woops)

dmadisetti opened this issue · comments

Describe the bug

Normally I build hermetically, so no sure how I missed this. I thought I even looked it up- but apparently yaml is not a default library. I only realized when I tried to use the new build on NixOs this morning.

I'm happy to fix my mistake- I think pyyaml is the best bet. Lmk if it should be a optional dep or full dep, or whether we just just remove it

Environment

0.6.0 NixOS

Code to reproduce

using just marimo on nix to do anything with markdown.

Got it. PyYaml is a dep of pytest, which is why I never got a failure:

https://github.com/pytest-dev/pytest/blob/00be7c07390fa5b85882bb19bbb246732a5d84cb/tox.ini#L62

Very annoying

We could make it an optional dependency and when a user tries to export as markdown, we can error saying they need to install it? I'm not sure how command pyyaml is and if it has the potential for version conflicts

It's common enough that it's one of pytests only dependencies, and common enough that there was talk about making it part of default: yaml/pyyaml#516

Also common enough that import yaml is already supported by WASM: https://marimo.app/#code/JYWwDg9gTgLgBCAhlUEBQaD6mDmBTAOzykRjwBNMB3YGACzgF44AiABgDoBWDgZgFpyeAG4BGACws0iMGCYJkqDgEFZACgCUGNAAEZYDgGM8AGxNohAMzjZNALjRwncUJFhwAnohDnncKHgwAK5QBJ7eJgA02sDW2ATeeNhMzCzYSMAE2CwOfvocUEEEmmhAA

Also pretty stable, last commit was 6 months ago.


Not trying to suggest either way. I think keeping it optional and most people wouldn't even notice (no one has raised a bug report yet) - but I am definitely going to add it to the nix package though.

Yea - lets include it by default then. thanks for brining this up, do you mind making that change?