Releases: koaning/wigglystuff
Releases · koaning/wigglystuff
v0.4.1
Changed
Matrix,ModuleTreeWidget, andChartSelectnow render a small "graduated to marimo core" hint in the cell when instantiated inside a marimo notebook, with a link to the equivalent marimo built-in (marimo.ui.matrix, marimo's built-in PyTorch formatter, andmarimo.ui.matplotlibrespectively). The widgets continue to work as before in Jupyter and other anywidget hosts.
v0.4.0
Fixed
EnvConfigno longer syncs configured secret values in its exported anywidget state, preventing marimo static HTML exports from embedding environment-loaded or manually entered secrets.
Removed
WandbChartwidget removed due to a security concern: marimo's static HTML export embeds all anywidget traitlets, which would leak the user-suppliedapi_keyinto any exported notebook.
v0.3.5
v0.3.4
Added
Treemapwidget: zoomable hierarchical treemap rendered on canvas with hover previews, clickable path navigation, leaf selection, contextual recoloring during zoom, and constructors for direct{name, value, children}dicts, path mappings, records, or dataframes. Ported from the Svelte components inkoaning/pytest-duration-insights.NestedTablewidget: recursive expandable table showing name, summed value, and share of the root total. Shares the same hierarchy shape andfrom_paths/from_records/from_dataframeclassmethods asTreemap.
v0.3.2
Added
ApiDoc.to_markdown()method to export API documentation as a Markdown string for use in READMEs.ApiDocsignature block now has Python syntax highlighting, matching code blocks in docstrings.
Changed
- Moved example notebooks from
examples/todemos/folder. - Added infinite zoom (Droste effect) example to the docs gallery.
Painttoolbar icons: replaced generic pencil icons with a distinct pen (brush) and highlighter (marker) to make the tools easier to tell apart.
v0.2.20
Added
EnvConfig.get(name, default=None)method for dict-like access that returns a default value instead of raisingKeyError.- Optional
variablesparameter toEnvConfig.require_valid()to check only a subset of configured variables, allowing some to remain unset.
v0.2.19
Added
- New
ChartSelectwidget for interactive region selection on matplotlib charts. Supports box and lasso (freehand) selection modes, returns selection coordinates in data space, and includes helper methods (get_mask(),get_indices(),get_bounds(),contains_point()) for filtering data points. Also supportsfrom_callback()factory for auto-updating charts.
v0.2.18
v0.2.17
Changed
- Breaking:
ChartPuck.from_callbacknow passes the widget to the draw function instead of scalar coordinates. The signature changed fromdraw_fn(ax, x, y)todraw_fn(ax, widget), giving access to all puck positions viawidget.xandwidget.ylists.
Added
- New
redraw()method onChartPuckfor manually triggering chart re-renders when external state changes (e.g., dropdown selections). Only available for widgets created viafrom_callback(). - Added Step, Nearest, Quadratic, and Barycentric interpolation methods to the ChartPuck spline demo.
v0.2.15
Added
- Playwright browser integration tests for
SortableListwidget, verifying full browser-to-Python round-trip communication. Tests cover rendering, adding/removing/editing items, and Python state synchronization. - New
test-browseroptional dependency group and CI workflow for running browser tests with marimo.
Removed
- Removed unused
pydantic-aidependency that was pulling inopenaiand breaking WASM demos.