- Request Deduplication System: Advanced request deduplication functionality
@Dedupedecorator: Automatic detection and prevention of duplicate requestsRequestDedupeManager: Centralized management of concurrent request deduplication- Configurable cache key generation with flexible exclude options
DedupeResultinterface withisDedupedproperty for enhanced debugging and monitoring- Comprehensive deduplication documentation and internationalization support
- Security and Authorization System: Comprehensive security framework implementation
@Securitydecorator: Declarative security configuration for request methods@Authorizationdecorator: Enhanced authorization handling with flexible configuration- Security provider system: Pluggable security providers for various authentication schemes
- Authorization field support: Backward compatible authorization field configuration
- Comprehensive security documentation in both Korean and English
- Enhanced Documentation Infrastructure: Major improvements to documentation system
- Mermaid diagram support in VitePress documentation for better visual explanations
- Git hooks initialization script for improved development workflow
- Enhanced project structure documentation with detailed package descriptions
- Cache Key Generation: Core mechanism for identifying duplicate requests
- Generates unique cache keys by combining endpoint and parameters to determine request identity
- Duplicate requests with identical cache keys share the first request's response
cacheKeyExcludeoption for excluding specific fields from cache key generationcacheKeyExcludePathsoption for excluding nested object paths- Support for excluding dynamic fields like timestamps, UUIDs, and request IDs that change per request but shouldn't affect deduplication
- Advanced Deduplication Logic: Sophisticated duplicate request handling
- Wrapper-based result tracking with
DedupeResultinterface - Automatic cleanup of completed requests from pending cache
- Error handling with independent retry logic for failed requests
- Memory-based deduplication with application lifecycle management
- Wrapper-based result tracking with
- Developer Tools: Enhanced debugging and monitoring capabilities
RequestDedupeManagerutility methods for monitoring pending requests- Debug information with
isDedupedproperty in response objects - Comprehensive test coverage for deduplication scenarios
- Performance monitoring and network traffic reduction analytics
- Security Provider Architecture: Flexible and extensible security system
- Abstract security provider base class for custom implementations
- Built-in support for common authentication schemes
- Type-safe security configuration with TypeScript integration
- Runtime security validation and error handling
- Authorization Enhancements: Improved authorization handling
- Enhanced
@Authorizationdecorator with comprehensive options - Backward compatibility with existing authorization field configurations
- Flexible authorization value resolution and processing
- Integration with security provider system for unified authentication
- Enhanced
- Enhanced Type Safety: Improved type definitions and error corrections
- Fixed
keyForamttypo tokeyFormatinIQueryFieldOptioninterface - Type-safe security provider interfaces and implementations
- Better TypeScript inference for authorization configurations
- Enhanced error test cases with
isDedupedproperty for better debugging
- Fixed
- Code Quality Improvements: Enhanced codebase maintainability
- Fixed spelling errors throughout the codebase (
excpetationtoexpectation) - Simplified field option structure by removing nested option wrappers
- Extracted
DedupeResultinterface for better type organization - Enhanced debug information for deduplication and security processes
- Fixed spelling errors throughout the codebase (
- Documentation Enhancements: Comprehensive documentation improvements
- Updated
cacheKeyExcludePathreferences tocacheKeyExcludePathsfor consistency - Fixed logo paths in VitePress configuration for better asset management
- Enhanced validator registration comments for improved code clarity
- Updated
- Testing Framework: Comprehensive testing improvements
- Complete test coverage for deduplication system with various scenarios
- Integration tests for security provider system and authorization decorators
- Enhanced error handling test cases with proper type definitions
- Performance testing for request deduplication efficiency
- Development Workflow: Enhanced development processes
- Git hooks initialization script (
init-hooks) for automated development setup - Improved project documentation with detailed agent guidelines
- Better organization of documentation assets and configuration files
- Git hooks initialization script (
- Architecture Refinements: Improved code organization and structure
- Modular field option processor structure for better maintainability
- Enhanced processor architecture with simplified field options
- Cleaner deduplication logic with extracted interfaces and improved debugging
- Streamlined cache key generation utilities with JSON handling improvements
- Request Deduplication Documentation: Comprehensive deduplication guides
- Korean documentation:
docs/ko/method/dedupe.mdwith complete implementation guide - English documentation:
docs/method/dedupe.mdwith examples and best practices - Cache key customization examples and exclude option configurations
- Performance benefits and debugging techniques documentation
- Korean documentation:
- Security Documentation: Added comprehensive security and authorization guides
- Korean documentation:
docs/ko/method/authorization.mdwith complete implementation guide - English documentation:
docs/method/authorization.mdwith examples and best practices - Security provider implementation examples and configuration patterns
- Korean documentation:
- Visual Documentation: Enhanced documentation with better visual elements
- Mermaid sequence diagrams for deduplication workflow visualization
- Improved logo and asset management across documentation platforms
- Better structured examples with visual flow diagrams for complex scenarios
- Network Optimization: Significant improvements in network efficiency
- Automatic duplicate request elimination reducing network traffic
- Faster response times for deduplicated requests through shared responses
- Reduced server load through intelligent request consolidation
- Memory Management: Enhanced memory usage optimization
- Automatic cleanup of completed requests from deduplication cache
- Efficient cache key generation with minimal memory footprint
- Smart garbage collection for pending request management
- Enhanced Validation System: Major improvements to validation architecture and error handling
BaseValidatorclass: New validation framework with customizable validation logic and data transformation- New exception classes:
JinCreateError,JinRequestError, andJinValidationtErrorfor better error categorization @Validatordecorator: Declarative validation configuration for request methodsrunAndUnwraputility: Complete TypeScript migration with enhanced type safety and generic support- Integration with JinFrame validation pipeline for automatic response validation
- Project Documentation: Added comprehensive roadmap and planning documentation
- Korean roadmap:
ROADMAP.ko.mdwith detailed feature planning and future enhancements - English roadmap:
ROADMAP.mdwith internationalized development plans
- Korean roadmap:
- Comprehensive Validation Documentation: Added detailed validation guides and examples
- Korean documentation:
docs/ko/method/validation.mdwith BaseValidator class implementation guide - English documentation:
docs/method/validation.mdwith complete translation and examples - Enhanced usage documentation with
pathPrefixandvalidatoroptions in method decorators
- Korean documentation:
- Enhanced Field Documentation: Updated query parameter documentation
- Added
keyFormatoption usage and examples in both Korean and English - Comprehensive array formatting examples with practical use cases
- Updated all field documentation for consistency and clarity
- Added
- Documentation Infrastructure: Fixed TypeDoc and VitePress build processes
- Updated build commands and configuration for better documentation generation
- Enhanced documentation deployment workflow and CI/CD integration
- Enhanced Type Safety: Complete type safety improvements across validation and utility systems
runAndUnwrapfunction with full TypeScript type inference and generic constraints- Automatic parameter and return value type inference for all function calls
- Eliminated
anytypes in favor of proper generic type constraints - Reduced runtime errors through comprehensive compile-time type checking
- Better Error Handling: Improved error handling and semantic naming conventions
JinValidationtError: Renamedvalidationproperty tovalidatedfor semantic clarity- Self-type pattern implementation for correct type inference in inherited classes
- Enhanced error categorization with specific exception types for different failure scenarios
- Code Quality Improvements: Enhanced codebase quality and maintainability
- Complete TypeScript migration for utility functions with strict type checking
- Strict adherence to
@typescript-eslintrules for improved code quality - Eliminated unsafe type assertions and improved type inference throughout
- Architecture Refinements: Improved API design and separation of concerns
- Resolved class naming conflicts between validation classes and decorators
- Enhanced type inference for complex generic scenarios and inheritance patterns
- Better separation of concerns between validation logic and request handling
- Documentation Infrastructure: Enhanced documentation build and deployment processes
- Fixed VitePress configuration and TypeDoc integration
- Improved documentation deployment workflow with better error handling
- Enhanced multi-language documentation support and consistency
- Monorepo Migration: Complete migration to monorepo structure with three main packages
@jin-frame/jin-frame: Core HTTP client framework@jin-frame/generator-cli: CLI tool for generating frame classes from OpenAPI specifications@jin-frame/generator-core: Core generation functionality and utilities
- Retry-After Header Support: Implemented HTTP standard retry-after header handling
- New
useRetryAfteroption inIFrameRetryinterface getRetryAfterutility function for parsing retry-after values- Enhanced retry logic to prioritize server-specified retry intervals
- New
- PathPrefix Support: Added pathPrefix configuration for API endpoint management
- Enhanced URL construction with host, pathPrefix, and path concatenation
- Better support for API versioning and path organization
- Code Generation Tools: Comprehensive OpenAPI-to-TypeScript frame generation
- Command-line interface for generating type-safe HTTP client classes
- Support for OpenAPI v2 and v3 specifications
- Automatic generation of decorators and type definitions
- Enhanced Documentation: Comprehensive documentation improvements
- Refined examples for decorators including Retry and Timeout
- Updated getting started guides
- Enhanced method usage documentation
- Consistent brand imaging across all platforms
- Dependency Management: Streamlined dependency management across packages
- Removed unused dependencies like
dayjsand@optique/* - Updated core dependencies including axios, TypeScript, and ESLint
- Consistent version management across monorepo packages
- Removed unused dependencies like
- CLI Tools: New command-line tools for enhanced development workflow
jin-frame-generatorCLI for automatic frame generation- Support for various OpenAPI input formats (JSON, YAML, URLs)
- Customizable generation options and output configurations
- Enhanced Type Safety: Improved type definitions and validation
- Better parameter validation and coercion
- Enhanced OpenAPI schema validation
- Improved error handling and debugging capabilities
- Monorepo Setup: Complete restructuring for better maintainability
- Workspaces configuration with pnpm
- Individual package management and versioning
- Optimized build and development workflows
- Git Workflow Enhancements: Improved development processes
- Enhanced pre-commit hooks with package-specific filtering
- Better CI/CD integration for monorepo structure
- Streamlined release and deployment processes
- Declarative Request Configuration: Added new decorators for enhanced request configuration
@Retry: Declarative retry configuration for request methods@Timeout: Declarative timeout configuration for request methods
- Enhanced Hook Support: Added comprehensive async preHook and postHook functionality
- Error Handling Utilities: Improved error handling with new utility functions
- Testing Infrastructure Overhaul: Replaced nock with MSW (Mock Service Worker) for better HTTP request mocking
- More realistic and maintainable test scenarios
- Better integration with modern testing practices
- Enhanced test coverage for async hooks
- Documentation Enhancement: Comprehensive documentation improvements
- Updated installation instructions
- Added Retry/Timeout configuration sections
- Improved README with better examples and explanations
- Brand Identity: Added jin-frame brand images across documentation platforms
- Declarative Configuration: Simplified retry and timeout configuration using decorators
- Better Test Utilities: More robust and realistic testing capabilities with MSW
- Enhanced Documentation: Clearer installation guides and configuration examples
- Visual Identity: Consistent brand imaging across all documentation platforms
- Option Merging Refactoring: Improved option merging utilities for better configuration handling
- Hook Processing: Enhanced hook processing for both synchronous and asynchronous operations
- Documentation Assets: Proper asset management for documentation deployment
- Query String Key Formatting: Added new
keyFormatoption for enhanced query string key formatting- Support for array notation:
name[]=ironman&name[]=hulk - Support for indexed notation:
name[0]=ironman&name[1]=hulk - Flexible query string key formatting options
- Support for array notation:
- Codecov Integration: Upgraded Codecov action from v3 to v5 for better test coverage reporting
- CI/CD Optimizations: Enhanced continuous integration workflows
- Coverage upload now runs only on Node.js v20
- Documentation deployment triggered only on changes to
docs/**andassets/** - Added dedicated test running stage in CI pipeline
- Branch Token Configuration: Added branch token support for Codecov integration
- Workflow Efficiency: Improved CI workflow performance and resource usage
- Development Process: Enhanced development workflow with better TODO tracking and task management
- Extended HTTP Method Decorators: Added new HTTP method decorators for additional REST operations
@Search: For SEARCH HTTP method@Purge: For PURGE HTTP method@Link: For LINK HTTP method@Unlink: For UNLINK HTTP method
- Type System Refactoring: Major reorganization of interface types with better categorization
- Moved interfaces to
field/,options/directories for better organization - Enhanced type safety across the framework
- Moved interfaces to
- Documentation System Overhaul: Complete restructuring of VitePress documentation
- Comprehensive field documentation (body, header, param, query, objectbody, formatters)
- Enhanced method documentation (authorization, form, inheritance, mocking, retry)
- Improved Korean and English documentation coverage
- GitHub Actions Integration: Added automated documentation deployment workflow
- CI/CD Enhancements: Improved documentation build and deployment processes
- Workflow Optimization: Fixed and enhanced documentation generation workflows
- Comprehensive Field Guides: Detailed documentation for all field types and their usage
- Method Usage Examples: Extensive examples for authentication, forms, inheritance, and retry mechanisms
- Bilingual Support: Enhanced Korean and English documentation with consistent coverage
- Interactive Examples: Better structured examples and use cases
- Metadata Merge Logic: Fixed metadata merge logic to properly skip undefined values during inheritance processing
- Option Merging: Enhanced option merging functionality to handle undefined values correctly
- VitePress Enhancement: Added comprehensive usage documentation for parameters, queries, and headers
- Korean Documentation: Extended Korean language documentation with new usage guides
- Usage Examples: Added detailed examples for parameter, query, and header usage patterns
- Inheritance Testing: Added comprehensive test cases for class inheritance scenarios
- Option Handling: Improved option merging and frame configuration logic
- Documentation Coverage: Significantly expanded documentation coverage for common use cases
- Authorization Option: Added new authorization option for enhanced authentication support
- URL Utilities: Added new
getEndpointfunction for better URL handling and endpoint management
- Documentation Enhancement: Improved README.md with better examples and explanations
- Authentication Support: Enhanced authentication handling with new authorization options
- URL Management: Better URL processing and endpoint generation capabilities
- Test Coverage: Added comprehensive test cases for new authentication and URL features
- Simplified Authentication: Easier authentication setup with new authorization options
- URL Handling: More intuitive URL and endpoint management
- Better Documentation: Enhanced README with clearer examples and usage patterns
- Improved Testing: More robust test coverage for authentication and URL utilities
- Builder Pattern Support: Added static factory functions for builder pattern implementation
- VitePress Documentation: Introduced comprehensive VitePress-based documentation system
- Enhanced Type Utilities: Added new type utilities for better builder pattern support
TBuilderFor: Type utility for creating builder patternsTFieldsOf: Type utility for extracting field types
- Documentation System: Complete migration to VitePress for better documentation experience
- Korean Documentation: Added Korean language support for documentation
- README Updates: Enhanced README with better examples and usage patterns
- Asset Updates: Improved visual assets and diagrams
- Getting Started Guide: Added comprehensive getting started documentation
- API Examples: Enhanced API usage examples and patterns
- Multi-language Support: Documentation now available in Korean and English
- Interactive Examples: Better examples with practical use cases
- Builder Pattern: Simplified object creation with builder pattern support
- Better Examples: More practical and comprehensive code examples
- Improved Assets: Updated visual guides and documentation assets
- TypeDoc Integration: Enhanced API documentation generation
- Request Field Decorators Migration: Request field decorators have been migrated to pure functions for better type safety and performance
- reflect-metadata Integration: All decorators now use the reflect-metadata package for metadata management
- Static Factory Functions: Added static factory functions for improved type inference and developer experience
- Constructor Interface Changes: Updated constructor interfaces in AbstractJinFrame, JinEitherFrame, and JinFrame classes
- Static Factory Functions: Added helper factory functions for better type inference
- Enhanced Class Decorators: New class decorator system for configuration management
- Improved Error Handling: Enhanced status code and status text handling for axios errors
- Better Type Utilities: Added new type utilities like
InstanceFieldsfor improved type safety
- Test Coverage Enhancement: Significantly improved test coverage across all modules
- ESLint v9 Migration: Upgraded to ESLint v9 with modern configuration
- Documentation Updates: Enhanced README.md and added VitePress documentation
- Performance Optimizations: Improved body field and object-body performance
- Retry Mechanism: Enhanced retry functionality with better error handling
- my-easy-fp: 0.21.0 → 0.22.0
- path-to-regexp: 6.2.1 → 8.2.0
- reflect-metadata: 0.1.13 → 0.2.2
- Better Type Inference: Static factory functions provide improved type inference
- Enhanced Error Messages: More descriptive error handling and status reporting
- Improved Documentation: Added comprehensive examples and API documentation
- Modern Tooling: Updated build and development tools for better DX