Project: f5-corkscrew - TypeScript tool for parsing F5 BIG-IP TMOS configurations Context: See CLAUDE.md for full project details, PARSER_ANALYSIS.md for parser architecture Current state: 107 tests passing, v1.6.1 with dependency cleanup
This document tracks dependency cleanup and code consolidation completed during the v1.6.x releases.
| Item | Status | Action |
|---|---|---|
| Package version bump | ✅ Done | 1.6.0 → 1.6.1 |
@types/deepmerge |
✅ Done | Removed (unused) |
glob update |
✅ Done | Updated to v13 |
npm audit |
✅ Done | 0 vulnerabilities |
balanced-match |
✅ Done | Removed (unused) |
decompress |
✅ Done | Removed (unused) |
xregexp |
✅ Done | Removed (dead code) |
object-path |
✅ Done | Replaced with inline func |
f5-conx-core |
✅ Done | Replaced with local logger |
| Dead code cleanup | ✅ Done | Removed ~750 lines |
- Updated
package.jsonversion from 1.5.0 to 1.6.0
- Removed
@types/deepmerge(unused - usingdeepmerge-tswhich has built-in types) - Updated
globfrom 11.1.0 to 13.0.0 (no breaking changes, all tests pass)
-
npm audit- 0 vulnerabilities found
Status: ✅ REMOVED
Was an early dependency for bracket matching. Replaced by custom balancedRx1 and balancedRxAll functions in src/tmos2json.ts (April 2023). No imports remained in the codebase.
Status: ✅ REMOVED
Early approach to archive extraction. The codebase now uses tar-stream for streaming archive unpacking (see src/unPackerStream.ts). No imports remained.
Status: ✅ REMOVED (with dead code)
Was only used by digBrackets() in src/deepParse.ts, which was only used by parseDeep() - both dead code. Removed along with dead code cleanup.
Status: ✅ REPLACED
Single use in src/digDoClassesAuto.ts replaced with inline helper:
function deepGet(obj: any, path: string[]): any {
return path.reduce((acc, key) => acc?.[key], obj);
}Status: ✅ COMPLETED
Removed ~750 lines of dead code from src/deepParse.ts:
parseDeep()- massive parsing function, never calleddigBrackets()- bracket matching using XRegExp, only used by parseDeeppartitionFolder()- helper only used by parseDeep- Various imports (XRegExp, RegExTree, deepmergeInto, logger)
Consolidated:
keyValuePairs()moved tosrc/tmos2json.tssrc/deepParse.tsdeleted entirelysrc/tmos2json.tsnow contains all TMOS parsing utilities:balancedRx1(),balancedRxAll(),keyValuePairs()
Status: ✅ REPLACED
Was only used for Logger in src/cli.ts. The existing local src/logger.ts was enhanced to support CLI needs (console toggle, journal access) and CLI was updated to use it.
Also replaced isArray usage in test file with native Array.isArray().
Dependencies removed: 8 packages
balanced-match,@types/balanced-matchdecompress,@types/decompressxregexpobject-path,@types/object-pathf5-conx-core
Code removed: ~750 lines of dead parsing code
Tests: 107 passing
Vulnerabilities: 0