Skip to content

Release/v0.4.0 beta - #12

Merged
moabualruz merged 9 commits into
mainfrom
release/v0.4.0-beta
Dec 5, 2025
Merged

moabualruz merged 9 commits into
mainfrom
release/v0.4.0-beta

Conversation

@moabualruz

Copy link
Copy Markdown
Owner

This pull request updates RiceCoder to version 0.4.0, marking the completion of Phase 4 with a focus on performance, security, user experience, and documentation improvements. It also introduces support for external LSP servers and updates the release notes to reflect the new features and changes. The release is backward-compatible with v0.3.0 and ready for extended community feedback.

Release and Documentation Updates

  • Added a new release notes file RELEASE_NOTES_v0.4.0_BETA.md detailing all Phase 4 improvements, new features, metrics, installation instructions, and roadmap for v0.4.0.
  • Removed the previous release notes file RELEASE_NOTES_v0.3.0_BETA.md to avoid confusion and ensure users reference the latest documentation.

Core Feature and Dependency Updates

  • Updated workspace version in Cargo.toml from 0.3.0 to 0.4.0 to match the new release and added the new crate crates/ricecoder-external-lsp for external LSP integration.
  • Added the criterion benchmarking library (with HTML report support) to Cargo.toml to support performance measurement and optimization.

…e profiling

- Add CacheManager API to ricecoder-storage for file-based key-value caching with TTL support
- Implement cache modules in ricecoder-providers and ricecoder-specs for provider responses and spec parsing
- Add ConfigCache abstraction for configuration file caching with automatic invalidation
- Add ProviderCache for AI provider response caching with SHA256-based key generation
- Add SpecCache for specification file parsing caching
- Add ProjectAnalysisCache for project structure analysis result caching
- Add CACHING_STRATEGY.md documentation with implementation patterns and best practices
- Add PERFORMANCE_PROFILING_GUIDE.md for performance measurement and optimization
- Add cli_startup_benchmarks.rs benchmark suite for CLI startup performance tracking
- Update Cargo.toml dependencies to support caching infrastructure
- Implement cache invalidation strategies (TTL-based and manual) for different cache types
- Support cache cleanup for expired entries to manage disk space
- Enable performance optimization phase (Task 24.2) with measurable caching improvements
…ified proxy layer

- Add new ricecoder-external-lsp crate with comprehensive LSP client implementation
- Implement LSP client with connection management, protocol handling, and capability negotiation
- Add external LSP proxy layer in ricecoder-lsp for transparent server delegation
- Create LSP output mapping system for completion, diagnostics, and hover information
- Implement LSP output merger to combine results from multiple language servers
- Add process manager and connection pool for efficient LSP server lifecycle management
- Implement LSP server registry with auto-discovery and configuration management
- Add semantic feature support and storage integration for external LSP data
- Create comprehensive property-based tests for configuration consistency, client behavior, and output mapping
- Add Tier 1 language server support documentation and integration tests
- Integrate external LSP proxy into completion engine and core LSP handlers
- Add memory optimization and profiling utilities to CLI for performance monitoring
- Remove legacy documentation files (CACHING_STRATEGY.md, PERFORMANCE_PROFILING_GUIDE.md, LSP guides)
- Update Cargo.toml and dependencies to support new external LSP architecture
- This enables RiceCoder to leverage existing language servers while maintaining unified completion and diagnostics experience
… logging and rate limiting

- Add SECURITY.md policy document with vulnerability reporting procedures and best practices
- Implement audit_log.rs module for centralized security event tracking and API key access logging
- Implement rate_limiter.rs module with token bucket algorithm and exponential backoff support
- Implement security_headers.rs module for HTTP security header management and validation
- Update ricecoder-providers Cargo.toml with chrono and rand dependencies for security features
- Update Cargo.lock with explicit rand version pinning (0.8.5 and 0.9.2) for reproducible builds
- Enhance providers library with security-first architecture for credential management and audit trails
…rtcuts

- Add accessibility.rs module with keyboard shortcuts documentation and management
- Implement AccessibilityFeatures struct with screen reader, high contrast, and reduced motion support
- Add KeyboardShortcuts struct with categorized shortcuts for navigation, editing, chat, and general operations
- Create new help command module for displaying help information
- Update commands module to integrate new help command
- Enhance error handling with accessibility-aware error messages
- Improve output formatting with accessibility-friendly styling options
- Update router to support accessibility-related command routes
- Add environment variable support for accessibility settings (RICECODER_SCREEN_READER, RICECODER_HIGH_CONTRAST, RICECODER_REDUCED_MOTION)
- Provide comprehensive accessibility guide and settings display functionality
- Enable full keyboard navigation support throughout CLI interface
… test suites

- Remove RELEASE_NOTES_v0.3.0_BETA.md after successful beta publication
- Update integration tests in external-lsp crate for improved coverage
- Update modes integration tests with enhanced test scenarios
- Refactor cache implementation in providers crate for better performance
- Improve rate limiter implementation with additional edge case handling
- Enhance Dart parser in research dependency analyzer for better accuracy
- Update cache specifications in specs crate for consistency
- Consolidate release documentation after v0.3.0 beta milestone completion
@moabualruz
moabualruz merged commit c199418 into main Dec 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant