ts-runtime-validation 1.8.0 → 1.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +143 -0
- package/package.json +10 -9
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [1.8.1] - 2024-08-25
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
- **Major dependency updates** to latest versions for security and performance
|
|
12
|
+
- Updated Jest from 29.7.0 to 30.0.5
|
|
13
|
+
- Updated ts-json-schema-generator from 1.5.1 to 2.4.0
|
|
14
|
+
- Updated ts-morph from 19.0.0 to 26.0.0
|
|
15
|
+
- Updated Commander from 11.1.0 to 14.0.0
|
|
16
|
+
- Updated picomatch from 2.3.1 to 4.0.3
|
|
17
|
+
- Updated all @types packages to latest versions
|
|
18
|
+
|
|
19
|
+
### Fixed
|
|
20
|
+
- Added missing ajv peer dependency
|
|
21
|
+
- Resolved all dependency version conflicts
|
|
22
|
+
|
|
23
|
+
### Security
|
|
24
|
+
- Zero vulnerabilities reported by yarn audit
|
|
25
|
+
- All dependencies updated to secure versions
|
|
26
|
+
|
|
27
|
+
## [1.8.0] - 2024-08-25
|
|
28
|
+
|
|
29
|
+
### Added
|
|
30
|
+
- Comprehensive deterministic output tests for various scenarios
|
|
31
|
+
- Extended test coverage for circular references, mixed export types, and parallel processing
|
|
32
|
+
- Troubleshooting section in README with common issues and solutions
|
|
33
|
+
- Clear cache instructions and documentation
|
|
34
|
+
- Project marketing page link in README
|
|
35
|
+
|
|
36
|
+
### Fixed
|
|
37
|
+
- **Critical**: Non-deterministic hash generation causing different output on each run
|
|
38
|
+
- File processing order inconsistencies in parallel mode
|
|
39
|
+
- Schema map iteration order issues
|
|
40
|
+
- Import statement ordering in generated files
|
|
41
|
+
|
|
42
|
+
### Changed
|
|
43
|
+
- All test output directories now use consistent `.test-tmp/` pattern
|
|
44
|
+
- Simplified `.gitignore` to use single test output pattern
|
|
45
|
+
- Improved README description to better reflect project capabilities
|
|
46
|
+
|
|
47
|
+
### Internal
|
|
48
|
+
- Added sorting to file discovery process
|
|
49
|
+
- Ensured consistent ordering in schema processing pipeline
|
|
50
|
+
- Fixed Map iteration order throughout codebase
|
|
51
|
+
- Sorted all collections before iteration in code generation
|
|
52
|
+
|
|
53
|
+
## [1.7.0] - 2024
|
|
54
|
+
|
|
55
|
+
### Added
|
|
56
|
+
- **Performance overhaul** with intelligent caching system
|
|
57
|
+
- **Parallel processing** support for faster schema generation
|
|
58
|
+
- **Progress reporting** with visual feedback
|
|
59
|
+
- **Minification** option for production builds
|
|
60
|
+
- **Tree-shaking** friendly exports
|
|
61
|
+
- **Lazy loading** support for validators
|
|
62
|
+
- File-based caching with MD5 hash change detection
|
|
63
|
+
- Verbose logging mode for debugging
|
|
64
|
+
- Enhanced CLI with new performance options
|
|
65
|
+
|
|
66
|
+
### Changed
|
|
67
|
+
- Refactored library entry point
|
|
68
|
+
- Improved README documentation
|
|
69
|
+
- Better TypeScript compilation handling
|
|
70
|
+
|
|
71
|
+
### Fixed
|
|
72
|
+
- TTY handling issues
|
|
73
|
+
- Windows POSIX path handling in helpers
|
|
74
|
+
- TypeScript compilation errors
|
|
75
|
+
|
|
76
|
+
## [1.6.16] - 2024
|
|
77
|
+
|
|
78
|
+
### Added
|
|
79
|
+
- Progress indicator support
|
|
80
|
+
- Namespaced exports feature
|
|
81
|
+
|
|
82
|
+
### Changed
|
|
83
|
+
- Updated dependencies
|
|
84
|
+
- Allow duplicate symbols if definitions are identical
|
|
85
|
+
|
|
86
|
+
### Fixed
|
|
87
|
+
- Windows test compatibility
|
|
88
|
+
- Non-boolean CLI options handling
|
|
89
|
+
|
|
90
|
+
## [1.6.15] - 2024
|
|
91
|
+
|
|
92
|
+
### Added
|
|
93
|
+
- Custom tsconfig path support
|
|
94
|
+
|
|
95
|
+
### Changed
|
|
96
|
+
- Documentation updates
|
|
97
|
+
|
|
98
|
+
## Earlier Versions
|
|
99
|
+
|
|
100
|
+
For changes in earlier versions, please refer to the git history or npm release notes.
|
|
101
|
+
|
|
102
|
+
## Migration Guide
|
|
103
|
+
|
|
104
|
+
### Upgrading to 1.8.0
|
|
105
|
+
|
|
106
|
+
If you're experiencing hash inconsistencies between runs:
|
|
107
|
+
|
|
108
|
+
1. Update to version 1.8.0 or later
|
|
109
|
+
2. Clear your cache: `rm -rf .ts-runtime-validation-cache`
|
|
110
|
+
3. Regenerate your schemas: `ts-runtime-validation --cache`
|
|
111
|
+
|
|
112
|
+
The deterministic output fix ensures consistent file generation across multiple runs, which is essential for:
|
|
113
|
+
- CI/CD pipelines
|
|
114
|
+
- Git diff stability
|
|
115
|
+
- Build reproducibility
|
|
116
|
+
- Cache effectiveness
|
|
117
|
+
|
|
118
|
+
### Upgrading to 1.7.0
|
|
119
|
+
|
|
120
|
+
To take advantage of the new performance features:
|
|
121
|
+
|
|
122
|
+
1. Enable caching for faster incremental builds: `--cache`
|
|
123
|
+
2. Keep parallel processing enabled (default): `--parallel`
|
|
124
|
+
3. Use progress reporting for long operations: `--progress`
|
|
125
|
+
4. For production builds, add: `--minify --tree-shaking`
|
|
126
|
+
|
|
127
|
+
Example migration:
|
|
128
|
+
```bash
|
|
129
|
+
# Old command
|
|
130
|
+
ts-runtime-validation
|
|
131
|
+
|
|
132
|
+
# New command with performance optimizations
|
|
133
|
+
ts-runtime-validation --cache --progress --minify --tree-shaking
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
[Unreleased]: https://github.com/thegalah/ts-runtime-validation/compare/v1.8.1...HEAD
|
|
139
|
+
[1.8.1]: https://github.com/thegalah/ts-runtime-validation/compare/v1.8.0...v1.8.1
|
|
140
|
+
[1.8.0]: https://github.com/thegalah/ts-runtime-validation/compare/v1.7.0...v1.8.0
|
|
141
|
+
[1.7.0]: https://github.com/thegalah/ts-runtime-validation/compare/v1.6.16...v1.7.0
|
|
142
|
+
[1.6.16]: https://github.com/thegalah/ts-runtime-validation/compare/v1.6.15...v1.6.16
|
|
143
|
+
[1.6.15]: https://github.com/thegalah/ts-runtime-validation/releases/tag/v1.6.15
|
package/package.json
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ts-runtime-validation",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.1",
|
|
4
4
|
"author": "Matthew Duong <thegalah@gmail.com>",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"
|
|
7
|
+
"ajv": "^8.11.0",
|
|
8
|
+
"commander": "^14.0.0",
|
|
8
9
|
"fdir": "^6.0.1",
|
|
9
|
-
"picomatch": "^
|
|
10
|
-
"ts-json-schema-generator": "^
|
|
11
|
-
"ts-morph": "^
|
|
10
|
+
"picomatch": "^4.0.3",
|
|
11
|
+
"ts-json-schema-generator": "^2.4.0",
|
|
12
|
+
"ts-morph": "^26.0.0"
|
|
12
13
|
},
|
|
13
14
|
"bin": {
|
|
14
15
|
"ts-runtime-validation": "dist/index.js"
|
|
@@ -19,10 +20,10 @@
|
|
|
19
20
|
"test": "jest --silent --collectCoverage false"
|
|
20
21
|
},
|
|
21
22
|
"devDependencies": {
|
|
22
|
-
"@types/jest": "^
|
|
23
|
-
"@types/node": "^
|
|
24
|
-
"@types/picomatch": "^
|
|
25
|
-
"jest": "^
|
|
23
|
+
"@types/jest": "^30.0.0",
|
|
24
|
+
"@types/node": "^24.3.0",
|
|
25
|
+
"@types/picomatch": "^4.0.2",
|
|
26
|
+
"jest": "^30.0.5",
|
|
26
27
|
"prettier": "^3.0.0",
|
|
27
28
|
"ts-jest": "^29.1.1",
|
|
28
29
|
"ts-node": "^10.9.1",
|