|
| 1 | +# Changelog - Version 1.1.0# Changelog - Version 1.0.2 |
| 2 | + |
| 3 | + |
| 4 | + |
| 5 | +## Release Date## Release Date |
| 6 | + |
| 7 | +2025-09-152025-09-14 |
| 8 | + |
| 9 | + |
| 10 | + |
| 11 | +## Overview## Overview |
| 12 | + |
| 13 | +Feature enhancement release adding chainable methods for improved developer experience and logging-specific parameters.Performance and documentation enhancement release focusing on timestamp optimization, comprehensive quality assurance, and professional documentation standards. |
| 14 | + |
| 15 | + |
| 16 | + |
| 17 | +## New## New |
| 18 | + |
| 19 | +- WithContext() method for adding context information to errors- Integration with go-timecache for ultra-fast timestamp generation |
| 20 | + |
| 21 | +- AsRetryable() method for marking errors as retryable- Comprehensive benchmark suite with 15 performance tests |
| 22 | + |
| 23 | +- WithSeverity() method for setting error severity levels- Complete GoDoc documentation for all public APIs |
| 24 | + |
| 25 | +- Enhanced method chaining capabilities for fluent API usage- Professional README with performance metrics and pkg.go.dev badge |
| 26 | + |
| 27 | +- Logging-specific parameters and metadata support- golangci-lint configuration with 20+ active linters |
| 28 | + |
| 29 | +- Quality assurance validation pipeline |
| 30 | + |
| 31 | +## Updated |
| 32 | + |
| 33 | +- Enhanced usermsg.go with new chainable methods## Updated |
| 34 | + |
| 35 | +- Updated file headers from "AGLIra fragment" to "AGLIra library"- Error constructors now use timecache.CachedTime() for 90x faster timestamp operations |
| 36 | + |
| 37 | +- LICENSE file renamed to LICENSE.md for better GitHub recognition- README.md with performance benchmarks and ecosystem links |
| 38 | + |
| 39 | +- README.md with Go Report Card badge- Enhanced project description linking to Orpheus and Timecache projects |
| 40 | + |
| 41 | +- CODE_OF_CONDUCT.md with proper contact email (github@agilira.com)- Comprehensive API examples in package documentation |
| 42 | + |
| 43 | +- CONTRIBUTING.md with correct repository references- Badge collection updated with pkg.go.dev reference |
| 44 | + |
| 45 | + |
| 46 | + |
| 47 | +## Features## Performance Improvements |
| 48 | + |
| 49 | +- **WithContext(key, value)** - Add or update context information on errors- New() constructor: optimized timestamp generation with timecache integration |
| 50 | + |
| 51 | +- **AsRetryable()** - Mark errors as suitable for retry logic- NewWithField() constructor: enhanced performance through cached time operations |
| 52 | + |
| 53 | +- **WithSeverity(level)** - Set error severity for logging and alerting systems- NewWithContext() constructor: improved efficiency with timestamp optimization |
| 54 | + |
| 55 | +- **Enhanced method chaining** - All new methods return *Error for fluent API usage- Overall timestamp performance increase: ~90x improvement over time.Now() |
| 56 | + |
| 57 | + |
| 58 | + |
| 59 | +## API Enhancements## Documentation |
| 60 | + |
| 61 | +- Fluent interface support for building complex error objects- Complete GoDoc coverage for all exported functions and types |
| 62 | + |
| 63 | +- Better integration with logging frameworks through severity levels- Professional package documentation with usage examples |
| 64 | + |
| 65 | +- Improved error metadata management with context support- Real-world integration examples for REST APIs, databases, and validation |
| 66 | + |
| 67 | +- Simplified retry logic implementation with retryable flag- Migration guide from standard library errors |
| 68 | + |
| 69 | +- Performance considerations and best practices documentation |
| 70 | + |
| 71 | +## Documentation- Type-safe interface usage examples |
| 72 | + |
| 73 | +- Updated all file headers for consistency |
| 74 | + |
| 75 | +- Improved repository documentation accuracy## Quality Assurance |
| 76 | + |
| 77 | +- Enhanced contributing guidelines- Full golangci-lint compliance with comprehensive rule set |
| 78 | + |
| 79 | +- Better contact information for community support- staticcheck validation passing |
| 80 | + |
| 81 | +- errcheck analysis confirming proper error handling |
| 82 | + |
| 83 | +## Compatibility- gosec security analysis validation |
| 84 | + |
| 85 | +- Maintains backward compatibility with v1.0.x- gofmt formatting verification |
| 86 | + |
| 87 | +- No breaking changes to existing public API- go vet analysis completion |
| 88 | + |
| 89 | +- Additive changes only - all existing code continues to work- 100% test coverage maintained |
| 90 | + |
| 91 | +- Enhanced functionality while preserving existing behavior |
| 92 | + |
| 93 | +## Technical Enhancements |
| 94 | + |
| 95 | +## Quality Assurance- Modular architecture with separated concerns across multiple files |
| 96 | + |
| 97 | +- All existing tests continue to pass- Enhanced error construction validation |
| 98 | + |
| 99 | +- New methods follow established patterns- Optimized memory allocation patterns |
| 100 | + |
| 101 | +- Consistent code style and documentation- Improved stacktrace performance characteristics |
| 102 | + |
| 103 | +- Professional development standards maintained- Professional coding standards compliance |
| 104 | + |
| 105 | + |
| 106 | + |
| 107 | +## Migration Guide## Compatibility |
| 108 | + |
| 109 | +- Existing code requires no changes- Maintains backward compatibility with v1.0.0 and v1.0.1 |
| 110 | + |
| 111 | +- New methods available for enhanced error handling- No breaking changes to public API |
| 112 | + |
| 113 | +- Chainable API enables more concise error construction- Enhanced performance while preserving existing functionality |
| 114 | + |
| 115 | +- Severity levels can be adopted incrementally- Go 1.23+ environment optimizations |
| 116 | + |
| 117 | +- Cross-platform compatibility maintained |
| 118 | + |
| 119 | +## Technical Notes |
| 120 | + |
| 121 | +- Methods follow immutable pattern - errors can be safely shared## Dependencies |
| 122 | + |
| 123 | +- Context information stored in existing Context map- Added: github.com/agilira/go-timecache v1.0.2 for enhanced performance |
| 124 | + |
| 125 | +- Retryable flag uses existing Retryable field- Zero additional external dependencies |
| 126 | + |
| 127 | +- Severity stored in existing Severity field- Maintained minimal dependency footprint |
| 128 | + |
| 129 | +- Zero performance impact on existing functionality |
0 commit comments