@garysui/json-ops
Version:
TypeScript utilities for JSON operations: flatten, diff, apply, and more
72 lines (54 loc) โข 3 kB
Markdown
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [2.0.1] - 2024-08-03
### Added
- ๐ **MIT License** file added to project root
- ๐ **CHANGELOG.md** for tracking version history and changes
- ๐ค **CONTRIBUTING.md** with comprehensive contribution guidelines
- ๐ท๏ธ **Status badges** in README for npm version, license, TypeScript support, bundle size, and test coverage
- ๐ฆ **Improved npm package** configuration with better file inclusion
- ๐ซ **Enhanced .npmignore** with comprehensive exclusions for cleaner packages
### Enhanced
- ๐ **README improvements** with installation requirements, development setup, and package stats
- ๐ **Better project links** including npm package, GitHub repository, and issue tracking
- ๐ **Open source best practices** with proper project structure and documentation
## [2.0.0] - 2024-08-03
### Added
- ๐ฏ **Comprehensive flat path notation specification** with visual documentation
- ๐ **Real-world test cases** covering database operations, config management, form tracking, and API responses
- ๐ **Performance and edge case tests** for large structures, deep nesting, and special characters
- ๐ **Enhanced README** with visual diagrams, path notation table, and use case examples
- ๐งช **104+ test cases** ensuring robust functionality across various scenarios
- ๐ฆ **MIT License** and proper open-source project structure
### Enhanced
- โก **Improved path notation examples** covering all combinations (`.key`, `@i`, `.key@i`, `@i.key`)
- ๐ก๏ธ **Better edge case handling** for sparse arrays, special characters, and primitive types
- ๐ **Comprehensive documentation** with installation, contribution guidelines, and links
- ๐ง **Better npm package configuration** with proper file exclusions
### Technical
- ๐ฏ **Zero runtime dependencies** for lightweight integration
- ๐ฆ **~8KB bundle size** with full TypeScript definitions
- โ
**104 passing tests** covering real-world scenarios
- ๐ **Round-trip consistency** guaranteed for all data types
## [1.0.2] - Previous Version
### Initial Release
- โก Basic `flat`, `unflat`, `diff`, `apply` functionality
- ๐ง `replaceUndefined` and `restoreUndefined` utilities
- ๐ `sortKeys` for deterministic object ordering
- ๐งช Basic test coverage
---
## Migration Guide
### From 1.x to 2.x
No breaking changes in the API. Version 2.0.0 is a major documentation and testing enhancement:
- โ
All existing code continues to work
- โ
Enhanced documentation and examples
- โ
More comprehensive test coverage
- โ
Better npm package structure
```typescript
// All existing usage remains the same
import { flat, unflat, diff, apply } from '@garysui/json-ops';
const flattened = flat({ x: [1, 2] });
// Still works exactly as before
```