From 654e116caf44b3886cf79bf50c721bd686446dc5 Mon Sep 17 00:00:00 2001 From: Yao Jingxi <23722032@bjtu.edu.cn> Date: Mon, 2 Nov 2026 23:20:55 +0800 Subject: [PATCH] chore: prepare HTTP Client 0.1.2 preview release --- CHANGELOG.md | 14 +++++++++++ Cargo.lock | 2 +- Cargo.toml | 2 +- README.md | 8 +++---- docs/releases/v0.1.2.md | 51 +++++++++++++++++++++++++++++++++++++++++ plugin.json | 2 +- 6 files changed, 72 insertions(+), 7 deletions(-) create mode 100644 docs/releases/v0.1.2.md diff --git a/CHANGELOG.md b/CHANGELOG.md index d1987c5..a7f7748 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## 0.1.2 — 2026-11-02 (preview) + +- Open UTF-8 `.http` / `.rest` files, select requests and navigate to their source lines without sending automatically. +- Add CodeMirror highlighting, line numbers, undo, viewport rendering and single-line placeholder/caret behavior. +- Keep bounded, clearable request history in the page session without persisting drafts or credentials. +- Refine compact light/dark layouts, draggable/keyboard split panes, narrow-window stacking and operation feedback. +- Default the body preview to 128 KiB and allow 1–512 KiB in 1 KiB steps. +- Improve header typography and contrast; toggle body wrapping/horizontal scrolling; collapse leading HTML blank lines with a raw-view toggle. +- Export original bodies or headers plus body through native save dialogs, preserving raw content and explicit truncation notices. +- Save HTML into the current local workspace and request its native editor preview; require backend 2 and workspace metadata, document-summary and preview permissions. +- Use the minimal globe icon with host-controlled sidebar selection tint and theme-aware panel coloring. +- Bundle UI dependencies and license records locally; verify protocol and real backend browser workflows in CI. +- Universal macOS package; full native file-dialog/editor-preview and Intel hardware acceptance remain pending. Windows remains unsupported. + ## 0.1.1 — 2026-11-02 (preview) - Remove the duplicate HTTP Client title inside the native tool window. diff --git a/Cargo.lock b/Cargo.lock index c55fe58..30770a7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -677,7 +677,7 @@ checksum = "47d9d19d1d6efa0109d2f65ff4c85cddd50bd572e5a00127ab10987290bcefae" [[package]] name = "lithe-http-client" -version = "0.1.1" +version = "0.1.2" dependencies = [ "ide-core", "ide-http", diff --git a/Cargo.toml b/Cargo.toml index a3a8bcf..ae3c788 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "lithe-http-client" -version = "0.1.1" +version = "0.1.2" edition = "2024" publish = false license = "Apache-2.0" diff --git a/README.md b/README.md index 91e5051..b06111c 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@ # HTTP Client for Lithe -**0.1.1 preview:** protocol/Core integration is verified; native install/window and Intel hardware acceptance are still pending. +**0.1.2 preview:** request editing, session history, response exports and a compact UI. Chrome/WebKit and protocol checks pass; native file-dialog/editor-preview and Intel hardware acceptance remain pending. A compact HTTP workbench inside Lithe's native macOS tool window. Paste `.http` requests, select one, send it, and inspect the response without leaving the IDE. ## Install and use -Install **HTTP Client** from the Lithe plugin marketplace when its listing is available, or download the ZIP from [Releases](https://github.com/Lithe-IDEA/lithe-plugin-http-client/releases) and use Lithe's install-from-disk action. The universal macOS package contains Apple Silicon and Intel code. This development branch requires `backend: 2`, `serverProcess: 1`, and `ui: 2` (plugin API 3), adding workspace metadata, document-summary and preview permissions for HTML preview. Windows is not supported in this release. +Install **HTTP Client** from the Lithe plugin marketplace when its listing is available, or download the ZIP from [Releases](https://github.com/Lithe-IDEA/lithe-plugin-http-client/releases) and use Lithe's install-from-disk action. The universal macOS package contains Apple Silicon and Intel code. This version requires `backend: 2`, `serverProcess: 1`, and `ui: 2` (plugin API 3), adding workspace metadata, document-summary and preview permissions for HTML preview. Windows is not supported in this release. Open the **HTTP Client** bottom tool window. Use **Open .http** to choose a UTF-8 `.http` or `.rest` file (up to 128 KiB), or paste a request. Files are read and their requests listed immediately. Choose an entry and click **Send** (⌘/Ctrl+Enter). **Read requests** reparses pasted text. Editing invalidates the selection; sending reparses and selects the first request. Choosing a file, request or history entry never sends it automatically. @@ -37,7 +37,7 @@ The bottom-right save action opens the host's native save dialog and exports **B HTML responses collapse complete leading blank lines in the text viewer, keeping the first content line at the top. The footer shows the collapsed line count and lets you restore the original view. Internal whitespace, saved files and the editor preview retain the original response. -HTML responses expose **Preview**. The current public host API accepts workspace files rather than arbitrary HTML strings: this action asks where to save the response **inside the current local workspace**, then opens that file in the editor's **preview-only** presentation. It checks host capability availability and refuses an already-open target to avoid displaying an older live buffer. The file remains in the location you chose; there is no hidden response cache. HTML runs only in the host's separate HTML preview, without the plugin bridge. Native dialog and editor-preview acceptance are still pending on this branch. +HTML responses expose **Preview**. The current public host API accepts workspace files rather than arbitrary HTML strings: this action asks where to save the response **inside the current local workspace**, then opens that file in the editor's **preview-only** presentation. It checks host capability availability and refuses an already-open target to avoid displaying an older live buffer. The file remains in the location you chose; there is no hidden response cache. HTML runs only in the host's separate HTML preview, without the plugin bridge. Native dialog and editor-preview acceptance are still pending for this preview. ## Scope and data handling @@ -66,7 +66,7 @@ python3 scripts/package.py python3 scripts/test_protocol.py --binary dist/io.github.lithe-idea.http-client/bin/lithe-http-client ``` -Use a consistent rustup `cargo`/`rustc` toolchain on PATH when cross-compiling. Packaging uses `lipo`, validates both architectures, signs the executable ad-hoc, checks its signature, includes dependency notices and creates `dist/http-client-0.1.1-darwin.zip` with one plugin-ID parent directory and a SHA-256 sidecar. Published release assets are immutable: fixes require a new version. +Use a consistent rustup `cargo`/`rustc` toolchain on PATH when cross-compiling. Packaging uses `lipo`, validates both architectures, signs the executable ad-hoc, checks its signature, includes dependency notices and creates `dist/http-client-0.1.2-darwin.zip` with one plugin-ID parent directory and a SHA-256 sidecar. Published release assets are immutable: fixes require a new version. Protocol integration tests use real SDK processes and a loopback HTTP server, with bounded waits and cleanup. Individual timings and failures are emitted to `.artifacts/test-stability/index.html` and `junit.xml`. diff --git a/docs/releases/v0.1.2.md b/docs/releases/v0.1.2.md new file mode 100644 index 0000000..a23b0a9 --- /dev/null +++ b/docs/releases/v0.1.2.md @@ -0,0 +1,51 @@ +## 中文 + +HTTP Client 0.1.2 预览版:更紧凑的请求工作台,支持打开请求文件、恢复会话历史和保存响应。 + +### 更新内容 + +- 打开 `.http` / `.rest` 文件后直接列出请求;请求编辑区支持语法高亮、行号、撤销和请求定位。 +- 增加本次会话的请求历史,可恢复或清空;关闭页面后不保留草稿和历史。 +- 请求与响应面板支持拖动、键盘调节和双击恢复,窄窗口自动上下排列。 +- 预览上限默认改为 **128 KiB**,可在 1–512 KiB 之间按 1 KiB 调整。 +- 改善响应头字体、对比度和行距,增加正文换行/横向滚动切换。 +- 支持保存原始正文或“响应头 + 正文”;截断的响应仅导出已收到的预览内容。 +- HTML 正文默认收起开头的空行,可随时展开原文;选择保存到工作区后可在编辑区打开 HTML 预览。 +- 更新深浅主题、状态反馈和极简地球图标,修复空编辑器出现三行高光标的问题。 + +### 安装与兼容性 + +下载 `http-client-0.1.2-darwin.zip`,在 Lithe 插件管理中选择从磁盘安装;一个包同时包含 Apple Silicon 和 Intel 代码,旁边的 `.sha256` 文件用于核验下载内容。 + +需要支持插件 API 3 和 `backend: 2`、`serverProcess: 1`、`ui: 2` 的 macOS Lithe。文件选择和保存需要 Web bridge 2;HTML 预览还需要本地工作区及相应宿主能力。本版新增工作区元数据、文档摘要和 HTML 预览权限,用于定位预览文件并避免覆盖已打开的文档。 + +仍为社区预览版,使用 ad-hoc 可执行文件签名,未做开发者签名或公证;Windows 不支持。原生文件对话框、编辑区 HTML 预览的完整验收及 Intel 硬件运行验收仍待完成。浏览器验证覆盖 Chrome 和 WebKit,不能替代上述宿主验收。不会自动保存请求;只有明确选择保存或预览时才写入所选文件。 + +[全部改动](https://github.com/Lithe-IDEA/lithe-plugin-http-client/compare/v0.1.1...v0.1.2) + +--- + +## English + +HTTP Client 0.1.2 preview brings a compact request workbench with request-file loading, session history and response exports. + +### Changes + +- Open `.http` / `.rest` files to list their requests, with syntax highlighting, line numbers, undo and navigation in the request editor. +- Restore or clear requests from the current session; drafts and history are discarded when the page closes. +- Resize the request/response panes with the pointer or keyboard, double-click to reset, and use a stacked layout in narrow windows. +- The body preview now defaults to **128 KiB**, adjustable from 1–512 KiB in 1 KiB steps. +- Read headers with improved typography, contrast and spacing, and switch the body between line wrapping and horizontal scrolling. +- Save the original body or headers plus body; a truncated response exports only the available preview. +- Collapse leading blank HTML lines with an option to restore the original view, or save HTML inside the workspace and open its editor preview. +- Refine light/dark themes, operation feedback and the minimal globe icon, and fix the three-line-high caret in an empty editor. + +### Installation and compatibility + +Download `http-client-0.1.2-darwin.zip` and use Lithe's install-from-disk action. The same package contains Apple Silicon and Intel code; the adjacent `.sha256` file verifies the download. + +Requires macOS Lithe with plugin API 3 and `backend: 2`, `serverProcess: 1`, `ui: 2`. File dialogs need Web bridge 2; HTML preview also needs a local workspace and the corresponding host service. This version adds workspace-metadata, document-summary and HTML-preview permissions to locate preview files and avoid overwriting open documents. + +This remains a community preview with an ad-hoc signed executable, without publisher signing or notarization. Windows is unsupported. Full native file-dialog/editor-preview acceptance and Intel hardware acceptance are still pending. Chrome and WebKit verification does not replace those checks. Requests are not saved automatically; only an explicit save or preview writes the selected file. + +[Full comparison](https://github.com/Lithe-IDEA/lithe-plugin-http-client/compare/v0.1.1...v0.1.2) diff --git a/plugin.json b/plugin.json index 746aa35..b6a7fc8 100644 --- a/plugin.json +++ b/plugin.json @@ -2,7 +2,7 @@ "schemaVersion": 2, "id": "io.github.lithe-idea.http-client", "displayName": "HTTP Client", - "version": "0.1.1", + "version": "0.1.2", "pluginAPIVersion": 3, "requires": { "backend": 2,