MCPcopy Create free account
hub / github.com/TanStack/cli / updatePackageJson

Function updatePackageJson

scripts/check-outdated-packages.js:122–174  ·  view source on GitHub ↗

* Update package.json file with new versions

(filePath, outdatedPackages)

Source from the content-addressed store, hash-verified

120 * Update package.json file with new versions
121 */
122function updatePackageJson(filePath, outdatedPackages) {
123 try {
124 const content = readFileSync(filePath, 'utf8')
125 const packageJson = JSON.parse(content)
126
127 let updated = false
128
129 for (const pkg of outdatedPackages) {
130 // Check and update in dependencies
131 if (packageJson.dependencies && packageJson.dependencies[pkg.name]) {
132 const currentRange = packageJson.dependencies[pkg.name]
133 const newRange = updateVersionRange(currentRange, pkg.latest)
134 packageJson.dependencies[pkg.name] = newRange
135 updated = true
136 }
137
138 // Check and update in devDependencies
139 if (
140 packageJson.devDependencies &&
141 packageJson.devDependencies[pkg.name]
142 ) {
143 const currentRange = packageJson.devDependencies[pkg.name]
144 const newRange = updateVersionRange(currentRange, pkg.latest)
145 packageJson.devDependencies[pkg.name] = newRange
146 updated = true
147 }
148
149 // Check and update in peerDependencies
150 if (
151 packageJson.peerDependencies &&
152 packageJson.peerDependencies[pkg.name]
153 ) {
154 const currentRange = packageJson.peerDependencies[pkg.name]
155 const newRange = updateVersionRange(currentRange, pkg.latest)
156 packageJson.peerDependencies[pkg.name] = newRange
157 updated = true
158 }
159 }
160
161 if (updated) {
162 // Write back with proper formatting
163 writeFileSync(filePath, JSON.stringify(packageJson, null, 2) + '\n')
164 return true
165 }
166
167 return false
168 } catch (error) {
169 console.error(
170 `${colors.red}Error updating ${filePath}: ${error.message}${colors.reset}`,
171 )
172 return false
173 }
174}
175
176/**
177 * Update version range while preserving the range type (^, ~, etc.)

Callers 1

mainFunction · 0.85

Calls 2

updateVersionRangeFunction · 0.85
errorMethod · 0.80

Tested by

no test coverage detected