Skip to content

Commit f077944

Browse files
doobidooc93fb28650ed15253a95b20b5c4857_AHCclaude
authored
chore: release v10.36.2 (#684)
PATCH release: fix(windows) env-aware management scripts + reliable stdout logging (PR #682) + Gemini review feedback (commit 6cc7752). - _version.py, pyproject.toml, pyproject-lite.toml: 10.36.1 -> 10.36.2 - CHANGELOG.md: new [10.36.2] section, [Unreleased] preserved - README.md: Latest Release updated to v10.36.2 - CLAUDE.md: Current Version callout updated - uv.lock: regenerated Co-authored-by: Henry <156684084+doobidoo@users.noreply.github.com> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 26695d5 commit f077944

7 files changed

Lines changed: 28 additions & 12 deletions

File tree

CHANGELOG.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,19 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
1414

1515
- Added English-language policy to issue templates (bug, feature, performance) and CONTRIBUTING.md (PR #683)
1616

17+
## [10.36.2] - 2026-04-10
18+
19+
### Fixed
20+
21+
- **[#682] Hardcoded server URLs in Windows management scripts**: All 5 Windows PowerShell management scripts (`manage_service.ps1`, `run_http_server_background.ps1`, `install_scheduled_task.ps1`, `uninstall_scheduled_task.ps1`, `update_and_restart.ps1`) used a hardcoded `http://127.0.0.1:8000` URL regardless of `.env` configuration. Health checks failed silently as soon as a user enabled HTTPS (`MCP_HTTPS_ENABLED=true`) or changed the port (`MCP_HTTP_PORT`). Introduced `scripts/service/windows/lib/server-config.ps1` as a shared helper that parses `.env` for `MCP_HTTP_HOST`, `MCP_HTTP_PORT`, and `MCP_HTTPS_ENABLED` and returns a `BaseUrl`/`HealthUrl` hashtable. All scripts now dot-source this helper. Falls back to `http://127.0.0.1:8000` if `.env` is absent or variables are unset — fully backward-compatible. (PR #682)
22+
- **[#682] Silent Python stdout/stderr dropout in background server wrapper**: `run_http_server_background.ps1` used .NET `OutputDataReceived` event handlers that referenced `$script:LogFile`, a variable not captured in the event handler runspace. Every line of Python stdout and stderr was silently discarded. When Python crashed during initialization, no error was ever surfaced in the log. Replaced with `Start-Process -RedirectStandardOutput`/`-RedirectStandardError` which writes directly to `http-server-python.log` and a `.err` sidecar, eliminating the runspace capture problem entirely. (PR #682)
23+
- **[#682] Log overwrite destroys crash evidence in restart loop**: `Start-Process` overwrites the redirect target file on each invocation. The previous size-based rotation (`> 10MB`) meant that on a crash-restart cycle, the crash output from attempt N was silently destroyed by attempt N+1 before it could be inspected. Rotation is now unconditional at the start of each loop iteration: the current log is renamed to `.old` before `Start-Process` is called, preserving the most recent crash output. (PR #682, Gemini review feedback)
24+
25+
### Changed
26+
27+
- **[#682] `.env` regex strips trailing inline comments**: The `.env` parser in `server-config.ps1` now uses `([^#\r\n]*?)` to capture values, so `MCP_HTTP_PORT=8001 # my custom port` parses correctly as `8001` rather than failing `[int]::TryParse`. (PR #682, Gemini review feedback)
28+
- **[#682] TLS protocol uses additive `-bor` instead of replacement**: `Enable-McpSelfSignedCertBypass` previously replaced the session's `SecurityProtocol` with `Tls12` outright, which would have disabled TLS 1.3 if already enabled. Now uses `-bor` to add `Tls12` to the existing protocol set without removing newer protocols. (PR #682, Gemini review feedback)
29+
1730
## [10.36.1] - 2026-04-10
1831

1932
### Fixed

CLAUDE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ Before merging or releasing:
4545

4646
MCP Memory Service is a semantic memory layer for AI applications, accessible via REST API and MCP transport. It provides persistent storage for 14+ AI clients including Claude Desktop, OpenCode, LangGraph, CrewAI, and any HTTP client. It uses vector embeddings for semantic search, supports multiple storage backends (SQLite-vec, Cloudflare, Hybrid), and includes advanced features like memory consolidation, quality scoring, and OAuth 2.1 team collaboration.
4747

48-
**Current Version:** v10.36.0 - feat: OpenCode memory awareness integration (@irizzant, PR #673) + lite package version sync fix (PR #675) — 1,537 tests — see [CHANGELOG.md](CHANGELOG.md) for details
48+
**Current Version:** v10.36.2 - fix(windows): env-aware management scripts + reliable stdout logging (PR #682) — 1,537 tests — see [CHANGELOG.md](CHANGELOG.md) for details
4949

5050
> **🎯 v10.0.0 Milestone**: This major release represents a complete API consolidation - 34 tools unified into 12 with enhanced capabilities. All deprecated tools continue working with warnings until v11.0. See `docs/MIGRATION.md` for migration guide.
5151

README.md

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -434,18 +434,21 @@ Export memories from mcp-memory-service → Import to shodh-cloudflare → Sync
434434
---
435435

436436

437-
## Latest Release: **v10.36.0** (April 9, 2026)
437+
## Latest Release: **v10.36.2** (April 10, 2026)
438438

439-
**feat: OpenCode memory awareness integration + lite package version sync fix**
439+
**fix(windows): env-aware management scripts + reliable stdout logging**
440440

441-
**What's New:**
442-
- **OpenCode integration** (`opencode/memory-plugin.js`): New community-contributed plugin that injects memories into OpenCode sessions via the HTTP API — session-start retrieval, system-context injection, and compaction-context injection. Includes setup docs and example config. (by @irizzant)
443-
- **Lite package version sync fix**: `mcp-memory-service-lite` was stuck at 8.76.0 on PyPI. Synced to current version, added `pyproject-lite.toml` to release automation, and added CI fallback sync step.
444-
- **1,537 tests** passing.
441+
**What's Fixed:**
442+
- **Hardcoded URLs eliminated**: All 5 Windows management scripts now derive the server URL from `.env` (`MCP_HTTP_HOST`, `MCP_HTTP_PORT`, `MCP_HTTPS_ENABLED`) via a shared `lib/server-config.ps1` helper. Health checks no longer fail when HTTPS is enabled or the port is changed.
443+
- **Python stdout/stderr reliably captured**: `run_http_server_background.ps1` replaces broken .NET event handlers (where `$script:LogFile` was silently dropped in the handler runspace) with `Start-Process -RedirectStandardOutput`. Logs now surface immediately on startup and during crash loops.
444+
- **Log rotation per restart**: Previous crash output is preserved as `.old` before each restart iteration — `Start-Process` overwrites the target file, so without rotation the prior crash evidence was destroyed.
445+
- **1,537 tests** passing. (PR #682)
445446

446447
---
447448

448449
**Previous Releases**:
450+
- **v10.36.1** - fix: SQLite-vec segfault under concurrent worker-thread access + use-after-close crash on hybrid shutdown + corrupt connection_types in conflict graph edges (PR #678, 1,537 tests)
451+
- **v10.36.0** - feat: OpenCode memory awareness integration (@irizzant, PR #673) + lite package version sync fix (PR #675, 1,537 tests)
449452
- **v10.35.0** - feat: session-level memory ingestion — `memory_store_session` MCP tool + `POST /api/sessions` — LongMemEval R@5 86.0% (+5.6%) (PR #666, 1,537 tests)
450453
- **v10.34.0** - feat: LongMemEval benchmark — R@5 80.4%, R@10 90.4%, NDCG@10 82.2%, MRR 89.1% (PR #665, 1,520 tests)
451454
- **v10.33.0** - refactor: eliminate event-loop blocking + fix silent conflict data loss in SQLite storage (PR #663, 1,520 tests)

pyproject-lite.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
44

55
[project]
66
name = "mcp-memory-service-lite"
7-
version = "10.36.1"
7+
version = "10.36.2"
88
description = "Lightweight semantic memory service with ONNX embeddings - no PyTorch required. 80% smaller install size. REST API + MCP transport."
99
readme = "README.md"
1010
requires-python = ">=3.10"

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
44

55
[project]
66
name = "mcp-memory-service"
7-
version = "10.36.1"
7+
version = "10.36.2"
88
description = "Semantic memory layer for AI applications. REST API + MCP transport + knowledge graph + autonomous consolidation. Works with 14+ AI clients. Self-host, zero cloud cost."
99
readme = "README.md"
1010
requires-python = ">=3.10"

src/mcp_memory_service/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
"""Version information for MCP Memory Service."""
22

3-
__version__ = "10.36.1"
3+
__version__ = "10.36.2"

uv.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)