diff --git a/lib/update-v8/index.js b/lib/update-v8/index.js index 0fa6c536..a8583691 100644 --- a/lib/update-v8/index.js +++ b/lib/update-v8/index.js @@ -6,11 +6,18 @@ import updateVersionNumbers from './updateVersionNumbers.js'; import commitUpdate from './commitUpdate.js'; import majorUpdate from './majorUpdate.js'; import minorUpdate from './minorUpdate.js'; +import updateMaintainingDependencies from './updateMaintainingDependencies.js'; import updateV8Clone from './updateV8Clone.js'; export function major(options) { const tasks = new Listr( - [updateV8Clone(), majorUpdate(), commitUpdate(), updateVersionNumbers()], + [ + updateV8Clone(), + majorUpdate(), + updateMaintainingDependencies(), + commitUpdate(), + updateVersionNumbers() + ], getOptions(options) ); return tasks.run(options); diff --git a/lib/update-v8/updateMaintainingDependencies.js b/lib/update-v8/updateMaintainingDependencies.js new file mode 100644 index 00000000..1090f4ae --- /dev/null +++ b/lib/update-v8/updateMaintainingDependencies.js @@ -0,0 +1,34 @@ +import { promises as fs } from 'node:fs'; +import { getNodeV8Version } from './util.js'; + +export default function updateMaintainingDependencies() { + return { + title: 'Update V8 version in maintaining-dependencies.md', + task: async(ctx) => { + const path = `${ctx.nodeDir}/doc/contributing/maintaining/maintaining-dependencies.md`; + let maintainingDependenciesMd = await fs.readFile(path, 'utf8'); + const v8Version = (await getNodeV8Version(ctx.nodeDir)).toString(); + const v8VersionNoDots = v8Version.replaceAll('.', ''); + // V8 itemlist link + maintainingDependenciesMd = maintainingDependenciesMd.replace( + /\* \[V8.*/, + `* [V8 ${v8Version}][]` + ); + // V8 link to section + maintainingDependenciesMd = maintainingDependenciesMd.replace( + /\[v8.*\]: #v8.*/, + `[v8 ${v8Version}]: #v8-${v8VersionNoDots}` + ); + // V8 section title + maintainingDependenciesMd = maintainingDependenciesMd.replace( + /### V8.*/, + `### V8 ${v8Version}` + ); + await fs.writeFile(path, maintainingDependenciesMd); + await ctx.execGitNode( + 'add', + ['doc/contributing/maintaining/maintaining-dependencies.md'] + ); + } + }; +};