Skip to content

Latest commit

 

History

History
61 lines (54 loc) · 3.03 KB

CHANGELOG.md

File metadata and controls

61 lines (54 loc) · 3.03 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

Added

  • Grep functionality exposed through MCP
    • Support for ripgrep with Python fallback
    • Comprehensive search with regex, context, and pattern exclusion
    • Enhanced context control with separate before/after line parameters (like grep's -A/-B options)
    • Results pagination with offset/limit parameters
  • Line-targeted file operations
    • read_file_lines with offset/limit paradigm for precise line access
    • edit_file_at_line with content verification and relative line number support
  • Integration between grep and targeted operations for efficient workflow
  • Documentation of type safety issues and guidance in CLAUDE.md
  • Comprehensive test suite following pragmatic test-driven development approach
    • Smoke tests for critical user paths (read, write, grep, edit)
    • Integration tests with real temporary filesystem
    • End-to-end tests verifying server API to filesystem flow
    • Test data factories for sample data generation
    • Clean fixtures with proper dependency isolation
    • Mocks at external boundaries for faster test execution
    • Verification of actual functionality with real files

Changed

  • Improved Python compatibility (requires 3.10+)
  • Enhanced server file operations with more granular edit capability
  • Changed line-targeting API from 1-based to 0-based indexing with offset/limit paradigm
  • Added content verification to file editing operations
  • Added relative line numbers support for more flexible line editing
  • Enhanced grep functionality with better context control and pagination
  • Improved code safety with proper null checks for Context parameters
  • Enhanced type safety with proper use of Optional types

Fixed

  • Integrated targeted operations and grep functionality into the main codebase
  • Connected all components in the server implementation
  • Fixed unsafe comparison between int and None
  • Improved anyio.to_thread.run_sync usage with functools.partial
  • Fixed context_before type mismatch in grep.py
  • Properly typed transport parameter with Literal
  • Fixed all type errors in server.py, operations.py, advanced.py, and grep.py
  • Added type annotations for result variables and function parameters
  • Fixed Dict type incompatibility issue in advanced.py
  • Added missing imports from typing module (Any, Mapping)
  • Fixed read_file_lines bug that caused it to read beyond the requested line range
  • Fixed edit_file_at_line to properly handle content verification and relative line numbers
  • Fixed grep pagination to properly slice result sets
  • Improved test reliability by focusing on behavior rather than implementation details
  • Fixed inconsistent test expectations to match actual API semantics

[0.1.0] - 2025-03-02

  • Initial project setup
  • Basic file operations implementation
  • Security framework for file access
  • Server structure and MCP integration