Tags: tinystruct/tinystruct
Tags
Release version 1.7.16 of the tinystruct framework feat: improve session management and refactor MCP implementation BREAKING CHANGES: - Renamed MCPServerApplication to MCPServer for consistency - Made AbstractMCPResource.executeLocally() abstract, requiring implementations - Removed registerToolMethods() - now integrated into registerTool() Session Management: - Add multi-session support with session-specific state tracking - Implement ThreadLocal-based session ID management - Add Mcp-session-id header handling for session persistence - Replace single sessionState with per-session state map - Properly cleanup session context in finally blocks Client Improvements: - Refactor HTTP communication to use URLRequest/URLResponse - Improve SSE event stream handling with functional approach - Add session ID capture and reuse across requests - Better error handling and connection management Protocol & Standards: - Update protocol version constant to PROTOCOL_VERSION - Standardize server name to "tinystruct-mcp" - Add SESSION_ID constant to Http class - Use Header enum for standard HTTP headers - Remove TOKEN_PARAM in favor of Authorization header Code Quality: - Add missing executeLocally() implementations in MCPDataResource and MCPTool - Improve documentation and formatting - Remove unused mimeType variable in resource discovery - Better separation of concerns in request handling Examples & Documentation: - Update README with new API usage patterns - Add batch request and error handling examples - Document session management features - Update all code examples to use MCPServer - Add comprehensive usage examples for CLI client
Bump tinystruct version to 1.7.14 and improve core modules - Update README, pom.xml, dispatcher scripts, and ApplicationManager to reflect version 1.7.14 - Refactor AbstractApplication for improved readability and consistent formatting - Multi-line ternary and method call formatting - Use `config.getOrDefault` for DEFAULT_BASE_URL - Switch `actionRegistry.paths().contains` to `validate(path)` for robust path checking - Enhance ActionRegistry - Make `paths` thread-safe - Add `validate(path)` method for path checking - Minor formatting and method signature adjustments - Improve ConnectionManager reliability - Track dead connections and avoid reusing them - Handle EOFException during send and mark connection as dead - Update connection validation and expiration checks - Refactor HttpServer CORS handling - Support dynamic allowed origins and credentials - Preflight OPTIONS responses now properly closed with 204 status
Release v1.7.13: CORS implementation, dependency upgrades, and core f…
…ixes
* Versioning: Synchronized version 1.7.13 in pom.xml, ApplicationManager, and CLI tools.
* Web: Added robust CORS handling for OPTIONS requests in HttpServer; made CORS settings configurable via application.properties.
* Dependencies:
- Upgraded Lettuce, SQLite, and Mockito.
- Excluded slf4j-api from lettuce-core and pinned lz4-java to 1.8.1 to resolve classpath conflicts.
* Core Improvements:
- Settings: Switched to InputStreamReader with UTF-8 for property loading and simplified get() logic.
- Mapping: Updated UUID generation to apply to any type not starting with "int".
- MCP: Added metadata descriptions to SSE endpoints.
Update project version to 1.7.12 - Bump tinystruct version in README from 1.7.11 to 1.7.12 - Update displayed CLI version banner - Update dispatcher (Unix) script VERSION to 1.7.12 - Update dispatcher.cmd (Windows) script VERSION to 1.7.12 - Bump Maven project version in pom.xml to 1.7.12 - Update ApplicationManager.VERSION constant to 1.7.12
PreviousNext