Skip to content

Blog

Version 0.1.46

This release focuses on improving the test suite by reorganizing and refactoring tests for better maintainability and clarity. It also includes documentation updates and minor formatting fixes.

New Features

  • Split the large test_utils.js file into multiple focused test files that mirror the source code structure, improving test organization and readability (e676ac) (Eric Ma)
  • Created a shared test environment setup file (test_setup.js) and an automatic test discovery script (run_tests.js) to streamline testing workflows (e676ac) (Eric Ma)

Bug Fixes

  • Fixed formatting issues in the test_flashcards.js file to improve code consistency (b8b41d) (Eric Ma)

Deprecations

  • None

Version 0.1.45

This release improves version management by making pyproject.toml the single source of truth and adds a fallback for version reading in Modal deployments. It also introduces a new documentation site with automated deployment, clarifies the code contribution policy, and fixes issues in the auto-release workflow.

New Features

  • Added a new MkDocs-based documentation site with Material theme, including CI/CD for automatic deployment and a Diataxis-based navigation structure. The docs link was added to the main README. (df2d5b) (Eric Ma)
  • Introduced a canvas-chat CLI command to display the current version, leveraging the new versioning system. (fb03de) (Eric Ma)
  • Added a code contribution policy to CONTRIBUTING.md, encouraging detailed feature requests via GitHub issues and recommending agentic coding tools with Plan Mode for exploration before posting. (519c5f) (Eric Ma)

Bug Fixes

  • Added a fallback to read the version from pyproject.toml directly in Modal deployments, which lack package metadata, and included pyproject.toml in the Modal image to support this. (9f31b4) (Eric Ma)
  • Fixed the auto-release workflow to stage pre-commit fixes before verification. (48b2a0) (Eric Ma)
  • Fixed trailing whitespace in the v0.1.44 release notes. (4b3b05) (Eric Ma)

Deprecations

  • Removed the .bumpversion.cfg configuration file and replaced bump2version with uv version --bump in the auto-release workflow, making pyproject.toml the single source of truth for version numbers. (fb03de) (Eric Ma)
  • Removed the PAGES_SETUP.md file as part of documentation restructuring. (217163) (Eric Ma)

Version 0.1.44

This release introduces a new modal-based code editor with convenient keyboard shortcuts, improving the user experience and workflow efficiency. It also includes several bug fixes to enhance canvas node rendering and ensure the model dropdown populates correctly when triggering code generation.

New Features

  • Replaced the inline CodeMirror overlay with a cleaner modal editor and added keyboard shortcuts for editing nodes, running code, and AI actions, improving usability and power user workflow (cc67fb) (Eric Ma)

Bug Fixes

  • Fixed the model dropdown not populating when opening code generation with Shift+A by properly passing the models array and current model (a79182) (Eric Ma)
  • Improved canvas node rendering to prevent double rendering, preserve selection state during animations, and eliminate visual stuttering for a smoother user experience (58dcf6) (Eric Ma)

Deprecations

  • None

Version 0.1.43

This release introduces enhanced flexibility for configuring endpoints in admin mode by allowing environment variable-based settings. This change simplifies managing different environments such as development, testing, and production without modifying the configuration file.

New Features

  • Support endpoint configuration via environment variables in admin mode, enabling the same config.yaml to be used across dev/test/prod environments by setting different endpoint values through environment variables (dd504a) (Eric Ma)

Bug Fixes

  • None

Deprecations

  • None

Version 0.1.42

This release includes important fixes to improve local development experience by correcting static file paths and setting appropriate base paths.

New Features

  • No new features were added in this release.

Bug Fixes

  • Fixed static file paths in index.html to use relative paths for better compatibility during local development (3453b1) (Eric Ma)

Deprecations

  • No deprecations in this release.

Version 0.1.41

This version introduces support for deploying the application behind load balancers or reverse proxies that use base path prefixes. It ensures that all API calls and static asset loading correctly respect these base paths, improving flexibility in various hosting environments.

New Features

  • Added utility functions to detect and handle base paths, enabling API endpoints and static assets to work correctly when deployed behind load balancers or reverse proxies with path prefixes (1c78d2) (Eric Ma)

Bug Fixes

  • N/A

Deprecations

  • N/A

Version 0.1.40

This release includes an important bug fix to improve the reliability of running multiple research tasks in parallel.

New Features

  • No new features were added in this release.

Bug Fixes

  • Prevent parallel research tasks from interfering with each other by capturing necessary variables in closure constants before handling SSE streams. This resolves an issue where starting a second research task would cause the first one to display 'empty research instructions'. (0ed50f) (Eric Ma)

Deprecations

  • No deprecations in this release.

Version 0.1.39

This release introduces a new DuckDuckGo fallback for the research command, adds stop and continue controls for research nodes, and improves documentation and tests to reflect recent changes.

New Features

  • Added a DuckDuckGo fallback search option for the /research command, enabling iterative search loops with parallel fetching, relevance filtering, retry logic, and error handling. The frontend now automatically uses this fallback when the Exa API key is missing, and the provider is shown in the slash command autocomplete. (4e3f13) (Eric Ma)
  • Added STOP and CONTINUE buttons to research nodes, allowing users to stop and resume research. The model used is displayed in the research node header, and the continue functionality restarts research on the same node using stored original instructions and context. (10474a) (Eric Ma)

Bug Fixes

  • Fixed the DDGResearchRequest test to correctly reflect that the api_key field is optional, ensuring only instructions and model are required. (50c9a0) (Eric Ma)
  • Updated deep-research documentation formatting to comply with markdownlint and corrected information to indicate that research can now be stopped and resumed, removing outdated statements. (393cde) (Eric Ma)

Deprecations

  • None in this release.

Version 0.1.38

This release introduces a new admin mode designed for enterprise deployments, enabling server-side API key management and enhanced security. It also includes a bug fix to ensure proper dependency management for the Modal image in admin mode.

New Features

  • Added an admin mode for enterprise deployments that supports server-side API key management. This includes a new AdminConfig class for loading configuration and credentials, a CLI flag to enable admin mode, an API endpoint for frontend detection, credential injection into LLM endpoints, frontend UI updates to hide sensitive sections, centralized request building, comprehensive unit tests, and updated documentation. (56fcb8) (Eric Ma)

Bug Fixes

  • Added the missing ruamel.yaml dependency to the Modal image to support admin mode functionality. (e280e5) (Eric Ma)

Deprecations

  • None

Version 0.1.37

This release focuses on enhancing the user experience during package installation and code execution. It introduces smooth, real-time installation progress updates within an output drawer, improves UI responsiveness by eliminating blocking animations, and adds AI-augmented code generation with DataFrame introspection. Additionally, Pyodide is preloaded for faster execution, and various fixes improve canvas interaction and drawer behavior.

New Features

  • Show installation progress in the output drawer with smooth animations, including auto-expand/collapse and dedicated styling for progress messages (d32a87) (Eric Ma)
  • Surface package installation progress in real-time within code nodes, showing which packages are being installed and from which source (4520c4) (Eric Ma)
  • Improve package installation with better error handling, clearer feedback, and emoji indicators for progress (c551db) (Eric Ma)
  • Add AI-augmented code generation with DataFrame introspection, including a new /code command, inline AI button, CodeMirror editor, and streaming code generation support (e185a9) (Eric Ma)
  • Preload Pyodide runtime when code nodes are created to speed up execution, with loading state tracking and UI updates (40c846) (Eric Ma)
  • Add CSV upload and Python code execution with Pyodide, including drag & drop CSV parsing, new node types, and automatic package installation (f4d16e) (Eric Ma)

Bug Fixes

  • Fix drawer animation to skip redundant animations on re-render and improve browser yielding for smoother UI updates (64fc34) (Eric Ma)
  • Keep drawer open after installation completes and preserve install progress messages for better user visibility (763111) (Eric Ma)
  • Allow canvas interaction such as pan and zoom during package installation by yielding to the browser event loop (75206e) (Eric Ma)
  • Simplify drawer behavior by removing blocking animations and freezing, enabling smooth updates and interaction (682a0a) (Eric Ma)
  • Eliminate drawer flickering during package installation by updating content without full re-renders (5f3d25) (Eric Ma)
  • Prevent canvas panning when scrolling inside the CodeMirror editor to improve user experience (bbd119) (Eric Ma)
  • Fix /code command to create standalone code nodes without requiring CSV input (436fdde) (Eric Ma)
  • Replace non-existent findNonOverlappingPosition method with autoPosition for positioning logic (833cf0a) (Eric Ma)
  • Remove redundant matplotlib-specific installation logic to simplify package handling (0fe8267) (Eric Ma)

Deprecations

  • None in this release