mirror of
https://github.com/renovatebot/renovate.git
synced 2025-01-26 14:36:26 +00:00
Merge branch 'feat/readable-schedule-desc' of https://github.com/RahulGautamSingh/renovate into feat/readable-schedule-desc
This commit is contained in:
commit
f8cc0e2f19
34 changed files with 711 additions and 462 deletions
4
.github/workflows/build.yml
vendored
4
.github/workflows/build.yml
vendored
|
@ -31,7 +31,7 @@ concurrency:
|
||||||
env:
|
env:
|
||||||
DEFAULT_BRANCH: ${{ github.event.repository.default_branch }}
|
DEFAULT_BRANCH: ${{ github.event.repository.default_branch }}
|
||||||
NODE_VERSION: 22
|
NODE_VERSION: 22
|
||||||
PDM_VERSION: 2.22.0 # renovate: datasource=pypi depName=pdm
|
PDM_VERSION: 2.22.1 # renovate: datasource=pypi depName=pdm
|
||||||
DRY_RUN: true
|
DRY_RUN: true
|
||||||
TEST_LEGACY_DECRYPTION: true
|
TEST_LEGACY_DECRYPTION: true
|
||||||
SPARSE_CHECKOUT: |-
|
SPARSE_CHECKOUT: |-
|
||||||
|
@ -438,7 +438,7 @@ jobs:
|
||||||
merge-multiple: true
|
merge-multiple: true
|
||||||
|
|
||||||
- name: Codecov
|
- name: Codecov
|
||||||
uses: codecov/codecov-action@7f8b4b4bde536c465e797be725718b88c5d95e0e # v5.1.1
|
uses: codecov/codecov-action@1e68e06f1dbfde0e4cefc87efeba9e4643565303 # v5.1.2
|
||||||
with:
|
with:
|
||||||
token: ${{ secrets.CODECOV_TOKEN }}
|
token: ${{ secrets.CODECOV_TOKEN }}
|
||||||
directory: coverage/lcov
|
directory: coverage/lcov
|
||||||
|
|
6
.github/workflows/codeql-analysis.yml
vendored
6
.github/workflows/codeql-analysis.yml
vendored
|
@ -41,7 +41,7 @@ jobs:
|
||||||
|
|
||||||
# Initializes the CodeQL tools for scanning.
|
# Initializes the CodeQL tools for scanning.
|
||||||
- name: Initialize CodeQL
|
- name: Initialize CodeQL
|
||||||
uses: github/codeql-action/init@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
|
uses: github/codeql-action/init@48ab28a6f5dbc2a99bf1e0131198dd8f1df78169 # v3.28.0
|
||||||
with:
|
with:
|
||||||
languages: javascript
|
languages: javascript
|
||||||
|
|
||||||
|
@ -51,7 +51,7 @@ jobs:
|
||||||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||||
# If this step fails, then you should remove it and run the build manually (see below)
|
# If this step fails, then you should remove it and run the build manually (see below)
|
||||||
- name: Autobuild
|
- name: Autobuild
|
||||||
uses: github/codeql-action/autobuild@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
|
uses: github/codeql-action/autobuild@48ab28a6f5dbc2a99bf1e0131198dd8f1df78169 # v3.28.0
|
||||||
|
|
||||||
# ℹ️ Command-line programs to run using the OS shell.
|
# ℹ️ Command-line programs to run using the OS shell.
|
||||||
# 📚 https://git.io/JvXDl
|
# 📚 https://git.io/JvXDl
|
||||||
|
@ -65,4 +65,4 @@ jobs:
|
||||||
# make release
|
# make release
|
||||||
|
|
||||||
- name: Perform CodeQL Analysis
|
- name: Perform CodeQL Analysis
|
||||||
uses: github/codeql-action/analyze@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
|
uses: github/codeql-action/analyze@48ab28a6f5dbc2a99bf1e0131198dd8f1df78169 # v3.28.0
|
||||||
|
|
2
.github/workflows/scorecard.yml
vendored
2
.github/workflows/scorecard.yml
vendored
|
@ -51,6 +51,6 @@ jobs:
|
||||||
|
|
||||||
# Upload the results to GitHub's code scanning dashboard.
|
# Upload the results to GitHub's code scanning dashboard.
|
||||||
- name: 'Upload to code-scanning'
|
- name: 'Upload to code-scanning'
|
||||||
uses: github/codeql-action/upload-sarif@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
|
uses: github/codeql-action/upload-sarif@48ab28a6f5dbc2a99bf1e0131198dd8f1df78169 # v3.28.0
|
||||||
with:
|
with:
|
||||||
sarif_file: results.sarif
|
sarif_file: results.sarif
|
||||||
|
|
2
.github/workflows/trivy.yml
vendored
2
.github/workflows/trivy.yml
vendored
|
@ -31,7 +31,7 @@ jobs:
|
||||||
format: 'sarif'
|
format: 'sarif'
|
||||||
output: 'trivy-results.sarif'
|
output: 'trivy-results.sarif'
|
||||||
|
|
||||||
- uses: github/codeql-action/upload-sarif@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
|
- uses: github/codeql-action/upload-sarif@48ab28a6f5dbc2a99bf1e0131198dd8f1df78169 # v3.28.0
|
||||||
with:
|
with:
|
||||||
sarif_file: trivy-results.sarif
|
sarif_file: trivy-results.sarif
|
||||||
category: 'docker-image-${{ matrix.tag }}'
|
category: 'docker-image-${{ matrix.tag }}'
|
||||||
|
|
|
@ -3357,6 +3357,7 @@ Table with options:
|
||||||
| `gomodTidyE` | Run `go mod tidy -e` after Go module updates. |
|
| `gomodTidyE` | Run `go mod tidy -e` after Go module updates. |
|
||||||
| `gomodUpdateImportPaths` | Update source import paths on major module updates, using [mod](https://github.com/marwan-at-work/mod). |
|
| `gomodUpdateImportPaths` | Update source import paths on major module updates, using [mod](https://github.com/marwan-at-work/mod). |
|
||||||
| `gomodSkipVendor` | Never run `go mod vendor` after Go module updates. |
|
| `gomodSkipVendor` | Never run `go mod vendor` after Go module updates. |
|
||||||
|
| `gomodVendor` | Always run `go mod vendor` after Go module updates even if vendor files aren't detected. |
|
||||||
| `helmUpdateSubChartArchives` | Update subchart archives in the `/charts` folder. |
|
| `helmUpdateSubChartArchives` | Update subchart archives in the `/charts` folder. |
|
||||||
| `npmDedupe` | Run `npm install` with `--prefer-dedupe` for npm >= 7 or `npm dedupe` after `package-lock.json` update for npm <= 6. |
|
| `npmDedupe` | Run `npm install` with `--prefer-dedupe` for npm >= 7 or `npm dedupe` after `package-lock.json` update for npm <= 6. |
|
||||||
| `pnpmDedupe` | Run `pnpm dedupe --config.ignore-scripts=true` after `pnpm-lock.yaml` updates. |
|
| `pnpmDedupe` | Run `pnpm dedupe --config.ignore-scripts=true` after `pnpm-lock.yaml` updates. |
|
||||||
|
|
|
@ -2390,6 +2390,7 @@ const options: RenovateOptions[] = [
|
||||||
'gomodTidyE',
|
'gomodTidyE',
|
||||||
'gomodUpdateImportPaths',
|
'gomodUpdateImportPaths',
|
||||||
'gomodSkipVendor',
|
'gomodSkipVendor',
|
||||||
|
'gomodVendor',
|
||||||
'helmUpdateSubChartArchives',
|
'helmUpdateSubChartArchives',
|
||||||
'npmDedupe',
|
'npmDedupe',
|
||||||
'pnpmDedupe',
|
'pnpmDedupe',
|
||||||
|
|
|
@ -316,9 +316,10 @@ const staticGroups = {
|
||||||
'k8s.io/cluster-bootstrap**',
|
'k8s.io/cluster-bootstrap**',
|
||||||
'k8s.io/code-generator**',
|
'k8s.io/code-generator**',
|
||||||
'k8s.io/component-base**',
|
'k8s.io/component-base**',
|
||||||
|
'k8s.io/component-helpers**',
|
||||||
'k8s.io/controller-manager**',
|
'k8s.io/controller-manager**',
|
||||||
'k8s.io/cri-api**',
|
'k8s.io/cri-api**',
|
||||||
// 'k8s.io/csi-api', has not go.mod set up and does not follow the versioning of other repos
|
// 'k8s.io/csi-api', has no go.mod set up and does not follow the versioning of other repos
|
||||||
'k8s.io/csi-translation-lib**',
|
'k8s.io/csi-translation-lib**',
|
||||||
'k8s.io/kube-aggregator**',
|
'k8s.io/kube-aggregator**',
|
||||||
'k8s.io/kube-controller-manager**',
|
'k8s.io/kube-controller-manager**',
|
||||||
|
|
|
@ -306,6 +306,9 @@ export interface RenovateConfig
|
||||||
statusCheckNames?: Record<StatusCheckKey, string | null>;
|
statusCheckNames?: Record<StatusCheckKey, string | null>;
|
||||||
env?: UserEnv;
|
env?: UserEnv;
|
||||||
logLevelRemap?: LogLevelRemap[];
|
logLevelRemap?: LogLevelRemap[];
|
||||||
|
|
||||||
|
branchTopic?: string;
|
||||||
|
additionalBranchPrefix?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
const CustomDatasourceFormats = ['json', 'plain', 'yaml', 'html'] as const;
|
const CustomDatasourceFormats = ['json', 'plain', 'yaml', 'html'] as const;
|
||||||
|
|
17
lib/config/validation-helpers/utils.spec.ts
Normal file
17
lib/config/validation-helpers/utils.spec.ts
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
import { getParentName } from './utils';
|
||||||
|
|
||||||
|
describe('config/validation-helpers/utils', () => {
|
||||||
|
describe('getParentName()', () => {
|
||||||
|
it('ignores encrypted in root', () => {
|
||||||
|
expect(getParentName('encrypted')).toBeEmptyString();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('handles array types', () => {
|
||||||
|
expect(getParentName('hostRules[1]')).toBe('hostRules');
|
||||||
|
});
|
||||||
|
|
||||||
|
it('handles encrypted within array types', () => {
|
||||||
|
expect(getParentName('hostRules[0].encrypted')).toBe('hostRules');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
138
lib/config/validation-helpers/utils.ts
Normal file
138
lib/config/validation-helpers/utils.ts
Normal file
|
@ -0,0 +1,138 @@
|
||||||
|
import is from '@sindresorhus/is';
|
||||||
|
import { logger } from '../../logger';
|
||||||
|
import type {
|
||||||
|
RegexManagerConfig,
|
||||||
|
RegexManagerTemplates,
|
||||||
|
} from '../../modules/manager/custom/regex/types';
|
||||||
|
import { regEx } from '../../util/regex';
|
||||||
|
import type { ValidationMessage } from '../types';
|
||||||
|
|
||||||
|
export function getParentName(parentPath: string | undefined): string {
|
||||||
|
return parentPath
|
||||||
|
? parentPath
|
||||||
|
.replace(regEx(/\.?encrypted$/), '')
|
||||||
|
.replace(regEx(/\[\d+\]$/), '')
|
||||||
|
.split('.')
|
||||||
|
.pop()!
|
||||||
|
: '.';
|
||||||
|
}
|
||||||
|
|
||||||
|
export function validatePlainObject(
|
||||||
|
val: Record<string, unknown>,
|
||||||
|
): true | string {
|
||||||
|
for (const [key, value] of Object.entries(val)) {
|
||||||
|
if (!is.string(value)) {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
export function validateNumber(
|
||||||
|
key: string,
|
||||||
|
val: unknown,
|
||||||
|
allowsNegative: boolean,
|
||||||
|
currentPath?: string,
|
||||||
|
subKey?: string,
|
||||||
|
): ValidationMessage[] {
|
||||||
|
const errors: ValidationMessage[] = [];
|
||||||
|
const path = `${currentPath}${subKey ? '.' + subKey : ''}`;
|
||||||
|
if (is.number(val)) {
|
||||||
|
if (val < 0 && !allowsNegative) {
|
||||||
|
errors.push({
|
||||||
|
topic: 'Configuration Error',
|
||||||
|
message: `Configuration option \`${path}\` should be a positive integer. Found negative value instead.`,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errors.push({
|
||||||
|
topic: 'Configuration Error',
|
||||||
|
message: `Configuration option \`${path}\` should be an integer. Found: ${JSON.stringify(
|
||||||
|
val,
|
||||||
|
)} (${typeof val}).`,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
return errors;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** An option is a false global if it has the same name as a global only option
|
||||||
|
* but is actually just the field of a non global option or field an children of the non global option
|
||||||
|
* eg. token: it's global option used as the bot's token as well and
|
||||||
|
* also it can be the token used for a platform inside the hostRules configuration
|
||||||
|
*/
|
||||||
|
export function isFalseGlobal(
|
||||||
|
optionName: string,
|
||||||
|
parentPath?: string,
|
||||||
|
): boolean {
|
||||||
|
if (parentPath?.includes('hostRules')) {
|
||||||
|
if (
|
||||||
|
optionName === 'token' ||
|
||||||
|
optionName === 'username' ||
|
||||||
|
optionName === 'password'
|
||||||
|
) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function hasField(
|
||||||
|
customManager: Partial<RegexManagerConfig>,
|
||||||
|
field: string,
|
||||||
|
): boolean {
|
||||||
|
const templateField = `${field}Template` as keyof RegexManagerTemplates;
|
||||||
|
return !!(
|
||||||
|
customManager[templateField] ??
|
||||||
|
customManager.matchStrings?.some((matchString) =>
|
||||||
|
matchString.includes(`(?<${field}>`),
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function validateRegexManagerFields(
|
||||||
|
customManager: Partial<RegexManagerConfig>,
|
||||||
|
currentPath: string,
|
||||||
|
errors: ValidationMessage[],
|
||||||
|
): void {
|
||||||
|
if (is.nonEmptyArray(customManager.matchStrings)) {
|
||||||
|
for (const matchString of customManager.matchStrings) {
|
||||||
|
try {
|
||||||
|
regEx(matchString);
|
||||||
|
} catch (err) {
|
||||||
|
logger.debug(
|
||||||
|
{ err },
|
||||||
|
'customManager.matchStrings regEx validation error',
|
||||||
|
);
|
||||||
|
errors.push({
|
||||||
|
topic: 'Configuration Error',
|
||||||
|
message: `Invalid regExp for ${currentPath}: \`${matchString}\``,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errors.push({
|
||||||
|
topic: 'Configuration Error',
|
||||||
|
message: `Each Custom Manager must contain a non-empty matchStrings array`,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const mandatoryFields = ['currentValue', 'datasource'];
|
||||||
|
for (const field of mandatoryFields) {
|
||||||
|
if (!hasField(customManager, field)) {
|
||||||
|
errors.push({
|
||||||
|
topic: 'Configuration Error',
|
||||||
|
message: `Regex Managers must contain ${field}Template configuration or regex group named ${field}`,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const nameFields = ['depName', 'packageName'];
|
||||||
|
if (!nameFields.some((field) => hasField(customManager, field))) {
|
||||||
|
errors.push({
|
||||||
|
topic: 'Configuration Error',
|
||||||
|
message: `Regex Managers must contain depName or packageName regex groups or templates`,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
|
@ -4,22 +4,6 @@ import type { RenovateConfig } from './types';
|
||||||
import * as configValidation from './validation';
|
import * as configValidation from './validation';
|
||||||
|
|
||||||
describe('config/validation', () => {
|
describe('config/validation', () => {
|
||||||
describe('getParentName()', () => {
|
|
||||||
it('ignores encrypted in root', () => {
|
|
||||||
expect(configValidation.getParentName('encrypted')).toBeEmptyString();
|
|
||||||
});
|
|
||||||
|
|
||||||
it('handles array types', () => {
|
|
||||||
expect(configValidation.getParentName('hostRules[1]')).toBe('hostRules');
|
|
||||||
});
|
|
||||||
|
|
||||||
it('handles encrypted within array types', () => {
|
|
||||||
expect(configValidation.getParentName('hostRules[0].encrypted')).toBe(
|
|
||||||
'hostRules',
|
|
||||||
);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
describe('validateConfig(config)', () => {
|
describe('validateConfig(config)', () => {
|
||||||
it('returns deprecation warnings', async () => {
|
it('returns deprecation warnings', async () => {
|
||||||
const config = {
|
const config = {
|
||||||
|
|
|
@ -1,11 +1,6 @@
|
||||||
import is from '@sindresorhus/is';
|
import is from '@sindresorhus/is';
|
||||||
import { logger } from '../logger';
|
|
||||||
import { allManagersList, getManagerList } from '../modules/manager';
|
import { allManagersList, getManagerList } from '../modules/manager';
|
||||||
import { isCustomManager } from '../modules/manager/custom';
|
import { isCustomManager } from '../modules/manager/custom';
|
||||||
import type {
|
|
||||||
RegexManagerConfig,
|
|
||||||
RegexManagerTemplates,
|
|
||||||
} from '../modules/manager/custom/regex/types';
|
|
||||||
import type { CustomManager } from '../modules/manager/custom/types';
|
import type { CustomManager } from '../modules/manager/custom/types';
|
||||||
import type { HostRule } from '../types';
|
import type { HostRule } from '../types';
|
||||||
import { getExpression } from '../util/jsonata';
|
import { getExpression } from '../util/jsonata';
|
||||||
|
@ -39,6 +34,13 @@ import { allowedStatusCheckStrings } from './types';
|
||||||
import * as managerValidator from './validation-helpers/managers';
|
import * as managerValidator from './validation-helpers/managers';
|
||||||
import * as matchBaseBranchesValidator from './validation-helpers/match-base-branches';
|
import * as matchBaseBranchesValidator from './validation-helpers/match-base-branches';
|
||||||
import * as regexOrGlobValidator from './validation-helpers/regex-glob-matchers';
|
import * as regexOrGlobValidator from './validation-helpers/regex-glob-matchers';
|
||||||
|
import {
|
||||||
|
getParentName,
|
||||||
|
isFalseGlobal,
|
||||||
|
validateNumber,
|
||||||
|
validatePlainObject,
|
||||||
|
validateRegexManagerFields,
|
||||||
|
} from './validation-helpers/utils';
|
||||||
|
|
||||||
const options = getOptions();
|
const options = getOptions();
|
||||||
|
|
||||||
|
@ -84,42 +86,6 @@ function isIgnored(key: string): boolean {
|
||||||
return ignoredNodes.includes(key);
|
return ignoredNodes.includes(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
function validatePlainObject(val: Record<string, unknown>): true | string {
|
|
||||||
for (const [key, value] of Object.entries(val)) {
|
|
||||||
if (!is.string(value)) {
|
|
||||||
return key;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
function validateNumber(
|
|
||||||
key: string,
|
|
||||||
val: unknown,
|
|
||||||
currentPath?: string,
|
|
||||||
subKey?: string,
|
|
||||||
): ValidationMessage[] {
|
|
||||||
const errors: ValidationMessage[] = [];
|
|
||||||
const path = `${currentPath}${subKey ? '.' + subKey : ''}`;
|
|
||||||
if (is.number(val)) {
|
|
||||||
if (val < 0 && !optionAllowsNegativeIntegers.has(key)) {
|
|
||||||
errors.push({
|
|
||||||
topic: 'Configuration Error',
|
|
||||||
message: `Configuration option \`${path}\` should be a positive integer. Found negative value instead.`,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
errors.push({
|
|
||||||
topic: 'Configuration Error',
|
|
||||||
message: `Configuration option \`${path}\` should be an integer. Found: ${JSON.stringify(
|
|
||||||
val,
|
|
||||||
)} (${typeof val}).`,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
return errors;
|
|
||||||
}
|
|
||||||
|
|
||||||
function getUnsupportedEnabledManagers(enabledManagers: string[]): string[] {
|
function getUnsupportedEnabledManagers(enabledManagers: string[]): string[] {
|
||||||
return enabledManagers.filter(
|
return enabledManagers.filter(
|
||||||
(manager) => !allManagersList.includes(manager.replace('custom.', '')),
|
(manager) => !allManagersList.includes(manager.replace('custom.', '')),
|
||||||
|
@ -186,16 +152,6 @@ function initOptions(): void {
|
||||||
optionsInitialized = true;
|
optionsInitialized = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getParentName(parentPath: string | undefined): string {
|
|
||||||
return parentPath
|
|
||||||
? parentPath
|
|
||||||
.replace(regEx(/\.?encrypted$/), '')
|
|
||||||
.replace(regEx(/\[\d+\]$/), '')
|
|
||||||
.split('.')
|
|
||||||
.pop()!
|
|
||||||
: '.';
|
|
||||||
}
|
|
||||||
|
|
||||||
export async function validateConfig(
|
export async function validateConfig(
|
||||||
configType: 'global' | 'inherit' | 'repo',
|
configType: 'global' | 'inherit' | 'repo',
|
||||||
config: RenovateConfig,
|
config: RenovateConfig,
|
||||||
|
@ -370,7 +326,8 @@ export async function validateConfig(
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else if (type === 'integer') {
|
} else if (type === 'integer') {
|
||||||
errors.push(...validateNumber(key, val, currentPath));
|
const allowsNegative = optionAllowsNegativeIntegers.has(key);
|
||||||
|
errors.push(...validateNumber(key, val, allowsNegative, currentPath));
|
||||||
} else if (type === 'array' && val) {
|
} else if (type === 'array' && val) {
|
||||||
if (is.array(val)) {
|
if (is.array(val)) {
|
||||||
for (const [subIndex, subval] of val.entries()) {
|
for (const [subIndex, subval] of val.entries()) {
|
||||||
|
@ -865,65 +822,6 @@ export async function validateConfig(
|
||||||
return { errors, warnings };
|
return { errors, warnings };
|
||||||
}
|
}
|
||||||
|
|
||||||
function hasField(
|
|
||||||
customManager: Partial<RegexManagerConfig>,
|
|
||||||
field: string,
|
|
||||||
): boolean {
|
|
||||||
const templateField = `${field}Template` as keyof RegexManagerTemplates;
|
|
||||||
return !!(
|
|
||||||
customManager[templateField] ??
|
|
||||||
customManager.matchStrings?.some((matchString) =>
|
|
||||||
matchString.includes(`(?<${field}>`),
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
function validateRegexManagerFields(
|
|
||||||
customManager: Partial<RegexManagerConfig>,
|
|
||||||
currentPath: string,
|
|
||||||
errors: ValidationMessage[],
|
|
||||||
): void {
|
|
||||||
if (is.nonEmptyArray(customManager.matchStrings)) {
|
|
||||||
for (const matchString of customManager.matchStrings) {
|
|
||||||
try {
|
|
||||||
regEx(matchString);
|
|
||||||
} catch (err) {
|
|
||||||
logger.debug(
|
|
||||||
{ err },
|
|
||||||
'customManager.matchStrings regEx validation error',
|
|
||||||
);
|
|
||||||
errors.push({
|
|
||||||
topic: 'Configuration Error',
|
|
||||||
message: `Invalid regExp for ${currentPath}: \`${matchString}\``,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
errors.push({
|
|
||||||
topic: 'Configuration Error',
|
|
||||||
message: `Each Custom Manager must contain a non-empty matchStrings array`,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
const mandatoryFields = ['currentValue', 'datasource'];
|
|
||||||
for (const field of mandatoryFields) {
|
|
||||||
if (!hasField(customManager, field)) {
|
|
||||||
errors.push({
|
|
||||||
topic: 'Configuration Error',
|
|
||||||
message: `Regex Managers must contain ${field}Template configuration or regex group named ${field}`,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const nameFields = ['depName', 'packageName'];
|
|
||||||
if (!nameFields.some((field) => hasField(customManager, field))) {
|
|
||||||
errors.push({
|
|
||||||
topic: 'Configuration Error',
|
|
||||||
message: `Regex Managers must contain depName or packageName regex groups or templates`,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Basic validation for global config options
|
* Basic validation for global config options
|
||||||
*/
|
*/
|
||||||
|
@ -1013,7 +911,8 @@ async function validateGlobalConfig(
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else if (type === 'integer') {
|
} else if (type === 'integer') {
|
||||||
warnings.push(...validateNumber(key, val, currentPath));
|
const allowsNegative = optionAllowsNegativeIntegers.has(key);
|
||||||
|
warnings.push(...validateNumber(key, val, allowsNegative, currentPath));
|
||||||
} else if (type === 'boolean') {
|
} else if (type === 'boolean') {
|
||||||
if (val !== true && val !== false) {
|
if (val !== true && val !== false) {
|
||||||
warnings.push({
|
warnings.push({
|
||||||
|
@ -1079,8 +978,15 @@ async function validateGlobalConfig(
|
||||||
}
|
}
|
||||||
} else if (key === 'cacheTtlOverride') {
|
} else if (key === 'cacheTtlOverride') {
|
||||||
for (const [subKey, subValue] of Object.entries(val)) {
|
for (const [subKey, subValue] of Object.entries(val)) {
|
||||||
|
const allowsNegative = optionAllowsNegativeIntegers.has(key);
|
||||||
warnings.push(
|
warnings.push(
|
||||||
...validateNumber(key, subValue, currentPath, subKey),
|
...validateNumber(
|
||||||
|
key,
|
||||||
|
subValue,
|
||||||
|
allowsNegative,
|
||||||
|
currentPath,
|
||||||
|
subKey,
|
||||||
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -1101,22 +1007,3 @@ async function validateGlobalConfig(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** An option is a false global if it has the same name as a global only option
|
|
||||||
* but is actually just the field of a non global option or field an children of the non global option
|
|
||||||
* eg. token: it's global option used as the bot's token as well and
|
|
||||||
* also it can be the token used for a platform inside the hostRules configuration
|
|
||||||
*/
|
|
||||||
function isFalseGlobal(optionName: string, parentPath?: string): boolean {
|
|
||||||
if (parentPath?.includes('hostRules')) {
|
|
||||||
if (
|
|
||||||
optionName === 'token' ||
|
|
||||||
optionName === 'username' ||
|
|
||||||
optionName === 'password'
|
|
||||||
) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
|
@ -59,10 +59,12 @@ describe('instrumentation/index', () => {
|
||||||
_registeredSpanProcessors: [
|
_registeredSpanProcessors: [
|
||||||
{
|
{
|
||||||
_exporter: {
|
_exporter: {
|
||||||
_transport: {
|
_delegate: {
|
||||||
_transport: {
|
_transport: {
|
||||||
_parameters: {
|
_transport: {
|
||||||
url: 'https://collector.example.com/v1/traces',
|
_parameters: {
|
||||||
|
url: 'https://collector.example.com/v1/traces',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -88,10 +90,12 @@ describe('instrumentation/index', () => {
|
||||||
{ _exporter: {} },
|
{ _exporter: {} },
|
||||||
{
|
{
|
||||||
_exporter: {
|
_exporter: {
|
||||||
_transport: {
|
_delegate: {
|
||||||
_transport: {
|
_transport: {
|
||||||
_parameters: {
|
_transport: {
|
||||||
url: 'https://collector.example.com/v1/traces',
|
_parameters: {
|
||||||
|
url: 'https://collector.example.com/v1/traces',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -494,7 +494,10 @@ describe('modules/datasource/go/releases-goproxy', () => {
|
||||||
.get('.v2/@latest')
|
.get('.v2/@latest')
|
||||||
.reply(200, { Version: 'v2.4.0' })
|
.reply(200, { Version: 'v2.4.0' })
|
||||||
.get('.v3/@v/list')
|
.get('.v3/@v/list')
|
||||||
.reply(200, ['v3.0.0', 'v3.0.1', ' \n'].join('\n'))
|
.reply(
|
||||||
|
200,
|
||||||
|
['v1.0.0', 'v2.0.0', 'v3.0.0', 'v3.0.1', 'v4.0.0', ' \n'].join('\n'),
|
||||||
|
)
|
||||||
.get('.v3/@v/v3.0.0.info')
|
.get('.v3/@v/v3.0.0.info')
|
||||||
.reply(200, { Version: 'v3.0.0', Time: '2022-05-21T10:33:21Z' })
|
.reply(200, { Version: 'v3.0.0', Time: '2022-05-21T10:33:21Z' })
|
||||||
.get('.v3/@v/v3.0.1.info')
|
.get('.v3/@v/v3.0.1.info')
|
||||||
|
|
|
@ -217,7 +217,20 @@ export class GoProxyDatasource extends Datasource {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const res = await this.listVersions(baseUrl, pkg);
|
const res = await this.listVersions(baseUrl, pkg);
|
||||||
releases = await p.map(res, async (versionInfo) => {
|
|
||||||
|
// Artifactory returns all versions in any major (past and future),
|
||||||
|
// so starting from v2, we filter them in order to avoid the infinite loop
|
||||||
|
const filteredReleases = res.filter(({ version }) => {
|
||||||
|
if (major < 2) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return (
|
||||||
|
version.split(regEx(/[^\d]+/)).find(is.truthy) === major.toString()
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
releases = await p.map(filteredReleases, async (versionInfo) => {
|
||||||
const { version, newDigest, releaseTimestamp } = versionInfo;
|
const { version, newDigest, releaseTimestamp } = versionInfo;
|
||||||
|
|
||||||
if (releaseTimestamp) {
|
if (releaseTimestamp) {
|
||||||
|
|
|
@ -4,7 +4,7 @@ exports[`modules/datasource/orb/index getReleases processes homeUrl 1`] = `
|
||||||
{
|
{
|
||||||
"homepage": "https://google.com",
|
"homepage": "https://google.com",
|
||||||
"isPrivate": false,
|
"isPrivate": false,
|
||||||
"registryUrl": "https://circleci.com/",
|
"registryUrl": "https://circleci.com",
|
||||||
"releases": [
|
"releases": [
|
||||||
{
|
{
|
||||||
"releaseTimestamp": "2018-12-11T05:28:14.080Z",
|
"releaseTimestamp": "2018-12-11T05:28:14.080Z",
|
||||||
|
@ -53,7 +53,7 @@ exports[`modules/datasource/orb/index getReleases processes real data 1`] = `
|
||||||
{
|
{
|
||||||
"homepage": "https://circleci.com/developer/orbs/orb/hyper-expanse/library-release-workflows",
|
"homepage": "https://circleci.com/developer/orbs/orb/hyper-expanse/library-release-workflows",
|
||||||
"isPrivate": false,
|
"isPrivate": false,
|
||||||
"registryUrl": "https://circleci.com/",
|
"registryUrl": "https://circleci.com",
|
||||||
"releases": [
|
"releases": [
|
||||||
{
|
{
|
||||||
"releaseTimestamp": "2018-12-11T05:28:14.080Z",
|
"releaseTimestamp": "2018-12-11T05:28:14.080Z",
|
||||||
|
|
|
@ -92,5 +92,18 @@ describe('modules/datasource/orb/index', () => {
|
||||||
expect(res).toMatchSnapshot();
|
expect(res).toMatchSnapshot();
|
||||||
expect(res?.homepage).toBe('https://google.com');
|
expect(res?.homepage).toBe('https://google.com');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('supports other registries', async () => {
|
||||||
|
httpMock
|
||||||
|
.scope('https://cci.internal.dev')
|
||||||
|
.post('/graphql-unstable')
|
||||||
|
.reply(200, orbData);
|
||||||
|
const res = await getPkgReleases({
|
||||||
|
datasource,
|
||||||
|
packageName: 'hyper-expanse/library-release-workflows',
|
||||||
|
registryUrls: ['https://cci.internal.dev'],
|
||||||
|
});
|
||||||
|
expect(res?.registryUrl).toBe('https://cci.internal.dev');
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { logger } from '../../../logger';
|
import { logger } from '../../../logger';
|
||||||
import { cache } from '../../../util/cache/package/decorator';
|
import { cache } from '../../../util/cache/package/decorator';
|
||||||
|
import { joinUrlParts } from '../../../util/url';
|
||||||
import { Datasource } from '../datasource';
|
import { Datasource } from '../datasource';
|
||||||
import type { GetReleasesConfig, ReleaseResult } from '../types';
|
import type { GetReleasesConfig, ReleaseResult } from '../types';
|
||||||
import type { OrbResponse } from './types';
|
import type { OrbResponse } from './types';
|
||||||
|
@ -27,9 +28,10 @@ export class OrbDatasource extends Datasource {
|
||||||
super(OrbDatasource.id);
|
super(OrbDatasource.id);
|
||||||
}
|
}
|
||||||
|
|
||||||
override readonly customRegistrySupport = false;
|
override readonly customRegistrySupport = true;
|
||||||
|
|
||||||
override readonly defaultRegistryUrls = ['https://circleci.com/'];
|
override readonly defaultRegistryUrls = ['https://circleci.com/'];
|
||||||
|
override readonly registryStrategy = 'hunt';
|
||||||
|
|
||||||
override readonly releaseTimestampSupport = true;
|
override readonly releaseTimestampSupport = true;
|
||||||
override readonly releaseTimestampNote =
|
override readonly releaseTimestampNote =
|
||||||
|
@ -47,7 +49,7 @@ export class OrbDatasource extends Datasource {
|
||||||
if (!registryUrl) {
|
if (!registryUrl) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
const url = `${registryUrl}graphql-unstable`;
|
const url = joinUrlParts(registryUrl, 'graphql-unstable');
|
||||||
const body = {
|
const body = {
|
||||||
query,
|
query,
|
||||||
variables: { packageName, maxVersions: MAX_VERSIONS },
|
variables: { packageName, maxVersions: MAX_VERSIONS },
|
||||||
|
|
|
@ -11,7 +11,7 @@ export const url = 'https://bazel.build/external/module';
|
||||||
export const categories: Category[] = ['bazel'];
|
export const categories: Category[] = ['bazel'];
|
||||||
|
|
||||||
export const defaultConfig = {
|
export const defaultConfig = {
|
||||||
fileMatch: ['(^|/)MODULE\\.bazel$'],
|
fileMatch: ['(^|/|\\.)MODULE\\.bazel$'],
|
||||||
};
|
};
|
||||||
|
|
||||||
export const supportedDatasources = [
|
export const supportedDatasources = [
|
||||||
|
|
|
@ -189,6 +189,112 @@ describe('modules/manager/gomod/artifacts', () => {
|
||||||
]);
|
]);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('runs go mod vendor with gomodVendor', async () => {
|
||||||
|
fs.readLocalFile.mockResolvedValueOnce('Current go.sum');
|
||||||
|
fs.readLocalFile.mockResolvedValueOnce('New go.sum');
|
||||||
|
fs.readLocalFile.mockResolvedValueOnce('New go.mod');
|
||||||
|
|
||||||
|
const execSnapshots = mockExecAll();
|
||||||
|
git.getRepoStatus.mockResolvedValueOnce(
|
||||||
|
partial<StatusResult>({
|
||||||
|
modified: ['go.sum'],
|
||||||
|
not_added: [],
|
||||||
|
deleted: [],
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
const res = await gomod.updateArtifacts({
|
||||||
|
packageFileName: 'go.mod',
|
||||||
|
updatedDeps: [],
|
||||||
|
newPackageFileContent: gomod1,
|
||||||
|
config: {
|
||||||
|
...config,
|
||||||
|
postUpdateOptions: ['gomodVendor'],
|
||||||
|
},
|
||||||
|
});
|
||||||
|
expect(res).toEqual([
|
||||||
|
{
|
||||||
|
file: {
|
||||||
|
contents: 'New go.sum',
|
||||||
|
path: 'go.sum',
|
||||||
|
type: 'addition',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
file: {
|
||||||
|
contents: 'New go.mod',
|
||||||
|
path: 'go.mod',
|
||||||
|
type: 'addition',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
|
||||||
|
expect(execSnapshots).toMatchObject([
|
||||||
|
{
|
||||||
|
cmd: 'go get -d -t ./...',
|
||||||
|
options: { cwd: '/tmp/github/some/repo' },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
cmd: 'go mod vendor',
|
||||||
|
options: { cwd: '/tmp/github/some/repo' },
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('runs go work vendor with gomodVendor and go.work', async () => {
|
||||||
|
fs.readLocalFile.mockResolvedValueOnce('Current go.sum');
|
||||||
|
fs.findLocalSiblingOrParent.mockResolvedValueOnce('go.work');
|
||||||
|
const execSnapshots = mockExecAll();
|
||||||
|
git.getRepoStatus.mockResolvedValueOnce(
|
||||||
|
partial<StatusResult>({
|
||||||
|
modified: ['go.sum'],
|
||||||
|
not_added: [],
|
||||||
|
deleted: [],
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
fs.readLocalFile.mockResolvedValueOnce('New go.sum');
|
||||||
|
fs.readLocalFile.mockResolvedValueOnce('New go.mod');
|
||||||
|
const res = await gomod.updateArtifacts({
|
||||||
|
packageFileName: 'go.mod',
|
||||||
|
updatedDeps: [],
|
||||||
|
newPackageFileContent: gomod1,
|
||||||
|
config: {
|
||||||
|
...config,
|
||||||
|
postUpdateOptions: ['gomodVendor'],
|
||||||
|
},
|
||||||
|
});
|
||||||
|
expect(res).toEqual([
|
||||||
|
{
|
||||||
|
file: {
|
||||||
|
contents: 'New go.sum',
|
||||||
|
path: 'go.sum',
|
||||||
|
type: 'addition',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
file: {
|
||||||
|
contents: 'New go.mod',
|
||||||
|
path: 'go.mod',
|
||||||
|
type: 'addition',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
|
||||||
|
expect(execSnapshots).toMatchObject([
|
||||||
|
{
|
||||||
|
cmd: 'go get -d -t ./...',
|
||||||
|
options: { cwd: '/tmp/github/some/repo' },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
cmd: 'go work vendor',
|
||||||
|
options: { cwd: '/tmp/github/some/repo' },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
cmd: 'go work sync',
|
||||||
|
options: { cwd: '/tmp/github/some/repo' },
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
|
||||||
it('supports vendor directory update', async () => {
|
it('supports vendor directory update', async () => {
|
||||||
const foo = join('vendor/github.com/foo/foo/go.mod');
|
const foo = join('vendor/github.com/foo/foo/go.mod');
|
||||||
const bar = join('vendor/github.com/bar/bar/go.mod');
|
const bar = join('vendor/github.com/bar/bar/go.mod');
|
||||||
|
|
|
@ -134,9 +134,9 @@ export async function updateArtifacts({
|
||||||
const vendorDir = upath.join(goModDir, 'vendor/');
|
const vendorDir = upath.join(goModDir, 'vendor/');
|
||||||
const vendorModulesFileName = upath.join(vendorDir, 'modules.txt');
|
const vendorModulesFileName = upath.join(vendorDir, 'modules.txt');
|
||||||
const useVendor =
|
const useVendor =
|
||||||
!config.postUpdateOptions?.includes('gomodSkipVendor') &&
|
!!config.postUpdateOptions?.includes('gomodVendor') ||
|
||||||
(await readLocalFile(vendorModulesFileName)) !== null;
|
(!config.postUpdateOptions?.includes('gomodSkipVendor') &&
|
||||||
|
(await readLocalFile(vendorModulesFileName)) !== null);
|
||||||
let massagedGoMod = newGoModContent;
|
let massagedGoMod = newGoModContent;
|
||||||
|
|
||||||
if (config.postUpdateOptions?.includes('gomodMassage')) {
|
if (config.postUpdateOptions?.includes('gomodMassage')) {
|
||||||
|
|
|
@ -312,7 +312,7 @@ export async function updateYarnBinary(
|
||||||
let yarnrcYml = existingYarnrcYmlContent;
|
let yarnrcYml = existingYarnrcYmlContent;
|
||||||
try {
|
try {
|
||||||
const yarnrcYmlFilename = upath.join(lockFileDir, '.yarnrc.yml');
|
const yarnrcYmlFilename = upath.join(lockFileDir, '.yarnrc.yml');
|
||||||
yarnrcYml ||= (await getFile(yarnrcYmlFilename)) ?? undefined;
|
yarnrcYml ??= (await getFile(yarnrcYmlFilename)) ?? undefined;
|
||||||
const newYarnrcYml = await readLocalFile(yarnrcYmlFilename, 'utf8');
|
const newYarnrcYml = await readLocalFile(yarnrcYmlFilename, 'utf8');
|
||||||
if (!is.string(yarnrcYml) || !is.string(newYarnrcYml)) {
|
if (!is.string(yarnrcYml) || !is.string(newYarnrcYml)) {
|
||||||
return existingYarnrcYmlContent;
|
return existingYarnrcYmlContent;
|
||||||
|
|
|
@ -6,6 +6,7 @@ import * as composer from './composer';
|
||||||
import * as conan from './conan';
|
import * as conan from './conan';
|
||||||
import * as deb from './deb';
|
import * as deb from './deb';
|
||||||
import * as debian from './debian';
|
import * as debian from './debian';
|
||||||
|
import * as devbox from './devbox';
|
||||||
import * as docker from './docker';
|
import * as docker from './docker';
|
||||||
import * as git from './git';
|
import * as git from './git';
|
||||||
import * as glasskube from './glasskube';
|
import * as glasskube from './glasskube';
|
||||||
|
@ -52,6 +53,7 @@ api.set(composer.id, composer.api);
|
||||||
api.set(conan.id, conan.api);
|
api.set(conan.id, conan.api);
|
||||||
api.set(deb.id, deb.api);
|
api.set(deb.id, deb.api);
|
||||||
api.set(debian.id, debian.api);
|
api.set(debian.id, debian.api);
|
||||||
|
api.set(devbox.id, devbox.api);
|
||||||
api.set(docker.id, docker.api);
|
api.set(docker.id, docker.api);
|
||||||
api.set(git.id, git.api);
|
api.set(git.id, git.api);
|
||||||
api.set(glasskube.id, glasskube.api);
|
api.set(glasskube.id, glasskube.api);
|
||||||
|
|
103
lib/modules/versioning/devbox/index.spec.ts
Normal file
103
lib/modules/versioning/devbox/index.spec.ts
Normal file
|
@ -0,0 +1,103 @@
|
||||||
|
import devbox from '.';
|
||||||
|
|
||||||
|
describe('modules/versioning/devbox/index', () => {
|
||||||
|
it.each`
|
||||||
|
version | expected
|
||||||
|
${'1'} | ${false}
|
||||||
|
${'01'} | ${false}
|
||||||
|
${'1.01'} | ${false}
|
||||||
|
${'1.1'} | ${false}
|
||||||
|
${'1.3.0'} | ${true}
|
||||||
|
${'2.1.20'} | ${true}
|
||||||
|
${'v1.4'} | ${false}
|
||||||
|
${'V0.5'} | ${false}
|
||||||
|
${'3.5.0'} | ${true}
|
||||||
|
${'4.2.21.Final'} | ${false}
|
||||||
|
${'1234'} | ${false}
|
||||||
|
${'foo'} | ${false}
|
||||||
|
${'latest'} | ${false}
|
||||||
|
${''} | ${false}
|
||||||
|
${'3.5.0-beta.3'} | ${false}
|
||||||
|
${'*'} | ${false}
|
||||||
|
${'x'} | ${false}
|
||||||
|
${'X'} | ${false}
|
||||||
|
${'~1.2.3'} | ${false}
|
||||||
|
${'>1.2.3'} | ${false}
|
||||||
|
${'^1.2.3'} | ${false}
|
||||||
|
${'1.2.3-foo'} | ${false}
|
||||||
|
${'1.2.3foo'} | ${false}
|
||||||
|
`('isVersion("$version") === $expected', ({ version, expected }) => {
|
||||||
|
expect(!!devbox.isVersion(version)).toBe(expected);
|
||||||
|
});
|
||||||
|
|
||||||
|
it.each`
|
||||||
|
version | isValid
|
||||||
|
${'1'} | ${true}
|
||||||
|
${'01'} | ${false}
|
||||||
|
${'1.01'} | ${false}
|
||||||
|
${'1.1'} | ${true}
|
||||||
|
${'1.3.0'} | ${true}
|
||||||
|
${'2.1.20'} | ${true}
|
||||||
|
${'v1.4'} | ${false}
|
||||||
|
${'V0.5'} | ${false}
|
||||||
|
${'3.5.0'} | ${true}
|
||||||
|
${'4.2.21.Final'} | ${false}
|
||||||
|
${'1234'} | ${true}
|
||||||
|
${'foo'} | ${false}
|
||||||
|
${'latest'} | ${true}
|
||||||
|
${''} | ${false}
|
||||||
|
${'3.5.0-beta.3'} | ${false}
|
||||||
|
${'*'} | ${false}
|
||||||
|
${'x'} | ${false}
|
||||||
|
${'X'} | ${false}
|
||||||
|
${'~1.2.3'} | ${false}
|
||||||
|
${'>1.2.3'} | ${false}
|
||||||
|
${'^1.2.3'} | ${false}
|
||||||
|
${'1.2.3-foo'} | ${false}
|
||||||
|
${'1.2.3foo'} | ${false}
|
||||||
|
`('isValid("$version") === $isValid', ({ version, isValid }) => {
|
||||||
|
expect(!!devbox.isValid(version)).toBe(isValid);
|
||||||
|
});
|
||||||
|
|
||||||
|
it.each`
|
||||||
|
version | range | expected
|
||||||
|
${'1'} | ${'1'} | ${false}
|
||||||
|
${'1'} | ${'0'} | ${false}
|
||||||
|
${'1.2.3'} | ${'1'} | ${true}
|
||||||
|
${'1.2'} | ${'1'} | ${false}
|
||||||
|
${'1.0.0'} | ${'1'} | ${true}
|
||||||
|
${'1.2.0'} | ${'1.2'} | ${true}
|
||||||
|
${'1.2.3'} | ${'1.2'} | ${true}
|
||||||
|
${'0'} | ${'latest'} | ${false}
|
||||||
|
${'1.2.3'} | ${'latest'} | ${true}
|
||||||
|
${'1.2.3.5'} | ${'1.2.3.5'} | ${false}
|
||||||
|
${'1.2'} | ${'1.2.3'} | ${false}
|
||||||
|
`(
|
||||||
|
'matches("$version", "$range") === $expected',
|
||||||
|
({ version, range, expected }) => {
|
||||||
|
expect(devbox.matches(version, range)).toBe(expected);
|
||||||
|
},
|
||||||
|
);
|
||||||
|
|
||||||
|
it.each`
|
||||||
|
version | range | expected
|
||||||
|
${'1'} | ${'1'} | ${true}
|
||||||
|
${'1'} | ${'0'} | ${false}
|
||||||
|
${'1.2.3'} | ${'1'} | ${true}
|
||||||
|
${'1.2'} | ${'1'} | ${true}
|
||||||
|
${'1.0.0'} | ${'1'} | ${true}
|
||||||
|
${'1.2.0'} | ${'1.2'} | ${true}
|
||||||
|
${'1.2.3'} | ${'1.2'} | ${true}
|
||||||
|
${'0'} | ${'latest'} | ${true}
|
||||||
|
${'1.2.3'} | ${'latest'} | ${true}
|
||||||
|
${'1.2.3.5'} | ${'1.2.3.5'} | ${false}
|
||||||
|
${'latest'} | ${'latest'} | ${false}
|
||||||
|
${'latest'} | ${'1.2.3'} | ${false}
|
||||||
|
${'1.2'} | ${'1.2.3'} | ${true}
|
||||||
|
`(
|
||||||
|
'equals("$version", "$range") === $expected',
|
||||||
|
({ version, range, expected }) => {
|
||||||
|
expect(devbox.equals(version, range)).toBe(expected);
|
||||||
|
},
|
||||||
|
);
|
||||||
|
});
|
74
lib/modules/versioning/devbox/index.ts
Normal file
74
lib/modules/versioning/devbox/index.ts
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
import { regEx } from '../../../util/regex';
|
||||||
|
import type { GenericVersion } from '../generic';
|
||||||
|
import { GenericVersioningApi } from '../generic';
|
||||||
|
import type { VersioningApi } from '../types';
|
||||||
|
|
||||||
|
export const id = 'devbox';
|
||||||
|
export const displayName = 'devbox';
|
||||||
|
export const urls = [];
|
||||||
|
export const supportsRanges = false;
|
||||||
|
|
||||||
|
const validPattern = regEx(/^((\d|[1-9]\d*)(\.(\d|[1-9]\d*)){0,2})$/);
|
||||||
|
const versionPattern = regEx(/^((\d|[1-9]\d*)(\.(\d|[1-9]\d*)){2})$/);
|
||||||
|
|
||||||
|
class DevboxVersioningApi extends GenericVersioningApi {
|
||||||
|
protected _parse(version: string): GenericVersion | null {
|
||||||
|
const matches = validPattern.exec(version);
|
||||||
|
if (!matches) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
const release = matches[0].split('.').map(Number);
|
||||||
|
return { release };
|
||||||
|
}
|
||||||
|
|
||||||
|
override isValid(version: string): boolean {
|
||||||
|
if (version === 'latest') {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return this._parse(version) !== null;
|
||||||
|
}
|
||||||
|
|
||||||
|
override isVersion(version: string): boolean {
|
||||||
|
if (version === 'latest') {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
const matches = versionPattern.exec(version);
|
||||||
|
return !!matches;
|
||||||
|
}
|
||||||
|
|
||||||
|
override matches(version: string, range: string): boolean {
|
||||||
|
return this.isVersion(version) && this.equals(version, range);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override _compare(version: string, other: string): number {
|
||||||
|
const parsed1 = this._parse(version);
|
||||||
|
const parsed2 = this._parse(other);
|
||||||
|
|
||||||
|
// Treat "latest" as * and always return equal
|
||||||
|
if (other === 'latest' && parsed1) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// If either version is invalid, return unequal
|
||||||
|
if (!(parsed1 && parsed2)) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
// support variable length compare
|
||||||
|
const length = Math.max(parsed1.release.length, parsed2.release.length);
|
||||||
|
for (let i = 0; i < length; i += 1) {
|
||||||
|
// 2.1 and 2.1.0 are equivalent
|
||||||
|
const part1 = parsed1.release[i];
|
||||||
|
const part2 = parsed2.release[i];
|
||||||
|
// if part1 or part2 is undefined, we should treat them as equal
|
||||||
|
// e.g. 1.0.0 === 1.0
|
||||||
|
if (part1 !== undefined && part2 !== undefined && part1 !== part2) {
|
||||||
|
return part1 - part2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const api: VersioningApi = new DevboxVersioningApi();
|
||||||
|
|
||||||
|
export default api;
|
2
lib/modules/versioning/devbox/readme.md
Normal file
2
lib/modules/versioning/devbox/readme.md
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
Devbox's Nixhub uses fairly strict versioning, characters such as ~, ^ and >= are not allowed.
|
||||||
|
The semver values must not include "\*" or "x". "1.2.3" "1.2" and "1" are the only valid formats.
|
|
@ -142,7 +142,7 @@ export async function getConfig(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
config.hostRules ||= [];
|
config.hostRules ??= [];
|
||||||
|
|
||||||
options.forEach((option) => {
|
options.forEach((option) => {
|
||||||
if (option.env !== false) {
|
if (option.env !== false) {
|
||||||
|
|
|
@ -113,9 +113,9 @@ export async function detectVulnerabilityAlerts(
|
||||||
alert.security_vulnerability.first_patched_version.identifier;
|
alert.security_vulnerability.first_patched_version.identifier;
|
||||||
const advisory = alert.security_advisory;
|
const advisory = alert.security_advisory;
|
||||||
|
|
||||||
combinedAlerts[fileName] ||= {};
|
combinedAlerts[fileName] ??= {};
|
||||||
combinedAlerts[fileName][datasource] ||= {};
|
combinedAlerts[fileName][datasource] ??= {};
|
||||||
combinedAlerts[fileName][datasource][depName] ||= {
|
combinedAlerts[fileName][datasource][depName] ??= {
|
||||||
advisories: [],
|
advisories: [],
|
||||||
};
|
};
|
||||||
const alertDetails = combinedAlerts[fileName][datasource][depName];
|
const alertDetails = combinedAlerts[fileName][datasource][depName];
|
||||||
|
|
|
@ -160,7 +160,7 @@ function handleOnboardingManualRebase(onboardingPr: Pr): void {
|
||||||
|
|
||||||
function invalidateExtractCache(baseBranch: string): void {
|
function invalidateExtractCache(baseBranch: string): void {
|
||||||
const cache = getCache();
|
const cache = getCache();
|
||||||
cache.scan ||= {};
|
cache.scan ??= {};
|
||||||
|
|
||||||
if (cache.scan?.[baseBranch]) {
|
if (cache.scan?.[baseBranch]) {
|
||||||
delete cache.scan[baseBranch];
|
delete cache.scan[baseBranch];
|
||||||
|
|
|
@ -136,7 +136,7 @@ export async function extract(
|
||||||
const baseBranchSha = await scm.getBranchCommit(baseBranch!);
|
const baseBranchSha = await scm.getBranchCommit(baseBranch!);
|
||||||
let packageFiles: Record<string, PackageFile[]>;
|
let packageFiles: Record<string, PackageFile[]>;
|
||||||
const cache = getCache();
|
const cache = getCache();
|
||||||
cache.scan ||= {};
|
cache.scan ??= {};
|
||||||
const cachedExtract = cache.scan[baseBranch!];
|
const cachedExtract = cache.scan[baseBranch!];
|
||||||
const configHash = fingerprint(generateFingerprintConfig(config));
|
const configHash = fingerprint(generateFingerprintConfig(config));
|
||||||
// istanbul ignore if
|
// istanbul ignore if
|
||||||
|
|
28
package.json
28
package.json
|
@ -152,14 +152,14 @@
|
||||||
"@breejs/later": "4.2.0",
|
"@breejs/later": "4.2.0",
|
||||||
"@cdktf/hcl2json": "0.20.10",
|
"@cdktf/hcl2json": "0.20.10",
|
||||||
"@opentelemetry/api": "1.9.0",
|
"@opentelemetry/api": "1.9.0",
|
||||||
"@opentelemetry/context-async-hooks": "1.28.0",
|
"@opentelemetry/context-async-hooks": "1.29.0",
|
||||||
"@opentelemetry/exporter-trace-otlp-http": "0.55.0",
|
"@opentelemetry/exporter-trace-otlp-http": "0.56.0",
|
||||||
"@opentelemetry/instrumentation": "0.55.0",
|
"@opentelemetry/instrumentation": "0.56.0",
|
||||||
"@opentelemetry/instrumentation-bunyan": "0.44.0",
|
"@opentelemetry/instrumentation-bunyan": "0.44.0",
|
||||||
"@opentelemetry/instrumentation-http": "0.55.0",
|
"@opentelemetry/instrumentation-http": "0.56.0",
|
||||||
"@opentelemetry/resources": "1.28.0",
|
"@opentelemetry/resources": "1.29.0",
|
||||||
"@opentelemetry/sdk-trace-base": "1.28.0",
|
"@opentelemetry/sdk-trace-base": "1.29.0",
|
||||||
"@opentelemetry/sdk-trace-node": "1.28.0",
|
"@opentelemetry/sdk-trace-node": "1.29.0",
|
||||||
"@opentelemetry/semantic-conventions": "1.28.0",
|
"@opentelemetry/semantic-conventions": "1.28.0",
|
||||||
"@qnighy/marshal": "0.1.3",
|
"@qnighy/marshal": "0.1.3",
|
||||||
"@renovatebot/detect-tools": "1.1.0",
|
"@renovatebot/detect-tools": "1.1.0",
|
||||||
|
@ -311,20 +311,20 @@
|
||||||
"@types/url-join": "4.0.3",
|
"@types/url-join": "4.0.3",
|
||||||
"@types/validate-npm-package-name": "4.0.2",
|
"@types/validate-npm-package-name": "4.0.2",
|
||||||
"@types/xmldoc": "1.1.9",
|
"@types/xmldoc": "1.1.9",
|
||||||
"@typescript-eslint/eslint-plugin": "8.11.0",
|
"@typescript-eslint/eslint-plugin": "8.18.0",
|
||||||
"@typescript-eslint/parser": "8.11.0",
|
"@typescript-eslint/parser": "8.18.0",
|
||||||
"aws-sdk-client-mock": "4.1.0",
|
"aws-sdk-client-mock": "4.1.0",
|
||||||
"callsite": "1.0.0",
|
"callsite": "1.0.0",
|
||||||
"common-tags": "1.8.2",
|
"common-tags": "1.8.2",
|
||||||
"conventional-changelog-conventionalcommits": "8.0.0",
|
"conventional-changelog-conventionalcommits": "8.0.0",
|
||||||
"emojibase-data": "16.0.2",
|
"emojibase-data": "16.0.2",
|
||||||
"eslint": "8.57.1",
|
"eslint": "8.57.1",
|
||||||
"eslint-formatter-gha": "1.5.1",
|
"eslint-formatter-gha": "1.5.2",
|
||||||
"eslint-import-resolver-typescript": "3.6.3",
|
"eslint-import-resolver-typescript": "3.7.0",
|
||||||
"eslint-plugin-import": "2.31.0",
|
"eslint-plugin-import": "2.31.0",
|
||||||
"eslint-plugin-jest": "28.8.3",
|
"eslint-plugin-jest": "28.9.0",
|
||||||
"eslint-plugin-jest-formatting": "3.1.0",
|
"eslint-plugin-jest-formatting": "3.1.0",
|
||||||
"eslint-plugin-promise": "7.1.0",
|
"eslint-plugin-promise": "7.2.1",
|
||||||
"eslint-plugin-typescript-enum": "2.1.0",
|
"eslint-plugin-typescript-enum": "2.1.0",
|
||||||
"expect": "29.7.0",
|
"expect": "29.7.0",
|
||||||
"expect-more-jest": "5.5.0",
|
"expect-more-jest": "5.5.0",
|
||||||
|
@ -347,7 +347,7 @@
|
||||||
"tmp-promise": "3.0.3",
|
"tmp-promise": "3.0.3",
|
||||||
"ts-jest": "29.2.5",
|
"ts-jest": "29.2.5",
|
||||||
"ts-node": "10.9.2",
|
"ts-node": "10.9.2",
|
||||||
"type-fest": "4.30.0",
|
"type-fest": "4.30.1",
|
||||||
"typescript": "5.7.2",
|
"typescript": "5.7.2",
|
||||||
"unified": "9.2.2"
|
"unified": "9.2.2"
|
||||||
},
|
},
|
||||||
|
|
425
pnpm-lock.yaml
425
pnpm-lock.yaml
|
@ -39,29 +39,29 @@ importers:
|
||||||
specifier: 1.9.0
|
specifier: 1.9.0
|
||||||
version: 1.9.0
|
version: 1.9.0
|
||||||
'@opentelemetry/context-async-hooks':
|
'@opentelemetry/context-async-hooks':
|
||||||
specifier: 1.28.0
|
specifier: 1.29.0
|
||||||
version: 1.28.0(@opentelemetry/api@1.9.0)
|
version: 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/exporter-trace-otlp-http':
|
'@opentelemetry/exporter-trace-otlp-http':
|
||||||
specifier: 0.55.0
|
specifier: 0.56.0
|
||||||
version: 0.55.0(@opentelemetry/api@1.9.0)
|
version: 0.56.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/instrumentation':
|
'@opentelemetry/instrumentation':
|
||||||
specifier: 0.55.0
|
specifier: 0.56.0
|
||||||
version: 0.55.0(@opentelemetry/api@1.9.0)
|
version: 0.56.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/instrumentation-bunyan':
|
'@opentelemetry/instrumentation-bunyan':
|
||||||
specifier: 0.44.0
|
specifier: 0.44.0
|
||||||
version: 0.44.0(@opentelemetry/api@1.9.0)
|
version: 0.44.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/instrumentation-http':
|
'@opentelemetry/instrumentation-http':
|
||||||
specifier: 0.55.0
|
specifier: 0.56.0
|
||||||
version: 0.55.0(@opentelemetry/api@1.9.0)
|
version: 0.56.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/resources':
|
'@opentelemetry/resources':
|
||||||
specifier: 1.28.0
|
specifier: 1.29.0
|
||||||
version: 1.28.0(@opentelemetry/api@1.9.0)
|
version: 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/sdk-trace-base':
|
'@opentelemetry/sdk-trace-base':
|
||||||
specifier: 1.28.0
|
specifier: 1.29.0
|
||||||
version: 1.28.0(@opentelemetry/api@1.9.0)
|
version: 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/sdk-trace-node':
|
'@opentelemetry/sdk-trace-node':
|
||||||
specifier: 1.28.0
|
specifier: 1.29.0
|
||||||
version: 1.28.0(@opentelemetry/api@1.9.0)
|
version: 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/semantic-conventions':
|
'@opentelemetry/semantic-conventions':
|
||||||
specifier: 1.28.0
|
specifier: 1.28.0
|
||||||
version: 1.28.0
|
version: 1.28.0
|
||||||
|
@ -506,11 +506,11 @@ importers:
|
||||||
specifier: 1.1.9
|
specifier: 1.1.9
|
||||||
version: 1.1.9
|
version: 1.1.9
|
||||||
'@typescript-eslint/eslint-plugin':
|
'@typescript-eslint/eslint-plugin':
|
||||||
specifier: 8.11.0
|
specifier: 8.18.0
|
||||||
version: 8.11.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2)
|
version: 8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2)
|
||||||
'@typescript-eslint/parser':
|
'@typescript-eslint/parser':
|
||||||
specifier: 8.11.0
|
specifier: 8.18.0
|
||||||
version: 8.11.0(eslint@8.57.1)(typescript@5.7.2)
|
version: 8.18.0(eslint@8.57.1)(typescript@5.7.2)
|
||||||
aws-sdk-client-mock:
|
aws-sdk-client-mock:
|
||||||
specifier: 4.1.0
|
specifier: 4.1.0
|
||||||
version: 4.1.0
|
version: 4.1.0
|
||||||
|
@ -530,23 +530,23 @@ importers:
|
||||||
specifier: 8.57.1
|
specifier: 8.57.1
|
||||||
version: 8.57.1
|
version: 8.57.1
|
||||||
eslint-formatter-gha:
|
eslint-formatter-gha:
|
||||||
specifier: 1.5.1
|
specifier: 1.5.2
|
||||||
version: 1.5.1
|
version: 1.5.2
|
||||||
eslint-import-resolver-typescript:
|
eslint-import-resolver-typescript:
|
||||||
specifier: 3.6.3
|
specifier: 3.7.0
|
||||||
version: 3.6.3(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint-plugin-import@2.31.0)(eslint@8.57.1)
|
version: 3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.1)
|
||||||
eslint-plugin-import:
|
eslint-plugin-import:
|
||||||
specifier: 2.31.0
|
specifier: 2.31.0
|
||||||
version: 2.31.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
|
version: 2.31.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.1)
|
||||||
eslint-plugin-jest:
|
eslint-plugin-jest:
|
||||||
specifier: 28.8.3
|
specifier: 28.9.0
|
||||||
version: 28.8.3(@typescript-eslint/eslint-plugin@8.11.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(jest@29.7.0(@types/node@20.17.10)(ts-node@10.9.2(@swc/core@1.10.1)(@types/node@20.17.10)(typescript@5.7.2)))(typescript@5.7.2)
|
version: 28.9.0(@typescript-eslint/eslint-plugin@8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(jest@29.7.0(@types/node@20.17.10)(ts-node@10.9.2(@swc/core@1.10.1)(@types/node@20.17.10)(typescript@5.7.2)))(typescript@5.7.2)
|
||||||
eslint-plugin-jest-formatting:
|
eslint-plugin-jest-formatting:
|
||||||
specifier: 3.1.0
|
specifier: 3.1.0
|
||||||
version: 3.1.0(eslint@8.57.1)
|
version: 3.1.0(eslint@8.57.1)
|
||||||
eslint-plugin-promise:
|
eslint-plugin-promise:
|
||||||
specifier: 7.1.0
|
specifier: 7.2.1
|
||||||
version: 7.1.0(eslint@8.57.1)
|
version: 7.2.1(eslint@8.57.1)
|
||||||
eslint-plugin-typescript-enum:
|
eslint-plugin-typescript-enum:
|
||||||
specifier: 2.1.0
|
specifier: 2.1.0
|
||||||
version: 2.1.0(eslint@8.57.1)(typescript@5.7.2)
|
version: 2.1.0(eslint@8.57.1)(typescript@5.7.2)
|
||||||
|
@ -614,8 +614,8 @@ importers:
|
||||||
specifier: 10.9.2
|
specifier: 10.9.2
|
||||||
version: 10.9.2(@swc/core@1.10.1)(@types/node@20.17.10)(typescript@5.7.2)
|
version: 10.9.2(@swc/core@1.10.1)(@types/node@20.17.10)(typescript@5.7.2)
|
||||||
type-fest:
|
type-fest:
|
||||||
specifier: 4.30.0
|
specifier: 4.30.1
|
||||||
version: 4.30.0
|
version: 4.30.1
|
||||||
typescript:
|
typescript:
|
||||||
specifier: 5.7.2
|
specifier: 5.7.2
|
||||||
version: 5.7.2
|
version: 5.7.2
|
||||||
|
@ -1325,10 +1325,6 @@ packages:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@opentelemetry/api-logs@0.55.0':
|
|
||||||
resolution: {integrity: sha512-3cpa+qI45VHYcA5c0bHM6VHo9gicv3p5mlLHNG3rLyjQU8b7e0st1rWtrUn3JbZ3DwwCfhKop4eQ9UuYlC6Pkg==}
|
|
||||||
engines: {node: '>=14'}
|
|
||||||
|
|
||||||
'@opentelemetry/api-logs@0.56.0':
|
'@opentelemetry/api-logs@0.56.0':
|
||||||
resolution: {integrity: sha512-Wr39+94UNNG3Ei9nv3pHd4AJ63gq5nSemMRpCd8fPwDL9rN3vK26lzxfH27mw16XzOSO+TpyQwBAMaLxaPWG0g==}
|
resolution: {integrity: sha512-Wr39+94UNNG3Ei9nv3pHd4AJ63gq5nSemMRpCd8fPwDL9rN3vK26lzxfH27mw16XzOSO+TpyQwBAMaLxaPWG0g==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
|
@ -1337,20 +1333,20 @@ packages:
|
||||||
resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==}
|
resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==}
|
||||||
engines: {node: '>=8.0.0'}
|
engines: {node: '>=8.0.0'}
|
||||||
|
|
||||||
'@opentelemetry/context-async-hooks@1.28.0':
|
'@opentelemetry/context-async-hooks@1.29.0':
|
||||||
resolution: {integrity: sha512-igcl4Ve+F1N2063PJUkesk/GkYyuGIWinYkSyAFTnIj3gzrOgvOA4k747XNdL47HRRL1w/qh7UW8NDuxOLvKFA==}
|
resolution: {integrity: sha512-TKT91jcFXgHyIDF1lgJF3BHGIakn6x0Xp7Tq3zoS3TMPzT9IlP0xEavWP8C1zGjU9UmZP2VR1tJhW9Az1A3w8Q==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
||||||
|
|
||||||
'@opentelemetry/core@1.28.0':
|
'@opentelemetry/core@1.29.0':
|
||||||
resolution: {integrity: sha512-ZLwRMV+fNDpVmF2WYUdBHlq0eOWtEaUJSusrzjGnBt7iSRvfjFE3RXYUZJrqou/wIDWV0DwQ5KIfYe9WXg9Xqw==}
|
resolution: {integrity: sha512-gmT7vAreXl0DTHD2rVZcw3+l2g84+5XiHIqdBUxXbExymPCvSsGOpiwMmn8nkiJur28STV31wnhIDrzWDPzjfA==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
||||||
|
|
||||||
'@opentelemetry/exporter-trace-otlp-http@0.55.0':
|
'@opentelemetry/exporter-trace-otlp-http@0.56.0':
|
||||||
resolution: {integrity: sha512-lMiNic63EVHpW+eChmLD2CieDmwQBFi72+LFbh8+5hY0ShrDGrsGP/zuT5MRh7M/vM/UZYO/2A/FYd7CMQGR7A==}
|
resolution: {integrity: sha512-vqVuJvcwameA0r0cNrRzrZqPLB0otS+95g0XkZdiKOXUo81wYdY6r4kyrwz4nSChqTBEFm0lqi/H2OWGboOa6g==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': ^1.3.0
|
'@opentelemetry/api': ^1.3.0
|
||||||
|
@ -1361,14 +1357,8 @@ packages:
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': ^1.3.0
|
'@opentelemetry/api': ^1.3.0
|
||||||
|
|
||||||
'@opentelemetry/instrumentation-http@0.55.0':
|
'@opentelemetry/instrumentation-http@0.56.0':
|
||||||
resolution: {integrity: sha512-AO27XSjkgNicfy/YBthskFAwx9VfaO7tChrLaTONTfOWv14GlB3Rs2eTYpywZIHWsW2cR5hvVkcDte4GV0stoA==}
|
resolution: {integrity: sha512-/bWHBUAq8VoATnH9iLk5w8CE9+gj+RgYSUphe7hry472n6fYl7+4PvuScoQMdmSUTprKq/gyr2kOWL6zrC7FkQ==}
|
||||||
engines: {node: '>=14'}
|
|
||||||
peerDependencies:
|
|
||||||
'@opentelemetry/api': ^1.3.0
|
|
||||||
|
|
||||||
'@opentelemetry/instrumentation@0.55.0':
|
|
||||||
resolution: {integrity: sha512-YDCMlaQRZkziLL3t6TONRgmmGxDx6MyQDXRD0dknkkgUZtOK5+8MWft1OXzmNu6XfBOdT12MKN5rz+jHUkafKQ==}
|
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': ^1.3.0
|
'@opentelemetry/api': ^1.3.0
|
||||||
|
@ -1379,64 +1369,60 @@ packages:
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': ^1.3.0
|
'@opentelemetry/api': ^1.3.0
|
||||||
|
|
||||||
'@opentelemetry/otlp-exporter-base@0.55.0':
|
'@opentelemetry/otlp-exporter-base@0.56.0':
|
||||||
resolution: {integrity: sha512-iHQI0Zzq3h1T6xUJTVFwmFl5Dt5y1es+fl4kM+k5T/3YvmVyeYkSiF+wHCg6oKrlUAJfk+t55kaAu3sYmt7ZYA==}
|
resolution: {integrity: sha512-eURvv0fcmBE+KE1McUeRo+u0n18ZnUeSc7lDlW/dzlqFYasEbsztTK4v0Qf8C4vEY+aMTjPKUxBG0NX2Te3Pmw==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': ^1.3.0
|
'@opentelemetry/api': ^1.3.0
|
||||||
|
|
||||||
'@opentelemetry/otlp-transformer@0.55.0':
|
'@opentelemetry/otlp-transformer@0.56.0':
|
||||||
resolution: {integrity: sha512-kVqEfxtp6mSN2Dhpy0REo1ghP4PYhC1kMHQJ2qVlO99Pc+aigELjZDfg7/YKmL71gR6wVGIeJfiql/eXL7sQPA==}
|
resolution: {integrity: sha512-kVkH/W2W7EpgWWpyU5VnnjIdSD7Y7FljQYObAQSKdRcejiwMj2glypZtUdfq1LTJcv4ht0jyTrw1D3CCxssNtQ==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': ^1.3.0
|
'@opentelemetry/api': ^1.3.0
|
||||||
|
|
||||||
'@opentelemetry/propagator-b3@1.28.0':
|
'@opentelemetry/propagator-b3@1.29.0':
|
||||||
resolution: {integrity: sha512-Q7HVDIMwhN5RxL4bECMT4BdbyYSAKkC6U/RGn4NpO/cbqP6ZRg+BS7fPo/pGZi2w8AHfpIGQFXQmE8d2PC5xxQ==}
|
resolution: {integrity: sha512-ktsNDlqhu+/IPGEJRMj81upg2JupUp+SwW3n1ZVZTnrDiYUiMUW41vhaziA7Q6UDhbZvZ58skDpQhe2ZgNIPvg==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
||||||
|
|
||||||
'@opentelemetry/propagator-jaeger@1.28.0':
|
'@opentelemetry/propagator-jaeger@1.29.0':
|
||||||
resolution: {integrity: sha512-wKJ94+s8467CnIRgoSRh0yXm/te0QMOwTq9J01PfG/RzYZvlvN8aRisN2oZ9SznB45dDGnMj3BhUlchSA9cEKA==}
|
resolution: {integrity: sha512-EXIEYmFgybnFMijVgqx1mq/diWwSQcd0JWVksytAVQEnAiaDvP45WuncEVQkFIAC0gVxa2+Xr8wL5pF5jCVKbg==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
||||||
|
|
||||||
'@opentelemetry/resources@1.28.0':
|
'@opentelemetry/resources@1.29.0':
|
||||||
resolution: {integrity: sha512-cIyXSVJjGeTICENN40YSvLDAq4Y2502hGK3iN7tfdynQLKWb3XWZQEkPc+eSx47kiy11YeFAlYkEfXwR1w8kfw==}
|
resolution: {integrity: sha512-s7mLXuHZE7RQr1wwweGcaRp3Q4UJJ0wazeGlc/N5/XSe6UyXfsh1UQGMADYeg7YwD+cEdMtU1yJAUXdnFzYzyQ==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
||||||
|
|
||||||
'@opentelemetry/sdk-logs@0.55.0':
|
'@opentelemetry/sdk-logs@0.56.0':
|
||||||
resolution: {integrity: sha512-TSx+Yg/d48uWW6HtjS1AD5x6WPfLhDWLl/WxC7I2fMevaiBuKCuraxTB8MDXieCNnBI24bw9ytyXrDCswFfWgA==}
|
resolution: {integrity: sha512-OS0WPBJF++R/cSl+terUjQH5PebloidB1Jbbecgg2rnCmQbTST9xsRes23bLfDQVRvmegmHqDh884h0aRdJyLw==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': '>=1.4.0 <1.10.0'
|
'@opentelemetry/api': '>=1.4.0 <1.10.0'
|
||||||
|
|
||||||
'@opentelemetry/sdk-metrics@1.28.0':
|
'@opentelemetry/sdk-metrics@1.29.0':
|
||||||
resolution: {integrity: sha512-43tqMK/0BcKTyOvm15/WQ3HLr0Vu/ucAl/D84NO7iSlv6O4eOprxSHa3sUtmYkaZWHqdDJV0AHVz/R6u4JALVQ==}
|
resolution: {integrity: sha512-MkVtuzDjXZaUJSuJlHn6BSXjcQlMvHcsDV7LjY4P6AJeffMa4+kIGDjzsCf6DkAh6Vqlwag5EWEam3KZOX5Drw==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': '>=1.3.0 <1.10.0'
|
'@opentelemetry/api': '>=1.3.0 <1.10.0'
|
||||||
|
|
||||||
'@opentelemetry/sdk-trace-base@1.28.0':
|
'@opentelemetry/sdk-trace-base@1.29.0':
|
||||||
resolution: {integrity: sha512-ceUVWuCpIao7Y5xE02Xs3nQi0tOGmMea17ecBdwtCvdo9ekmO+ijc9RFDgfifMl7XCBf41zne/1POM3LqSTZDA==}
|
resolution: {integrity: sha512-hEOpAYLKXF3wGJpXOtWsxEtqBgde0SCv+w+jvr3/UusR4ll3QrENEGnSl1WDCyRrpqOQ5NCNOvZch9UFVa7MnQ==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
||||||
|
|
||||||
'@opentelemetry/sdk-trace-node@1.28.0':
|
'@opentelemetry/sdk-trace-node@1.29.0':
|
||||||
resolution: {integrity: sha512-N0sYfYXvHpP0FNIyc+UfhLnLSTOuZLytV0qQVrDWIlABeD/DWJIGttS7nYeR14gQLXch0M1DW8zm3VeN6Opwtg==}
|
resolution: {integrity: sha512-ZpGYt+VnMu6O0SRKzhuIivr7qJm3GpWnTCMuJspu4kt3QWIpIenwixo5Vvjuu3R4h2Onl/8dtqAiPIs92xd5ww==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
||||||
|
|
||||||
'@opentelemetry/semantic-conventions@1.27.0':
|
|
||||||
resolution: {integrity: sha512-sAay1RrB+ONOem0OZanAR1ZI/k7yDpnOQSQmTMuGImUQb2y8EbSaCJ94FQluM74xoU03vlb2d2U90hZluL6nQg==}
|
|
||||||
engines: {node: '>=14'}
|
|
||||||
|
|
||||||
'@opentelemetry/semantic-conventions@1.28.0':
|
'@opentelemetry/semantic-conventions@1.28.0':
|
||||||
resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==}
|
resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
|
@ -2201,16 +2187,13 @@ packages:
|
||||||
'@types/yauzl@2.10.3':
|
'@types/yauzl@2.10.3':
|
||||||
resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==}
|
resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==}
|
||||||
|
|
||||||
'@typescript-eslint/eslint-plugin@8.11.0':
|
'@typescript-eslint/eslint-plugin@8.18.0':
|
||||||
resolution: {integrity: sha512-KhGn2LjW1PJT2A/GfDpiyOfS4a8xHQv2myUagTM5+zsormOmBlYsnQ6pobJ8XxJmh6hnHwa2Mbe3fPrDJoDhbA==}
|
resolution: {integrity: sha512-NR2yS7qUqCL7AIxdJUQf2MKKNDVNaig/dEB0GBLU7D+ZdHgK1NoH/3wsgO3OnPVipn51tG3MAwaODEGil70WEw==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
|
'@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
|
||||||
eslint: ^8.57.0 || ^9.0.0
|
eslint: ^8.57.0 || ^9.0.0
|
||||||
typescript: '*'
|
typescript: '>=4.8.4 <5.8.0'
|
||||||
peerDependenciesMeta:
|
|
||||||
typescript:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@typescript-eslint/experimental-utils@5.62.0':
|
'@typescript-eslint/experimental-utils@5.62.0':
|
||||||
resolution: {integrity: sha512-RTXpeB3eMkpoclG3ZHft6vG/Z30azNHuqY6wKPBHlVMZFuEvrtlEDe8gMqDb+SO+9hjC/pLekeSCryf9vMZlCw==}
|
resolution: {integrity: sha512-RTXpeB3eMkpoclG3ZHft6vG/Z30azNHuqY6wKPBHlVMZFuEvrtlEDe8gMqDb+SO+9hjC/pLekeSCryf9vMZlCw==}
|
||||||
|
@ -2218,45 +2201,32 @@ packages:
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||||
|
|
||||||
'@typescript-eslint/parser@8.11.0':
|
'@typescript-eslint/parser@8.18.0':
|
||||||
resolution: {integrity: sha512-lmt73NeHdy1Q/2ul295Qy3uninSqi6wQI18XwSpm8w0ZbQXUpjCAWP1Vlv/obudoBiIjJVjlztjQ+d/Md98Yxg==}
|
resolution: {integrity: sha512-hgUZ3kTEpVzKaK3uNibExUYm6SKKOmTU2BOxBSvOYwtJEPdVQ70kZJpPjstlnhCHcuc2WGfSbpKlb/69ttyN5Q==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^8.57.0 || ^9.0.0
|
eslint: ^8.57.0 || ^9.0.0
|
||||||
typescript: '*'
|
typescript: '>=4.8.4 <5.8.0'
|
||||||
peerDependenciesMeta:
|
|
||||||
typescript:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@typescript-eslint/scope-manager@5.62.0':
|
'@typescript-eslint/scope-manager@5.62.0':
|
||||||
resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==}
|
resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==}
|
||||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||||
|
|
||||||
'@typescript-eslint/scope-manager@8.11.0':
|
|
||||||
resolution: {integrity: sha512-Uholz7tWhXmA4r6epo+vaeV7yjdKy5QFCERMjs1kMVsLRKIrSdM6o21W2He9ftp5PP6aWOVpD5zvrvuHZC0bMQ==}
|
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
|
||||||
|
|
||||||
'@typescript-eslint/scope-manager@8.18.0':
|
'@typescript-eslint/scope-manager@8.18.0':
|
||||||
resolution: {integrity: sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==}
|
resolution: {integrity: sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
|
|
||||||
'@typescript-eslint/type-utils@8.11.0':
|
'@typescript-eslint/type-utils@8.18.0':
|
||||||
resolution: {integrity: sha512-ItiMfJS6pQU0NIKAaybBKkuVzo6IdnAhPFZA/2Mba/uBjuPQPet/8+zh5GtLHwmuFRShZx+8lhIs7/QeDHflOg==}
|
resolution: {integrity: sha512-er224jRepVAVLnMF2Q7MZJCq5CsdH2oqjP4dT7K6ij09Kyd+R21r7UVJrF0buMVdZS5QRhDzpvzAxHxabQadow==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
typescript: '*'
|
eslint: ^8.57.0 || ^9.0.0
|
||||||
peerDependenciesMeta:
|
typescript: '>=4.8.4 <5.8.0'
|
||||||
typescript:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@typescript-eslint/types@5.62.0':
|
'@typescript-eslint/types@5.62.0':
|
||||||
resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==}
|
resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==}
|
||||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||||
|
|
||||||
'@typescript-eslint/types@8.11.0':
|
|
||||||
resolution: {integrity: sha512-tn6sNMHf6EBAYMvmPUaKaVeYvhUsrE6x+bXQTxjQRp360h1giATU0WvgeEys1spbvb5R+VpNOZ+XJmjD8wOUHw==}
|
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
|
||||||
|
|
||||||
'@typescript-eslint/types@8.18.0':
|
'@typescript-eslint/types@8.18.0':
|
||||||
resolution: {integrity: sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==}
|
resolution: {integrity: sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
|
@ -2270,15 +2240,6 @@ packages:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@typescript-eslint/typescript-estree@8.11.0':
|
|
||||||
resolution: {integrity: sha512-yHC3s1z1RCHoCz5t06gf7jH24rr3vns08XXhfEqzYpd6Hll3z/3g23JRi0jM8A47UFKNc3u/y5KIMx8Ynbjohg==}
|
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
|
||||||
peerDependencies:
|
|
||||||
typescript: '*'
|
|
||||||
peerDependenciesMeta:
|
|
||||||
typescript:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@typescript-eslint/typescript-estree@8.18.0':
|
'@typescript-eslint/typescript-estree@8.18.0':
|
||||||
resolution: {integrity: sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==}
|
resolution: {integrity: sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
|
@ -2291,12 +2252,6 @@ packages:
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||||
|
|
||||||
'@typescript-eslint/utils@8.11.0':
|
|
||||||
resolution: {integrity: sha512-CYiX6WZcbXNJV7UNB4PLDIBtSdRmRI/nb0FMyqHPTQD1rMjA0foPLaPUV39C/MxkTd/QKSeX+Gb34PPsDVC35g==}
|
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
|
||||||
peerDependencies:
|
|
||||||
eslint: ^8.57.0 || ^9.0.0
|
|
||||||
|
|
||||||
'@typescript-eslint/utils@8.18.0':
|
'@typescript-eslint/utils@8.18.0':
|
||||||
resolution: {integrity: sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==}
|
resolution: {integrity: sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
|
@ -2308,10 +2263,6 @@ packages:
|
||||||
resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==}
|
resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==}
|
||||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||||
|
|
||||||
'@typescript-eslint/visitor-keys@8.11.0':
|
|
||||||
resolution: {integrity: sha512-EaewX6lxSjRJnc+99+dqzTeoDZUfyrA52d2/HRrkI830kgovWsmIiTfmr0NZorzqic7ga+1bS60lRBUgR3n/Bw==}
|
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
|
||||||
|
|
||||||
'@typescript-eslint/visitor-keys@8.18.0':
|
'@typescript-eslint/visitor-keys@8.18.0':
|
||||||
resolution: {integrity: sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==}
|
resolution: {integrity: sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
|
@ -3187,8 +3138,8 @@ packages:
|
||||||
resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
|
resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
|
|
||||||
eslint-formatter-gha@1.5.1:
|
eslint-formatter-gha@1.5.2:
|
||||||
resolution: {integrity: sha512-OSMS0XdM2Z5DhTMfRJx/1NiOH+zMYvrq6VXoARgR7mikwkQ5lG8uKBE2GIbM6sxcX13gI4M8x0vyhLNp3RIG7A==}
|
resolution: {integrity: sha512-1TY8AYbrIP9DCcbydYW467nTP67eW79bT+oVKdUehO3WPMP8pn2oOZVkDc8yDcWf35+t2Li1elY5Dh6jTjJ3/Q==}
|
||||||
|
|
||||||
eslint-formatter-json@8.40.0:
|
eslint-formatter-json@8.40.0:
|
||||||
resolution: {integrity: sha512-0bXo4At1EoEU23gFfN7wcDeqRXDHLJnvDOuQKD3Q6FkBlk7L2oVNPYg/sciIWdYrUnCBcKuMit3IWXkdSfzChg==}
|
resolution: {integrity: sha512-0bXo4At1EoEU23gFfN7wcDeqRXDHLJnvDOuQKD3Q6FkBlk7L2oVNPYg/sciIWdYrUnCBcKuMit3IWXkdSfzChg==}
|
||||||
|
@ -3201,8 +3152,8 @@ packages:
|
||||||
eslint-import-resolver-node@0.3.9:
|
eslint-import-resolver-node@0.3.9:
|
||||||
resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
|
resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
|
||||||
|
|
||||||
eslint-import-resolver-typescript@3.6.3:
|
eslint-import-resolver-typescript@3.7.0:
|
||||||
resolution: {integrity: sha512-ud9aw4szY9cCT1EWWdGv1L1XR6hh2PaRWif0j2QjQ0pgTY/69iw+W0Z4qZv5wHahOl8isEr+k/JnyAqNQkLkIA==}
|
resolution: {integrity: sha512-Vrwyi8HHxY97K5ebydMtffsWAn1SCR9eol49eCd5fJS4O1WV7PaAjbcjmbfJJSMz/t4Mal212Uz/fQZrOB8mow==}
|
||||||
engines: {node: ^14.18.0 || >=16.0.0}
|
engines: {node: ^14.18.0 || >=16.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: '*'
|
eslint: '*'
|
||||||
|
@ -3251,8 +3202,8 @@ packages:
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: '>=0.8.0'
|
eslint: '>=0.8.0'
|
||||||
|
|
||||||
eslint-plugin-jest@28.8.3:
|
eslint-plugin-jest@28.9.0:
|
||||||
resolution: {integrity: sha512-HIQ3t9hASLKm2IhIOqnu+ifw7uLZkIlR7RYNv7fMcEi/p0CIiJmfriStQS2LDkgtY4nyLbIZAD+JL347Yc2ETQ==}
|
resolution: {integrity: sha512-rLu1s1Wf96TgUUxSw6loVIkNtUjq1Re7A9QdCCHSohnvXEBAjuL420h0T/fMmkQlNsQP2GhQzEUpYHPfxBkvYQ==}
|
||||||
engines: {node: ^16.10.0 || ^18.12.0 || >=20.0.0}
|
engines: {node: ^16.10.0 || ^18.12.0 || >=20.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@typescript-eslint/eslint-plugin': ^6.0.0 || ^7.0.0 || ^8.0.0
|
'@typescript-eslint/eslint-plugin': ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||||
|
@ -3264,8 +3215,8 @@ packages:
|
||||||
jest:
|
jest:
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
eslint-plugin-promise@7.1.0:
|
eslint-plugin-promise@7.2.1:
|
||||||
resolution: {integrity: sha512-8trNmPxdAy3W620WKDpaS65NlM5yAumod6XeC4LOb+jxlkG4IVcp68c6dXY2ev+uT4U1PtG57YDV6EGAXN0GbQ==}
|
resolution: {integrity: sha512-SWKjd+EuvWkYaS+uN2csvj0KoP43YTu7+phKQ5v+xw6+A0gutVX2yqCeCkC3uLCJFiPfR2dD8Es5L7yUsmvEaA==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
|
eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
|
||||||
|
@ -5649,6 +5600,9 @@ packages:
|
||||||
resolution: {integrity: sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==}
|
resolution: {integrity: sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==}
|
||||||
engines: {node: ^18.17.0 || >=20.5.0}
|
engines: {node: ^18.17.0 || >=20.5.0}
|
||||||
|
|
||||||
|
stable-hash@0.0.4:
|
||||||
|
resolution: {integrity: sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==}
|
||||||
|
|
||||||
stack-utils@2.0.6:
|
stack-utils@2.0.6:
|
||||||
resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==}
|
resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
|
@ -5991,8 +5945,8 @@ packages:
|
||||||
resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
|
resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
|
||||||
engines: {node: '>=12.20'}
|
engines: {node: '>=12.20'}
|
||||||
|
|
||||||
type-fest@4.30.0:
|
type-fest@4.30.1:
|
||||||
resolution: {integrity: sha512-G6zXWS1dLj6eagy6sVhOMQiLtJdxQBHIA9Z6HFUNLOlr6MFOgzV8wvmidtPONfPtEUv0uZsy77XJNzTAfwPDaA==}
|
resolution: {integrity: sha512-ojFL7eDMX2NF0xMbDwPZJ8sb7ckqtlAi1GsmgsFXvErT9kFTk1r0DuQKvrCh73M6D4nngeHJmvogF9OluXs7Hw==}
|
||||||
engines: {node: '>=16'}
|
engines: {node: '>=16'}
|
||||||
|
|
||||||
typed-array-buffer@1.0.2:
|
typed-array-buffer@1.0.2:
|
||||||
|
@ -7771,33 +7725,29 @@ snapshots:
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
typescript: 5.7.2
|
typescript: 5.7.2
|
||||||
|
|
||||||
'@opentelemetry/api-logs@0.55.0':
|
|
||||||
dependencies:
|
|
||||||
'@opentelemetry/api': 1.9.0
|
|
||||||
|
|
||||||
'@opentelemetry/api-logs@0.56.0':
|
'@opentelemetry/api-logs@0.56.0':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
|
|
||||||
'@opentelemetry/api@1.9.0': {}
|
'@opentelemetry/api@1.9.0': {}
|
||||||
|
|
||||||
'@opentelemetry/context-async-hooks@1.28.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/context-async-hooks@1.29.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
|
|
||||||
'@opentelemetry/core@1.28.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/core@1.29.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/semantic-conventions': 1.27.0
|
'@opentelemetry/semantic-conventions': 1.28.0
|
||||||
|
|
||||||
'@opentelemetry/exporter-trace-otlp-http@0.55.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/exporter-trace-otlp-http@0.56.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/otlp-exporter-base': 0.55.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/otlp-exporter-base': 0.56.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/otlp-transformer': 0.55.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/sdk-trace-base': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
|
|
||||||
'@opentelemetry/instrumentation-bunyan@0.44.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/instrumentation-bunyan@0.44.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -7808,29 +7758,17 @@ snapshots:
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@opentelemetry/instrumentation-http@0.55.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/instrumentation-http@0.56.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/instrumentation': 0.55.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/semantic-conventions': 1.27.0
|
'@opentelemetry/semantic-conventions': 1.28.0
|
||||||
forwarded-parse: 2.1.2
|
forwarded-parse: 2.1.2
|
||||||
semver: 7.6.3
|
semver: 7.6.3
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@opentelemetry/instrumentation@0.55.0(@opentelemetry/api@1.9.0)':
|
|
||||||
dependencies:
|
|
||||||
'@opentelemetry/api': 1.9.0
|
|
||||||
'@opentelemetry/api-logs': 0.55.0
|
|
||||||
'@types/shimmer': 1.2.0
|
|
||||||
import-in-the-middle: 1.11.3
|
|
||||||
require-in-the-middle: 7.4.0
|
|
||||||
semver: 7.6.3
|
|
||||||
shimmer: 1.2.1
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- supports-color
|
|
||||||
|
|
||||||
'@opentelemetry/instrumentation@0.56.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/instrumentation@0.56.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
|
@ -7843,71 +7781,69 @@ snapshots:
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@opentelemetry/otlp-exporter-base@0.55.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/otlp-exporter-base@0.56.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/otlp-transformer': 0.55.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0)
|
||||||
|
|
||||||
'@opentelemetry/otlp-transformer@0.55.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/otlp-transformer@0.56.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/api-logs': 0.55.0
|
'@opentelemetry/api-logs': 0.56.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/sdk-logs': 0.55.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/sdk-logs': 0.56.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/sdk-metrics': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/sdk-metrics': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/sdk-trace-base': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
protobufjs: 7.4.0
|
protobufjs: 7.4.0
|
||||||
|
|
||||||
'@opentelemetry/propagator-b3@1.28.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/propagator-b3@1.29.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
|
|
||||||
'@opentelemetry/propagator-jaeger@1.28.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/propagator-jaeger@1.29.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
|
|
||||||
'@opentelemetry/resources@1.28.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/resources@1.29.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/semantic-conventions': 1.27.0
|
'@opentelemetry/semantic-conventions': 1.28.0
|
||||||
|
|
||||||
'@opentelemetry/sdk-logs@0.55.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/sdk-logs@0.56.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/api-logs': 0.55.0
|
'@opentelemetry/api-logs': 0.56.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
|
|
||||||
'@opentelemetry/sdk-metrics@1.28.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/sdk-metrics@1.29.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
|
|
||||||
'@opentelemetry/sdk-trace-base@1.28.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/sdk-trace-base@1.29.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/semantic-conventions': 1.27.0
|
'@opentelemetry/semantic-conventions': 1.28.0
|
||||||
|
|
||||||
'@opentelemetry/sdk-trace-node@1.28.0(@opentelemetry/api@1.9.0)':
|
'@opentelemetry/sdk-trace-node@1.29.0(@opentelemetry/api@1.9.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@opentelemetry/api': 1.9.0
|
'@opentelemetry/api': 1.9.0
|
||||||
'@opentelemetry/context-async-hooks': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/context-async-hooks': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/propagator-b3': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/propagator-b3': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/propagator-jaeger': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/propagator-jaeger': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
'@opentelemetry/sdk-trace-base': 1.28.0(@opentelemetry/api@1.9.0)
|
'@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0)
|
||||||
semver: 7.6.3
|
semver: 7.6.3
|
||||||
|
|
||||||
'@opentelemetry/semantic-conventions@1.27.0': {}
|
|
||||||
|
|
||||||
'@opentelemetry/semantic-conventions@1.28.0': {}
|
'@opentelemetry/semantic-conventions@1.28.0': {}
|
||||||
|
|
||||||
'@pkgjs/parseargs@0.11.0':
|
'@pkgjs/parseargs@0.11.0':
|
||||||
|
@ -8838,20 +8774,19 @@ snapshots:
|
||||||
'@types/node': 20.17.10
|
'@types/node': 20.17.10
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@typescript-eslint/eslint-plugin@8.11.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2)':
|
'@typescript-eslint/eslint-plugin@8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@eslint-community/regexpp': 4.12.1
|
'@eslint-community/regexpp': 4.12.1
|
||||||
'@typescript-eslint/parser': 8.11.0(eslint@8.57.1)(typescript@5.7.2)
|
'@typescript-eslint/parser': 8.18.0(eslint@8.57.1)(typescript@5.7.2)
|
||||||
'@typescript-eslint/scope-manager': 8.11.0
|
'@typescript-eslint/scope-manager': 8.18.0
|
||||||
'@typescript-eslint/type-utils': 8.11.0(eslint@8.57.1)(typescript@5.7.2)
|
'@typescript-eslint/type-utils': 8.18.0(eslint@8.57.1)(typescript@5.7.2)
|
||||||
'@typescript-eslint/utils': 8.11.0(eslint@8.57.1)(typescript@5.7.2)
|
'@typescript-eslint/utils': 8.18.0(eslint@8.57.1)(typescript@5.7.2)
|
||||||
'@typescript-eslint/visitor-keys': 8.11.0
|
'@typescript-eslint/visitor-keys': 8.18.0
|
||||||
eslint: 8.57.1
|
eslint: 8.57.1
|
||||||
graphemer: 1.4.0
|
graphemer: 1.4.0
|
||||||
ignore: 5.3.2
|
ignore: 5.3.2
|
||||||
natural-compare: 1.4.0
|
natural-compare: 1.4.0
|
||||||
ts-api-utils: 1.4.3(typescript@5.7.2)
|
ts-api-utils: 1.4.3(typescript@5.7.2)
|
||||||
optionalDependencies:
|
|
||||||
typescript: 5.7.2
|
typescript: 5.7.2
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -8864,15 +8799,14 @@ snapshots:
|
||||||
- supports-color
|
- supports-color
|
||||||
- typescript
|
- typescript
|
||||||
|
|
||||||
'@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2)':
|
'@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/scope-manager': 8.11.0
|
'@typescript-eslint/scope-manager': 8.18.0
|
||||||
'@typescript-eslint/types': 8.11.0
|
'@typescript-eslint/types': 8.18.0
|
||||||
'@typescript-eslint/typescript-estree': 8.11.0(typescript@5.7.2)
|
'@typescript-eslint/typescript-estree': 8.18.0(typescript@5.7.2)
|
||||||
'@typescript-eslint/visitor-keys': 8.11.0
|
'@typescript-eslint/visitor-keys': 8.18.0
|
||||||
debug: 4.4.0
|
debug: 4.4.0
|
||||||
eslint: 8.57.1
|
eslint: 8.57.1
|
||||||
optionalDependencies:
|
|
||||||
typescript: 5.7.2
|
typescript: 5.7.2
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -8882,32 +8816,24 @@ snapshots:
|
||||||
'@typescript-eslint/types': 5.62.0
|
'@typescript-eslint/types': 5.62.0
|
||||||
'@typescript-eslint/visitor-keys': 5.62.0
|
'@typescript-eslint/visitor-keys': 5.62.0
|
||||||
|
|
||||||
'@typescript-eslint/scope-manager@8.11.0':
|
|
||||||
dependencies:
|
|
||||||
'@typescript-eslint/types': 8.11.0
|
|
||||||
'@typescript-eslint/visitor-keys': 8.11.0
|
|
||||||
|
|
||||||
'@typescript-eslint/scope-manager@8.18.0':
|
'@typescript-eslint/scope-manager@8.18.0':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/types': 8.18.0
|
'@typescript-eslint/types': 8.18.0
|
||||||
'@typescript-eslint/visitor-keys': 8.18.0
|
'@typescript-eslint/visitor-keys': 8.18.0
|
||||||
|
|
||||||
'@typescript-eslint/type-utils@8.11.0(eslint@8.57.1)(typescript@5.7.2)':
|
'@typescript-eslint/type-utils@8.18.0(eslint@8.57.1)(typescript@5.7.2)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/typescript-estree': 8.11.0(typescript@5.7.2)
|
'@typescript-eslint/typescript-estree': 8.18.0(typescript@5.7.2)
|
||||||
'@typescript-eslint/utils': 8.11.0(eslint@8.57.1)(typescript@5.7.2)
|
'@typescript-eslint/utils': 8.18.0(eslint@8.57.1)(typescript@5.7.2)
|
||||||
debug: 4.4.0
|
debug: 4.4.0
|
||||||
|
eslint: 8.57.1
|
||||||
ts-api-utils: 1.4.3(typescript@5.7.2)
|
ts-api-utils: 1.4.3(typescript@5.7.2)
|
||||||
optionalDependencies:
|
|
||||||
typescript: 5.7.2
|
typescript: 5.7.2
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- eslint
|
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@typescript-eslint/types@5.62.0': {}
|
'@typescript-eslint/types@5.62.0': {}
|
||||||
|
|
||||||
'@typescript-eslint/types@8.11.0': {}
|
|
||||||
|
|
||||||
'@typescript-eslint/types@8.18.0': {}
|
'@typescript-eslint/types@8.18.0': {}
|
||||||
|
|
||||||
'@typescript-eslint/typescript-estree@5.62.0(typescript@5.7.2)':
|
'@typescript-eslint/typescript-estree@5.62.0(typescript@5.7.2)':
|
||||||
|
@ -8924,21 +8850,6 @@ snapshots:
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@typescript-eslint/typescript-estree@8.11.0(typescript@5.7.2)':
|
|
||||||
dependencies:
|
|
||||||
'@typescript-eslint/types': 8.11.0
|
|
||||||
'@typescript-eslint/visitor-keys': 8.11.0
|
|
||||||
debug: 4.4.0
|
|
||||||
fast-glob: 3.3.2
|
|
||||||
is-glob: 4.0.3
|
|
||||||
minimatch: 9.0.5
|
|
||||||
semver: 7.6.3
|
|
||||||
ts-api-utils: 1.4.3(typescript@5.7.2)
|
|
||||||
optionalDependencies:
|
|
||||||
typescript: 5.7.2
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- supports-color
|
|
||||||
|
|
||||||
'@typescript-eslint/typescript-estree@8.18.0(typescript@5.7.2)':
|
'@typescript-eslint/typescript-estree@8.18.0(typescript@5.7.2)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/types': 8.18.0
|
'@typescript-eslint/types': 8.18.0
|
||||||
|
@ -8968,17 +8879,6 @@ snapshots:
|
||||||
- supports-color
|
- supports-color
|
||||||
- typescript
|
- typescript
|
||||||
|
|
||||||
'@typescript-eslint/utils@8.11.0(eslint@8.57.1)(typescript@5.7.2)':
|
|
||||||
dependencies:
|
|
||||||
'@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1)
|
|
||||||
'@typescript-eslint/scope-manager': 8.11.0
|
|
||||||
'@typescript-eslint/types': 8.11.0
|
|
||||||
'@typescript-eslint/typescript-estree': 8.11.0(typescript@5.7.2)
|
|
||||||
eslint: 8.57.1
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- supports-color
|
|
||||||
- typescript
|
|
||||||
|
|
||||||
'@typescript-eslint/utils@8.18.0(eslint@8.57.1)(typescript@5.7.2)':
|
'@typescript-eslint/utils@8.18.0(eslint@8.57.1)(typescript@5.7.2)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1)
|
'@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1)
|
||||||
|
@ -8995,11 +8895,6 @@ snapshots:
|
||||||
'@typescript-eslint/types': 5.62.0
|
'@typescript-eslint/types': 5.62.0
|
||||||
eslint-visitor-keys: 3.4.3
|
eslint-visitor-keys: 3.4.3
|
||||||
|
|
||||||
'@typescript-eslint/visitor-keys@8.11.0':
|
|
||||||
dependencies:
|
|
||||||
'@typescript-eslint/types': 8.11.0
|
|
||||||
eslint-visitor-keys: 3.4.3
|
|
||||||
|
|
||||||
'@typescript-eslint/visitor-keys@8.18.0':
|
'@typescript-eslint/visitor-keys@8.18.0':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/types': 8.18.0
|
'@typescript-eslint/types': 8.18.0
|
||||||
|
@ -9967,7 +9862,7 @@ snapshots:
|
||||||
|
|
||||||
escape-string-regexp@5.0.0: {}
|
escape-string-regexp@5.0.0: {}
|
||||||
|
|
||||||
eslint-formatter-gha@1.5.1:
|
eslint-formatter-gha@1.5.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
eslint-formatter-json: 8.40.0
|
eslint-formatter-json: 8.40.0
|
||||||
eslint-formatter-stylish: 8.40.0
|
eslint-formatter-stylish: 8.40.0
|
||||||
|
@ -9988,37 +9883,34 @@ snapshots:
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint-plugin-import@2.31.0)(eslint@8.57.1):
|
eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.1):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@nolyfill/is-core-module': 1.0.39
|
'@nolyfill/is-core-module': 1.0.39
|
||||||
debug: 4.4.0
|
debug: 4.4.0
|
||||||
enhanced-resolve: 5.17.1
|
enhanced-resolve: 5.17.1
|
||||||
eslint: 8.57.1
|
eslint: 8.57.1
|
||||||
eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
|
|
||||||
fast-glob: 3.3.2
|
fast-glob: 3.3.2
|
||||||
get-tsconfig: 4.8.1
|
get-tsconfig: 4.8.1
|
||||||
is-bun-module: 1.3.0
|
is-bun-module: 1.3.0
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
|
stable-hash: 0.0.4
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
|
eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@typescript-eslint/parser'
|
|
||||||
- eslint-import-resolver-node
|
|
||||||
- eslint-import-resolver-webpack
|
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
eslint-module-utils@2.12.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1):
|
eslint-module-utils@2.12.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.1):
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 3.2.7
|
debug: 3.2.7
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@typescript-eslint/parser': 8.11.0(eslint@8.57.1)(typescript@5.7.2)
|
'@typescript-eslint/parser': 8.18.0(eslint@8.57.1)(typescript@5.7.2)
|
||||||
eslint: 8.57.1
|
eslint: 8.57.1
|
||||||
eslint-import-resolver-node: 0.3.9
|
eslint-import-resolver-node: 0.3.9
|
||||||
eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint-plugin-import@2.31.0)(eslint@8.57.1)
|
eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1):
|
eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.1):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@rtsao/scc': 1.1.0
|
'@rtsao/scc': 1.1.0
|
||||||
array-includes: 3.1.8
|
array-includes: 3.1.8
|
||||||
|
@ -10029,7 +9921,7 @@ snapshots:
|
||||||
doctrine: 2.1.0
|
doctrine: 2.1.0
|
||||||
eslint: 8.57.1
|
eslint: 8.57.1
|
||||||
eslint-import-resolver-node: 0.3.9
|
eslint-import-resolver-node: 0.3.9
|
||||||
eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
|
eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.1)
|
||||||
hasown: 2.0.2
|
hasown: 2.0.2
|
||||||
is-core-module: 2.16.0
|
is-core-module: 2.16.0
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
|
@ -10041,7 +9933,7 @@ snapshots:
|
||||||
string.prototype.trimend: 1.0.9
|
string.prototype.trimend: 1.0.9
|
||||||
tsconfig-paths: 3.15.0
|
tsconfig-paths: 3.15.0
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@typescript-eslint/parser': 8.11.0(eslint@8.57.1)(typescript@5.7.2)
|
'@typescript-eslint/parser': 8.18.0(eslint@8.57.1)(typescript@5.7.2)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- eslint-import-resolver-typescript
|
- eslint-import-resolver-typescript
|
||||||
- eslint-import-resolver-webpack
|
- eslint-import-resolver-webpack
|
||||||
|
@ -10051,19 +9943,20 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
eslint: 8.57.1
|
eslint: 8.57.1
|
||||||
|
|
||||||
eslint-plugin-jest@28.8.3(@typescript-eslint/eslint-plugin@8.11.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(jest@29.7.0(@types/node@20.17.10)(ts-node@10.9.2(@swc/core@1.10.1)(@types/node@20.17.10)(typescript@5.7.2)))(typescript@5.7.2):
|
eslint-plugin-jest@28.9.0(@typescript-eslint/eslint-plugin@8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(jest@29.7.0(@types/node@20.17.10)(ts-node@10.9.2(@swc/core@1.10.1)(@types/node@20.17.10)(typescript@5.7.2)))(typescript@5.7.2):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/utils': 8.18.0(eslint@8.57.1)(typescript@5.7.2)
|
'@typescript-eslint/utils': 8.18.0(eslint@8.57.1)(typescript@5.7.2)
|
||||||
eslint: 8.57.1
|
eslint: 8.57.1
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@typescript-eslint/eslint-plugin': 8.11.0(@typescript-eslint/parser@8.11.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2)
|
'@typescript-eslint/eslint-plugin': 8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2)
|
||||||
jest: 29.7.0(@types/node@20.17.10)(ts-node@10.9.2(@swc/core@1.10.1)(@types/node@20.17.10)(typescript@5.7.2))
|
jest: 29.7.0(@types/node@20.17.10)(ts-node@10.9.2(@swc/core@1.10.1)(@types/node@20.17.10)(typescript@5.7.2))
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
- typescript
|
- typescript
|
||||||
|
|
||||||
eslint-plugin-promise@7.1.0(eslint@8.57.1):
|
eslint-plugin-promise@7.2.1(eslint@8.57.1):
|
||||||
dependencies:
|
dependencies:
|
||||||
|
'@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1)
|
||||||
eslint: 8.57.1
|
eslint: 8.57.1
|
||||||
|
|
||||||
eslint-plugin-typescript-enum@2.1.0(eslint@8.57.1)(typescript@5.7.2):
|
eslint-plugin-typescript-enum@2.1.0(eslint@8.57.1)(typescript@5.7.2):
|
||||||
|
@ -12176,7 +12069,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/code-frame': 7.26.2
|
'@babel/code-frame': 7.26.2
|
||||||
index-to-position: 0.1.2
|
index-to-position: 0.1.2
|
||||||
type-fest: 4.30.0
|
type-fest: 4.30.1
|
||||||
|
|
||||||
parse-link-header@2.0.0:
|
parse-link-header@2.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -12380,7 +12273,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
find-up-simple: 1.0.0
|
find-up-simple: 1.0.0
|
||||||
read-pkg: 9.0.1
|
read-pkg: 9.0.1
|
||||||
type-fest: 4.30.0
|
type-fest: 4.30.1
|
||||||
|
|
||||||
read-pkg-up@7.0.1:
|
read-pkg-up@7.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -12400,7 +12293,7 @@ snapshots:
|
||||||
'@types/normalize-package-data': 2.4.4
|
'@types/normalize-package-data': 2.4.4
|
||||||
normalize-package-data: 6.0.2
|
normalize-package-data: 6.0.2
|
||||||
parse-json: 8.1.0
|
parse-json: 8.1.0
|
||||||
type-fest: 4.30.0
|
type-fest: 4.30.1
|
||||||
unicorn-magic: 0.1.0
|
unicorn-magic: 0.1.0
|
||||||
|
|
||||||
read-yaml-file@2.1.0:
|
read-yaml-file@2.1.0:
|
||||||
|
@ -12830,6 +12723,8 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
minipass: 7.1.2
|
minipass: 7.1.2
|
||||||
|
|
||||||
|
stable-hash@0.0.4: {}
|
||||||
|
|
||||||
stack-utils@2.0.6:
|
stack-utils@2.0.6:
|
||||||
dependencies:
|
dependencies:
|
||||||
escape-string-regexp: 2.0.0
|
escape-string-regexp: 2.0.0
|
||||||
|
@ -13165,7 +13060,7 @@ snapshots:
|
||||||
|
|
||||||
type-fest@2.19.0: {}
|
type-fest@2.19.0: {}
|
||||||
|
|
||||||
type-fest@4.30.0: {}
|
type-fest@4.30.1: {}
|
||||||
|
|
||||||
typed-array-buffer@1.0.2:
|
typed-array-buffer@1.0.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|
|
@ -5,19 +5,19 @@ ARG BASE_IMAGE_TYPE=slim
|
||||||
# --------------------------------------
|
# --------------------------------------
|
||||||
# slim image
|
# slim image
|
||||||
# --------------------------------------
|
# --------------------------------------
|
||||||
FROM ghcr.io/renovatebot/base-image:9.23.2@sha256:9d9bd9f3769a4a168ad68dc6fcc664dd370909fc1db4f665a2b9d1fe0ed73828 AS slim-base
|
FROM ghcr.io/renovatebot/base-image:9.26.0@sha256:02405ce6467fac5c5a48ab36e51a582ec72026a86e9641b185032b396388eec3 AS slim-base
|
||||||
|
|
||||||
# --------------------------------------
|
# --------------------------------------
|
||||||
# full image
|
# full image
|
||||||
# --------------------------------------
|
# --------------------------------------
|
||||||
FROM ghcr.io/renovatebot/base-image:9.23.2-full@sha256:85c47daceb3f56ee8934c3772bb78dfd5e798b55eadf6b4a1a35ed226056e961 AS full-base
|
FROM ghcr.io/renovatebot/base-image:9.26.0-full@sha256:6b828c94fe7b4d3f4b2154df888c83926c46715846871d3a1794a66bb86da86a AS full-base
|
||||||
|
|
||||||
ENV RENOVATE_BINARY_SOURCE=global
|
ENV RENOVATE_BINARY_SOURCE=global
|
||||||
|
|
||||||
# --------------------------------------
|
# --------------------------------------
|
||||||
# build image
|
# build image
|
||||||
# --------------------------------------
|
# --------------------------------------
|
||||||
FROM --platform=$BUILDPLATFORM ghcr.io/renovatebot/base-image:9.23.2@sha256:9d9bd9f3769a4a168ad68dc6fcc664dd370909fc1db4f665a2b9d1fe0ed73828 AS build
|
FROM --platform=$BUILDPLATFORM ghcr.io/renovatebot/base-image:9.26.0@sha256:02405ce6467fac5c5a48ab36e51a582ec72026a86e9641b185032b396388eec3 AS build
|
||||||
|
|
||||||
# We want a specific node version here
|
# We want a specific node version here
|
||||||
# renovate: datasource=node-version
|
# renovate: datasource=node-version
|
||||||
|
|
|
@ -27,7 +27,7 @@ for FILTER in "$TYPE_LABELS_FILTER" "$PRIORITY_LABELS_FILTER"; do
|
||||||
HAS_ISSUES_MISSING_LABELS=true
|
HAS_ISSUES_MISSING_LABELS=true
|
||||||
|
|
||||||
# Create a list of issue numbers
|
# Create a list of issue numbers
|
||||||
FORMATTED_OUTPUT=$(echo "$ISSUES_MISSING_LABEL" | jq -r '.[].number' | sed 's/^/- #/')
|
FORMATTED_OUTPUT=$(echo "$ISSUES_MISSING_LABEL" | jq -r '.[].number' | sed 's/^/- https:\/\/redirect.github.com\/renovatebot\/renovate\/issues\//')
|
||||||
|
|
||||||
# Count the issues and decide if the output should be singular or plural
|
# Count the issues and decide if the output should be singular or plural
|
||||||
ISSUE_COUNT=$(echo "$ISSUES_MISSING_LABEL" | jq '. | length')
|
ISSUE_COUNT=$(echo "$ISSUES_MISSING_LABEL" | jq '. | length')
|
||||||
|
|
Loading…
Reference in a new issue