Skip to content

Tags: tinystruct/tinystruct

Tags

v1.7.19

Toggle v1.7.19's commit message
fix: update version to 1.7.19 and upgrade dependencies

- Version: Bump project version from 1.7.18 to 1.7.19 across pom.xml, scripts, and documentation.
- Documentation: Update version references in README.md and DEVELOPER_GUIDE.md.
- Application: Update VERSION constant in ApplicationManager.java.
- Scripts: Update version variables in bin/dispatcher, bin/dispatcher.cmd, and build.sh.
- Dependencies: Upgrade lettuce.version to 7.5.0.RELEASE.
- Dependencies: Upgrade sqlite.version to 3.51.3.0.
- Dependencies: Upgrade mockito.version to 5.23.0.

v1.7.18

Toggle v1.7.18's commit message
chore: release 1.7.18

v1.7.17

Toggle v1.7.17's commit message
feat(core,repository,docs): add developer guide, improve ID generatio…

…n and SQL handling

Add comprehensive DEVELOPER_GUIDE.md
Bump version to 1.7.17 and update related scripts and docs
Support returning user-generated IDs when "generate"=true across MySQL, SQLite, SQLServer, and Redis
Unify appendAndGetId behavior: fallback to DB-generated ID only if no custom ID is provided
Improve SQL parameter binding and add support for LONGTEXT and BOOLEAN
Fix auto-increment field skipping logic in prepared statements
Tighten Action mode validation to prevent CLI/HTTP misuse @yyfyfyang
Improve SQL formatting, Javadoc wrapping, and general code style
Minor refactors and dependency upgrade (Jupiter 6.0.2)

v1.7.16

Toggle v1.7.16's commit message
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

v1.7.15

Toggle v1.7.15's commit message
Release tinystruct 1.7.15

- Fix Action method argument binding for Request/Response
- Correct args[] indexing with context-aware parameters
- Update version numbers across build, scripts, and docs

v1.7.14

Toggle v1.7.14's commit message
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

v1.7.13

Toggle v1.7.13's commit message
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.

v1.7.12

Toggle v1.7.12's commit message
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

v1.7.11

Toggle v1.7.11's commit message
Update the version to be 1.7.11.

v1.7.10

Toggle v1.7.10's commit message
Update the version to be 1.7.10.