From 8c9167e44246e55d136e9ac987cd393546024fc7 Mon Sep 17 00:00:00 2001 From: Michael Kriese <michael.kriese@visualon.de> Date: Mon, 29 Jan 2024 15:29:22 +0100 Subject: [PATCH] feat(node): use node-version datasource (#26918) --- lib/modules/manager/nodenv/extract.spec.ts | 9 +++------ lib/modules/manager/nodenv/extract.ts | 5 ++--- lib/modules/manager/nodenv/index.ts | 4 ++-- .../extract/__snapshots__/index.spec.ts.snap | 20 +++++-------------- .../manager/npm/extract/common/dependency.ts | 10 +++------- lib/modules/manager/npm/extract/index.spec.ts | 15 ++++---------- lib/modules/manager/npm/index.ts | 7 ++++++- lib/modules/manager/nvm/extract.spec.ts | 9 +++------ lib/modules/manager/nvm/extract.ts | 5 ++--- lib/modules/manager/nvm/index.ts | 4 ++-- .../travis/__snapshots__/extract.spec.ts.snap | 6 ++---- lib/modules/manager/travis/extract.spec.ts | 18 ++++++----------- lib/modules/manager/travis/extract.ts | 11 ++++------ lib/modules/manager/travis/index.ts | 4 ++-- 14 files changed, 46 insertions(+), 81 deletions(-) diff --git a/lib/modules/manager/nodenv/extract.spec.ts b/lib/modules/manager/nodenv/extract.spec.ts index f0b6ded133..d21928d08b 100644 --- a/lib/modules/manager/nodenv/extract.spec.ts +++ b/lib/modules/manager/nodenv/extract.spec.ts @@ -7,9 +7,8 @@ describe('modules/manager/nodenv/extract', () => { expect(res.deps).toEqual([ { currentValue: '8.4.0', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ]); }); @@ -19,9 +18,8 @@ describe('modules/manager/nodenv/extract', () => { expect(res.deps).toEqual([ { currentValue: '8.4', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ]); }); @@ -31,9 +29,8 @@ describe('modules/manager/nodenv/extract', () => { expect(res.deps).toEqual([ { currentValue: 'latestn', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ]); }); diff --git a/lib/modules/manager/nodenv/extract.ts b/lib/modules/manager/nodenv/extract.ts index a5f6a50f91..dcf6e5127a 100644 --- a/lib/modules/manager/nodenv/extract.ts +++ b/lib/modules/manager/nodenv/extract.ts @@ -1,12 +1,11 @@ -import { GithubTagsDatasource } from '../../datasource/github-tags'; +import { NodeVersionDatasource } from '../../datasource/node-version'; import type { PackageDependency, PackageFileContent } from '../types'; export function extractPackageFile(content: string): PackageFileContent { const dep: PackageDependency = { depName: 'node', currentValue: content.trim(), - datasource: GithubTagsDatasource.id, - packageName: 'nodejs/node', + datasource: NodeVersionDatasource.id, }; return { deps: [dep] }; } diff --git a/lib/modules/manager/nodenv/index.ts b/lib/modules/manager/nodenv/index.ts index 7343b6aced..82de3127ad 100644 --- a/lib/modules/manager/nodenv/index.ts +++ b/lib/modules/manager/nodenv/index.ts @@ -1,5 +1,5 @@ import type { Category } from '../../../constants'; -import { GithubTagsDatasource } from '../../datasource/github-tags'; +import { NodeVersionDatasource } from '../../datasource/node-version'; import * as nodeVersioning from '../../versioning/node'; export { extractPackageFile } from './extract'; @@ -14,4 +14,4 @@ export const defaultConfig = { export const categories: Category[] = ['js', 'node']; -export const supportedDatasources = [GithubTagsDatasource.id]; +export const supportedDatasources = [NodeVersionDatasource.id]; diff --git a/lib/modules/manager/npm/extract/__snapshots__/index.spec.ts.snap b/lib/modules/manager/npm/extract/__snapshots__/index.spec.ts.snap index 863cb69ff2..f8151a8d67 100644 --- a/lib/modules/manager/npm/extract/__snapshots__/index.spec.ts.snap +++ b/lib/modules/manager/npm/extract/__snapshots__/index.spec.ts.snap @@ -82,12 +82,10 @@ exports[`modules/manager/npm/extract/index .extractPackageFile() extracts engine { "commitMessageTopic": "Node.js", "currentValue": ">= 8.9.2", - "datasource": "github-tags", + "datasource": "node-version", "depName": "node", "depType": "engines", - "packageName": "nodejs/node", "prettyDepType": "engine", - "versioning": "node", }, { "commitMessageTopic": "npm", @@ -440,22 +438,18 @@ exports[`modules/manager/npm/extract/index .extractPackageFile() extracts volta { "commitMessageTopic": "Node.js", "currentValue": "8.9.2", - "datasource": "github-tags", + "datasource": "node-version", "depName": "node", "depType": "engines", - "packageName": "nodejs/node", "prettyDepType": "engine", - "versioning": "node", }, { "commitMessageTopic": "Node.js", "currentValue": "8.9.2", - "datasource": "github-tags", + "datasource": "node-version", "depName": "node", "depType": "volta", - "packageName": "nodejs/node", "prettyDepType": "volta", - "versioning": "node", }, { "commitMessageTopic": "Yarn", @@ -512,22 +506,18 @@ exports[`modules/manager/npm/extract/index .extractPackageFile() extracts volta { "commitMessageTopic": "Node.js", "currentValue": "8.9.2", - "datasource": "github-tags", + "datasource": "node-version", "depName": "node", "depType": "engines", - "packageName": "nodejs/node", "prettyDepType": "engine", - "versioning": "node", }, { "commitMessageTopic": "Node.js", "currentValue": "8.9.2", - "datasource": "github-tags", + "datasource": "node-version", "depName": "node", "depType": "volta", - "packageName": "nodejs/node", "prettyDepType": "volta", - "versioning": "node", }, { "commitMessageTopic": "Yarn", diff --git a/lib/modules/manager/npm/extract/common/dependency.ts b/lib/modules/manager/npm/extract/common/dependency.ts index 1fc13de840..36caa1efc6 100644 --- a/lib/modules/manager/npm/extract/common/dependency.ts +++ b/lib/modules/manager/npm/extract/common/dependency.ts @@ -3,8 +3,8 @@ import validateNpmPackageName from 'validate-npm-package-name'; import { logger } from '../../../../../logger'; import { regEx } from '../../../../../util/regex'; import { GithubTagsDatasource } from '../../../../datasource/github-tags'; +import { NodeVersionDatasource } from '../../../../datasource/node-version'; import { NpmDatasource } from '../../../../datasource/npm'; -import * as nodeVersioning from '../../../../versioning/node'; import { api, isValid, isVersion } from '../../../../versioning/npm'; import type { PackageDependency } from '../../../types'; @@ -38,9 +38,7 @@ export function extractDependency( dep.currentValue = input.trim(); if (depType === 'engines' || depType === 'packageManager') { if (depName === 'node') { - dep.datasource = GithubTagsDatasource.id; - dep.packageName = 'nodejs/node'; - dep.versioning = nodeVersioning.id; + dep.datasource = NodeVersionDatasource.id; } else if (depName === 'yarn') { dep.datasource = NpmDatasource.id; dep.commitMessageTopic = 'Yarn'; @@ -70,9 +68,7 @@ export function extractDependency( // support for volta if (depType === 'volta') { if (depName === 'node') { - dep.datasource = GithubTagsDatasource.id; - dep.packageName = 'nodejs/node'; - dep.versioning = nodeVersioning.id; + dep.datasource = NodeVersionDatasource.id; } else if (depName === 'yarn') { dep.datasource = NpmDatasource.id; dep.commitMessageTopic = 'Yarn'; diff --git a/lib/modules/manager/npm/extract/index.spec.ts b/lib/modules/manager/npm/extract/index.spec.ts index fbedd8a31f..428ad3c13e 100644 --- a/lib/modules/manager/npm/extract/index.spec.ts +++ b/lib/modules/manager/npm/extract/index.spec.ts @@ -366,8 +366,7 @@ describe('modules/manager/npm/extract/index', () => { { depName: 'node', currentValue: '>= 8.9.2', - datasource: 'github-tags', - versioning: 'node', + datasource: 'node-version', depType: 'engines', }, { @@ -462,12 +461,10 @@ describe('modules/manager/npm/extract/index', () => { { commitMessageTopic: 'Node.js', currentValue: '8.9.2', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', depType: 'volta', - packageName: 'nodejs/node', prettyDepType: 'volta', - versioning: 'node', }, { commitMessageTopic: 'Yarn', @@ -506,12 +503,10 @@ describe('modules/manager/npm/extract/index', () => { { commitMessageTopic: 'Node.js', currentValue: '16.0.0', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', depType: 'volta', - packageName: 'nodejs/node', prettyDepType: 'volta', - versioning: 'node', }, { commitMessageTopic: 'Yarn', @@ -683,12 +678,10 @@ describe('modules/manager/npm/extract/index', () => { { commitMessageTopic: 'Node.js', currentValue: '8.9.2', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', depType: 'engines', - packageName: 'nodejs/node', prettyDepType: 'engine', - versioning: 'node', }, { commitMessageTopic: 'Yarn', diff --git a/lib/modules/manager/npm/index.ts b/lib/modules/manager/npm/index.ts index 26b11772e3..96e3741735 100644 --- a/lib/modules/manager/npm/index.ts +++ b/lib/modules/manager/npm/index.ts @@ -1,5 +1,6 @@ import type { Category } from '../../../constants'; import { GithubTagsDatasource } from '../../datasource/github-tags'; +import { NodeVersionDatasource } from '../../datasource/node-version'; import { NpmDatasource } from '../../datasource/npm'; import * as npmVersioning from '../../versioning/npm'; @@ -31,4 +32,8 @@ export const defaultConfig = { export const categories: Category[] = ['js']; -export const supportedDatasources = [GithubTagsDatasource.id, NpmDatasource.id]; +export const supportedDatasources = [ + GithubTagsDatasource.id, + NpmDatasource.id, + NodeVersionDatasource.id, +]; diff --git a/lib/modules/manager/nvm/extract.spec.ts b/lib/modules/manager/nvm/extract.spec.ts index 85b94329c2..6bbe9f4d24 100644 --- a/lib/modules/manager/nvm/extract.spec.ts +++ b/lib/modules/manager/nvm/extract.spec.ts @@ -7,9 +7,8 @@ describe('modules/manager/nvm/extract', () => { expect(res.deps).toEqual([ { currentValue: '8.4.0', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ]); }); @@ -19,9 +18,8 @@ describe('modules/manager/nvm/extract', () => { expect(res.deps).toEqual([ { currentValue: '8.4', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ]); }); @@ -31,9 +29,8 @@ describe('modules/manager/nvm/extract', () => { expect(res.deps).toEqual([ { currentValue: 'latestn', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ]); }); diff --git a/lib/modules/manager/nvm/extract.ts b/lib/modules/manager/nvm/extract.ts index a5f6a50f91..dcf6e5127a 100644 --- a/lib/modules/manager/nvm/extract.ts +++ b/lib/modules/manager/nvm/extract.ts @@ -1,12 +1,11 @@ -import { GithubTagsDatasource } from '../../datasource/github-tags'; +import { NodeVersionDatasource } from '../../datasource/node-version'; import type { PackageDependency, PackageFileContent } from '../types'; export function extractPackageFile(content: string): PackageFileContent { const dep: PackageDependency = { depName: 'node', currentValue: content.trim(), - datasource: GithubTagsDatasource.id, - packageName: 'nodejs/node', + datasource: NodeVersionDatasource.id, }; return { deps: [dep] }; } diff --git a/lib/modules/manager/nvm/index.ts b/lib/modules/manager/nvm/index.ts index 0354ac17c1..6ac1f0786a 100644 --- a/lib/modules/manager/nvm/index.ts +++ b/lib/modules/manager/nvm/index.ts @@ -1,5 +1,5 @@ import type { Category } from '../../../constants'; -import { GithubTagsDatasource } from '../../datasource/github-tags'; +import { NodeVersionDatasource } from '../../datasource/node-version'; import * as nodeVersioning from '../../versioning/node'; export { extractPackageFile } from './extract'; @@ -15,4 +15,4 @@ export const defaultConfig = { export const categories: Category[] = ['js', 'node']; -export const supportedDatasources = [GithubTagsDatasource.id]; +export const supportedDatasources = [NodeVersionDatasource.id]; diff --git a/lib/modules/manager/travis/__snapshots__/extract.spec.ts.snap b/lib/modules/manager/travis/__snapshots__/extract.spec.ts.snap index 772c5e4fb7..16c0c57dc0 100644 --- a/lib/modules/manager/travis/__snapshots__/extract.spec.ts.snap +++ b/lib/modules/manager/travis/__snapshots__/extract.spec.ts.snap @@ -5,15 +5,13 @@ exports[`modules/manager/travis/extract extractPackageFile() returns results 1`] "deps": [ { "currentValue": "6", - "datasource": "github-tags", + "datasource": "node-version", "depName": "node", - "packageName": "nodejs/node", }, { "currentValue": "8", - "datasource": "github-tags", + "datasource": "node-version", "depName": "node", - "packageName": "nodejs/node", }, ], } diff --git a/lib/modules/manager/travis/extract.spec.ts b/lib/modules/manager/travis/extract.spec.ts index 4445302c5c..0871e4c718 100644 --- a/lib/modules/manager/travis/extract.spec.ts +++ b/lib/modules/manager/travis/extract.spec.ts @@ -32,9 +32,8 @@ describe('modules/manager/travis/extract', () => { deps: [ { currentValue: '11.10.1', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ], }); @@ -46,15 +45,13 @@ describe('modules/manager/travis/extract', () => { deps: [ { currentValue: '11.10.1', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, { currentValue: '11.10.2', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ], }); @@ -66,15 +63,13 @@ describe('modules/manager/travis/extract', () => { deps: [ { currentValue: '11.10.1', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, { currentValue: '11.10.2', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ], }); @@ -86,9 +81,8 @@ describe('modules/manager/travis/extract', () => { deps: [ { currentValue: '11.10.1', - datasource: 'github-tags', + datasource: 'node-version', depName: 'node', - packageName: 'nodejs/node', }, ], }); diff --git a/lib/modules/manager/travis/extract.ts b/lib/modules/manager/travis/extract.ts index 79da049c49..4916a823e5 100644 --- a/lib/modules/manager/travis/extract.ts +++ b/lib/modules/manager/travis/extract.ts @@ -1,7 +1,7 @@ import is from '@sindresorhus/is'; import { logger } from '../../../logger'; import { parseSingleYaml } from '../../../util/yaml'; -import { GithubTagsDatasource } from '../../datasource/github-tags'; +import { NodeVersionDatasource } from '../../datasource/node-version'; import type { PackageDependency, PackageFileContent } from '../types'; import type { TravisMatrixItem, TravisYaml } from './types'; @@ -23,8 +23,7 @@ export function extractPackageFile( if (doc && is.array(doc.node_js)) { deps = doc.node_js.map((currentValue) => ({ depName: 'node', - datasource: GithubTagsDatasource.id, - packageName: 'nodejs/node', + datasource: NodeVersionDatasource.id, currentValue: currentValue.toString(), })); } @@ -47,16 +46,14 @@ export function extractPackageFile( item.node_js.forEach((currentValue) => { deps.push({ depName: 'node', - datasource: GithubTagsDatasource.id, - packageName: 'nodejs/node', + datasource: NodeVersionDatasource.id, currentValue: currentValue.toString(), }); }); } else if (is.string(item.node_js)) { deps.push({ depName: 'node', - datasource: GithubTagsDatasource.id, - packageName: 'nodejs/node', + datasource: NodeVersionDatasource.id, currentValue: item.node_js.toString(), }); } diff --git a/lib/modules/manager/travis/index.ts b/lib/modules/manager/travis/index.ts index 048cc096f2..87a16020b7 100644 --- a/lib/modules/manager/travis/index.ts +++ b/lib/modules/manager/travis/index.ts @@ -1,10 +1,10 @@ import type { Category } from '../../../constants'; -import { GithubTagsDatasource } from '../../datasource/github-tags'; +import { NodeVersionDatasource } from '../../datasource/node-version'; import * as nodeVersioning from '../../versioning/node'; export { extractPackageFile } from './extract'; -export const supportedDatasources = [GithubTagsDatasource.id]; +export const supportedDatasources = [NodeVersionDatasource.id]; export const defaultConfig = { fileMatch: ['^\\.travis\\.ya?ml$'], -- GitLab