From 5e449cdd94a1c17c893fa517edcbf28dac166d92 Mon Sep 17 00:00:00 2001 From: Quentin Date: Wed, 10 Dec 2025 16:16:53 +0100 Subject: [PATCH] v1.1.0 --- .vscode/launch.json | 2 +- CHANGELOG.md | 10 ++++++++ distribution/zed/extension.toml | 14 +++++------ pyproject.toml | 2 +- tests/acp/test_acp.py | 2 +- ...test_snapshot_shows_basic_conversation.svg | 4 ++-- ...izontal_scrolling_for_long_code_blocks.svg | 2 +- ...shot_shows_release_update_notification.svg | 2 +- uv.lock | 2 +- vibe/cli/clipboard.py | 7 +++++- vibe/core/__init__.py | 2 +- vibe/core/config.py | 23 +++++++++++++++++-- 12 files changed, 53 insertions(+), 19 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index f63f9e5..f685d82 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,5 +1,5 @@ { - "version": "1.0.6", + "version": "1.1.0", "configurations": [ { "name": "ACP Server", diff --git a/CHANGELOG.md b/CHANGELOG.md index 115e7a5..d126f06 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.1.0] - 2025-12-10 + +### Fixed + +- fixed crash in some rare instances when copy-pasting + +### Changed + +- improved context length from 100k to 200k + ## [1.0.6] - 2025-12-10 ### Fixed diff --git a/distribution/zed/extension.toml b/distribution/zed/extension.toml index c1df053..b1f71f4 100644 --- a/distribution/zed/extension.toml +++ b/distribution/zed/extension.toml @@ -1,7 +1,7 @@ id = "mistral-vibe" name = "Mistral Vibe" description = "Mistral's open-source coding assistant" -version = "1.0.6" +version = "1.1.0" schema_version = 1 authors = ["Mistral AI"] repository = "https://github.com/mistralai/mistral-vibe" @@ -11,25 +11,25 @@ name = "Mistral Vibe" icon = "./icons/mistral_vibe.svg" [agent_servers.mistral-vibe.targets.darwin-aarch64] -archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.0.6/vibe-acp-darwin-aarch64-1.0.6.zip" +archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.1.0/vibe-acp-darwin-aarch64-1.1.0.zip" cmd = "./vibe-acp" [agent_servers.mistral-vibe.targets.darwin-x86_64] -archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.0.6/vibe-acp-darwin-x86_64-1.0.6.zip" +archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.1.0/vibe-acp-darwin-x86_64-1.1.0.zip" cmd = "./vibe-acp" # [agent_servers.mistral-vibe.targets.linux-aarch64] -# archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.0.6/vibe-acp-linux-aarch64-1.0.6.zip" +# archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.1.0/vibe-acp-linux-aarch64-1.1.0.zip" # cmd = "./vibe-acp" [agent_servers.mistral-vibe.targets.linux-x86_64] -archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.0.6/vibe-acp-linux-x86_64-1.0.6.zip" +archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.1.0/vibe-acp-linux-x86_64-1.1.0.zip" cmd = "./vibe-acp" # [agent_servers.mistral-vibe.targets.windows-aarch64] -# archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.0.6/vibe-acp-windows-aarch64-1.0.6.zip" +# archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.1.0/vibe-acp-windows-aarch64-1.1.0.zip" # cmd = "./vibe-acp.exe" [agent_servers.mistral-vibe.targets.windows-x86_64] -archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.0.6/vibe-acp-windows-x86_64-1.0.6.zip" +archive = "https://github.com/mistralai/mistral-vibe/releases/download/v1.1.0/vibe-acp-windows-x86_64-1.1.0.zip" cmd = "./vibe-acp.exe" diff --git a/pyproject.toml b/pyproject.toml index b5feb5b..fe40f8d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "mistral-vibe" -version = "1.0.6" +version = "1.1.0" description = "Minimal CLI coding agent by Mistral" readme = "README.md" requires-python = ">=3.12" diff --git a/tests/acp/test_acp.py b/tests/acp/test_acp.py index 8d38faa..c5dd142 100644 --- a/tests/acp/test_acp.py +++ b/tests/acp/test_acp.py @@ -351,7 +351,7 @@ class TestInitialization: mcpCapabilities=McpCapabilities(http=False, sse=False), ) assert response.result.agentInfo == Implementation( - name="@mistralai/mistral-vibe", title="Mistral Vibe", version="1.0.6" + name="@mistralai/mistral-vibe", title="Mistral Vibe", version="1.1.0" ) vibe_setup_method = next( ( diff --git a/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg b/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg index cab55e1..ca9347a 100644 --- a/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg +++ b/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg @@ -162,7 +162,7 @@ - + ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ @@ -198,7 +198,7 @@ >Ask anything... ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ -/test/workdir12% of 100k tokens +/test/workdir6% of 200k tokens diff --git a/tests/snapshots/__snapshots__/test_ui_snapshot_code_block_horizontal_scrolling/test_snapshot_allows_horizontal_scrolling_for_long_code_blocks.svg b/tests/snapshots/__snapshots__/test_ui_snapshot_code_block_horizontal_scrolling/test_snapshot_allows_horizontal_scrolling_for_long_code_blocks.svg index b725549..90fef87 100644 --- a/tests/snapshots/__snapshots__/test_ui_snapshot_code_block_horizontal_scrolling/test_snapshot_allows_horizontal_scrolling_for_long_code_blocks.svg +++ b/tests/snapshots/__snapshots__/test_ui_snapshot_code_block_horizontal_scrolling/test_snapshot_allows_horizontal_scrolling_for_long_code_blocks.svg @@ -206,7 +206,7 @@ >Ask anything... ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ -/test/workdir0% of 100k tokens +/test/workdir0% of 200k tokens diff --git a/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg b/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg index ec53ff0..2c138f5 100644 --- a/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg +++ b/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg @@ -198,7 +198,7 @@ >Ask anything... ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ -/test/workdir0% of 100k tokens +/test/workdir0% of 200k tokens diff --git a/uv.lock b/uv.lock index c3deb46..737c8f9 100644 --- a/uv.lock +++ b/uv.lock @@ -661,7 +661,7 @@ wheels = [ [[package]] name = "mistral-vibe" -version = "1.0.6" +version = "1.1.0" source = { editable = "." } dependencies = [ { name = "agent-client-protocol" }, diff --git a/vibe/cli/clipboard.py b/vibe/cli/clipboard.py index 33bcea7..429f097 100644 --- a/vibe/cli/clipboard.py +++ b/vibe/cli/clipboard.py @@ -12,7 +12,12 @@ def copy_selection_to_clipboard(app: App) -> None: continue selection = widget.text_selection - result = widget.get_selection(selection) + + try: + result = widget.get_selection(selection) + except Exception: + continue + if not result: continue diff --git a/vibe/core/__init__.py b/vibe/core/__init__.py index 78604af..852e031 100644 --- a/vibe/core/__init__.py +++ b/vibe/core/__init__.py @@ -1,6 +1,6 @@ from __future__ import annotations __all__ = ["__version__", "run_programmatic"] -__version__ = "1.0.6" +__version__ = "1.1.0" from vibe.core.programmatic import run_programmatic diff --git a/vibe/core/config.py b/vibe/core/config.py index 891b2db..290a40d 100644 --- a/vibe/core/config.py +++ b/vibe/core/config.py @@ -299,7 +299,7 @@ class VibeConfig(BaseSettings): vim_keybindings: bool = False disable_welcome_banner_animation: bool = False displayed_workdir: str = "" - auto_compact_threshold: int = 100_000 + auto_compact_threshold: int = 200_000 context_warnings: bool = False textual_theme: str = "textual-dark" instructions: str = "" @@ -539,7 +539,26 @@ class VibeConfig(BaseSettings): @classmethod def _migrate(cls) -> None: - pass + if not CONFIG_FILE.exists(): + return + + try: + with CONFIG_FILE.open("rb") as f: + config = tomllib.load(f) + except (OSError, tomllib.TOMLDecodeError): + return + + needs_save = False + + if ( + "auto_compact_threshold" not in config + or config["auto_compact_threshold"] == 100_000 # noqa: PLR2004 + ): + config["auto_compact_threshold"] = 200_000 + needs_save = True + + if needs_save: + cls.dump_config(config) @classmethod def load(cls, agent: str | None = None, **overrides: Any) -> VibeConfig: