Releases: basicmachines-co/basic-memory
Releases · basicmachines-co/basic-memory
v0.16.3
What's Changed
- fix: handle periods in kebab_filenames mode by @divideby0 in #424
- feat: Add PostgreSQL database backend support by @phernandez in #439
- feat: Implement API v2 with ID-based endpoints (Phase 1) by @jope-bm in #441
- fix: respect --project flag in background sync (fixes #434) by @divideby0 in #436
- Replace py-pglite with testcontainers for Postgres testing by @phernandez in #449
- chore: Cloud compatibility fixes and performance improvements by @phernandez in #454
- chore: more Tenantless fixes by @phernandez in #457
- fix: await background sync task cancellation in lifespan shutdown by @phernandez in #456
- test: Add integration test for issue #416 (read_note with underscored folders) by @phernandez in #453
- fix: Reduce watch service CPU usage by increasing reload interval by @phernandez in #458
- fix: Pin FastMCP to 2.12.3 to fix MCP tools visibility by @groksrc in #464
New Contributors
- @divideby0 made their first contribution in #424
Full Changelog: v0.16.2...v0.16.3
v0.16.2
v0.16.1
What's Changed
- fix: Handle Windows line endings in rclone bisync by @phernandez in #422
Full Changelog: v0.16.0...v0.16.1
v0.16.0
What's Changed
- fix: Handle None text values in Claude conversations importer by @phernandez in #353
- fix: Make project creation endpoint idempotent by @phernandez in #357
- feat: Add --verbose and --no-gitignore options to cloud upload by @phernandez in #362
- feat: Add circuit breaker for file sync failures by @phernandez in #364
- fix: Terminate sync immediately when project is deleted by @phernandez in #366
- fix: Resolve UNIQUE constraint violation in entity upsert with observations (#187) by @phernandez in #367
- fix: Handle YAML parsing errors and missing entity_type in markdown files by @phernandez in #368
- fix: Use filesystem timestamps for entity sync instead of database operation time (#138) by @phernandez in #369
- fix: Prevent deleted projects from being recreated by background sync (#193) by @phernandez in #370
- fix: preserve mtime webdav upload 376 by @phernandez in #377
- fix: Optimize sync memory usage to prevent OOM on large projects by @phernandez in #380
- fix: Handle YAML parsing errors gracefully in update_frontmatter (#378) by @phernandez in #379
- feat: Streaming Foundation & Async I/O Consolidation (SPEC-19) by @phernandez in #384
- fix: Handle null, empty, and string 'None' title in markdown frontmatter (#387) by @phernandez in #389
- feat: Add delete_notes parameter to remove project endpoint by @phernandez in #391
- fix: Normalize YAML frontmatter types to prevent AttributeError (#236) by @phernandez in #402
- feat: SPEC-20 Simplified Project-Scoped Rclone Sync by @phernandez in #405
- fix: Windows CLI Unicode encoding errors by @groksrc in #411
- fix: Various rclone fixes for cloud sync on Windows by @bdmayes in #410
- fix: Strip duplicate headers in edit_note replace_section by @phernandez in #396
- feat: Add run_in_background parameter to sync endpoint with tests by @jope-bm in #417
- fix: Handle dict objects in write_resource endpoint by @phernandez in #415
- fix: Replace Unicode arrows with ASCII for Windows compatibility by @groksrc in #414
- fix: Simplify search_notes schema by removing Optional wrappers by @phernandez in #395
- fix: Add explicit type annotations to MCP tool parameters by @phernandez in #394
- fix: Quote string values in YAML frontmatter to handle special characters by @phernandez in #418
- fix: Rename write_note entity_type to note_type for clarity by @phernandez in #419
- fix: skip archive files during cloud upload by @phernandez in #420
Full Changelog: v0.15.2...v0.16.0
v0.15.2
What's Changed
- feat: Add WebDAV upload command for cloud projects by @phernandez in #356
Full Changelog: v0.15.1...v0.15.2
v0.15.1
What's Changed
- fix: cloud mode path validation and sanitization (bmc-issue-103) by @phernandez in #332
- feat: introduce BASIC_MEMORY_PROJECT_ROOT for path constraints by @phernandez in #334
- chore: v0.15.0 assistant guide by @phernandez in #335
- fix: normalize paths to lowercase in cloud mode to prevent case collisions by @phernandez in #336
- fix: prevent nested project paths to avoid data conflicts by @phernandez in #338
- fix: add tool use doc to write note for using empty string or "/" for root folder by @phernandez in #339
- fix: correct ProjectItem.home property to return path instead of name by @phernandez in #341
- feat: Add SPEC-15 for configuration persistence via Tigris by @phernandez in #343
- refactor: async client context manager pattern for cloud consolidation by @phernandez in #344
- fix: Project deletion failing with permalink normalization by @groksrc in #345
- fix: Add permalink normalization to project lookups in deps.py by @jope-bm in #348
- feat: Optimize directory operations for 10-100x performance improvement by @phernandez in #350
- perf: Optimize sync/indexing for 43% faster performance by @phernandez in #352
- fix: Update view_note and ChatGPT tools for Claude Desktop compatibility by @phernandez in #355
Full Changelog: v0.15.0...v0.15.1
v0.15.0
What's Changed
- chore: apply lint and formatting fixes for 0.14.4 release by @jope-bm in #290
- feat: Merge Cloud auth by @jope-bm in #291
- fix: rename MCP prompt names to avoid slash command parsing issues by @groksrc in #289
- fix: replace deprecated json_encoders with Pydantic V2 field serializers by @phernandez in #295
- fix: Sanitize folder names and properly join paths by @bdmayes in #292
- feat: Basic memory cloud upload by @phernandez in #296
- feat: Implement SPEC-6 Stateless Architecture for MCP Tools by @phernandez in #298
- feat: Implement cloud mount CLI commands for local file access by @phernandez in #306
- chore: Update Claude Code GitHub Workflow by @phernandez in #308
- feat: chatgpt tools for search and fetch by @phernandez in #305
- fix: Make sync operations truly non-blocking with thread pool by @phernandez in #309
- fix: move_note without file extension by @groksrc in #281
- fix: remove obsolete update_current_project function and --project flag reference by @phernandez in #310
- feat: implement SPEC-11 API performance optimizations by @phernandez in #315
- fix: critical cloud deployment fixes for MCP stability by @phernandez in #317
- fix: enforce minimum 1-day timeframe for recent_activity to handle timezone issues by @phernandez in #318
- fix: resolve entity relations in background to prevent cold start blocking by @phernandez in #319
- fix: rework lifecycle management to optimize cloud deployment by @phernandez in #320
- feat: Cloud CLI cloud sync via rclone bisync by @phernandez in #322
- Fix: Corrected dead links in README by @jonathan-d-nguyen in #321
- feat: CLI Subscription Validation (SPEC-13 Phase 2) by @phernandez in #327
- fix: enable WAL mode and add Windows-specific SQLite optimizations by @phernandez in #316
- feat: integrate ignore_utils to skip .gitignored files in sync process by @phernandez in #314
- feat: Add disable_permalinks config flag by @phernandez in #313
- fix: Add proper datetime JSON schema format annotations for MCP validation by @phernandez in #312
- fix: simplify entity upsert to use database-level conflict resolution by @phernandez in #328
- fix: normalize underscores in memory:// URLs for build_context by @phernandez in #329
- ci: Add Python 3.13 to test matrix by @phernandez in #331
- fix: remove .env file loading from BasicMemoryConfig by @phernandez in #330
New Contributors
- @jonathan-d-nguyen made their first contribution in #321
Full Changelog: v0.14.4...v0.15.0
v0.14.4
What's Changed
- fix: Critical search index bug - prevent note disappearing on edit by @jope-bm in #257
- fix: Add missing foreign key constraints for project removal (#254) by @jope-bm in #258
- fix: Enable string-to-integer conversion for build_context depth parameter by @jope-bm in #259
- fix: handle vim atomic write DELETE events without ADD by @phernandez in #249
- fix: Add project isolation to ContextService.find_related() method (#261) by @jope-bm in #262
- fix: Respect BASIC_MEMORY_LOG_LEVEL and BASIC_MEMORY_CONSOLE_LOGGING environment variables by @jope-bm in #264
- fix: Use discriminated unions for MCP schema validation in build_context by @jope-bm in #266
- fix: Ensure all datetime operations return timezone-aware objects by @jope-bm in #268
- fix: Fix observation parsing to exclude markdown and wiki links by @jope-bm in #269
- fix: Add ISO datetime serialization to MCP schema models by @jope-bm in #270
- Addressed issues when running basic-memory on the Windows platform by @manuelbliemel in #252
- fix: Windows test failures and add Windows CI support by @groksrc in #273
- fix: Sanitize filenames and allow optional kebab case by @bdmayes in #260
- feat: implement non-root Docker container to fix file ownership issues by @phernandez in #277
- fix: complete project management special character support (#272) by @jope-bm in #279
- fix: Update YAML frontmatter tag formatting for Obsidian compatibility by @groksrc in #280
New Contributors
- @manuelbliemel made their first contribution in #252
- @bdmayes made their first contribution in #260
Full Changelog: v0.14.3...v0.14.4
v0.14.3
What's Changed
- chore: Cloud auth by @phernandez in #213
- docs: improve virtual environment setup instructions by @jope-bm in #222
- fix: path traversal security vulnerability in mcp tools by @jope-bm in #223
- fix: basic memory home env var not respected when project path is changed. by @jope-bm in #239
- fix: handle missing 'name' key in memory JSON import by @jope-bm in #241
- chore: minor cleanup by @groksrc in #228
- fix: replace recursive _traverse_messages with iterative approach to handle deep conversation threads by @phernandez in #235
- fix: enhance character conflict detection and error handling for sync operations by @phernandez in #201
New Contributors
Full Changelog: v0.14.2...v0.14.3