mirror of
https://github.com/renovatebot/renovate.git
synced 2025-01-26 14:36:26 +00:00
Compare commits
6 commits
10083cc051
...
6304305193
Author | SHA1 | Date | |
---|---|---|---|
|
6304305193 | ||
|
abb21cd4d3 | ||
|
d3a4813291 | ||
|
da5c5ed3f6 | ||
|
c5bc9ff72f | ||
|
ce36d0dbd2 |
13 changed files with 300 additions and 140 deletions
|
@ -79,7 +79,7 @@ If Renovate finds a newer version, it updates `0.15.0` to match that version.
|
|||
|
||||
#### `git_override`
|
||||
|
||||
If Renovate finds a [`git_override`](https://bazel.build/rules/lib/globals/module#git_override), it ignores the related `bazel_dep` entry and instead evaluates the `commit` value at the specified `remote`.
|
||||
If Renovate finds a [`git_override`](https://bazel.build/rules/lib/globals/module#git_override), it ignores the related `bazel_dep` entry and instead evaluates the `commit` value at the specified `remote`. When using `git_override`, the `version` parameter on the `bazel_dep` is optional.
|
||||
|
||||
```python
|
||||
bazel_dep(name = "cgrindel_bazel_starlib", version = "0.15.0")
|
||||
|
@ -89,6 +89,13 @@ git_override(
|
|||
commit = "fb47f0e9f7c376a7700fc9fe3319231ae57880df",
|
||||
remote = "https://github.com/cgrindel/bazel-starlib.git",
|
||||
)
|
||||
|
||||
bazel_dep(name = "rules_foo")
|
||||
git_override(
|
||||
module_name = "rules_foo",
|
||||
remote = "https://github.com/foo/rules_foo.git",
|
||||
commit = "8a1e9abe415eda7cd7f2a744fdac7499ce42cdca",
|
||||
)
|
||||
```
|
||||
|
||||
If the primary branch has a newer commit than in the list, Renovate updates the `commit` value.
|
||||
|
@ -101,6 +108,7 @@ Renovate only evaluates _two_ attributes from this declaration: `version` and `r
|
|||
If a `version` is specified, it overrides the version in the `bazel_dep`.
|
||||
In the following example, Renovate notices that the version is pinned to `1.2.3`.
|
||||
This results in `rules_foo` being ignored for update evaluation.
|
||||
When using `single_version_override`, the `version` parameter on the `bazel_dep` is optional.
|
||||
|
||||
```python
|
||||
bazel_dep(name = "rules_foo", version = "1.2.4")
|
||||
|
@ -109,6 +117,13 @@ single_version_override(
|
|||
module_name = "rules_foo",
|
||||
version = "1.2.3",
|
||||
)
|
||||
|
||||
bazel_dep(name = "rules_bar")
|
||||
|
||||
single_version_override(
|
||||
module_name = "rules_bar",
|
||||
version = "1.2.3",
|
||||
)
|
||||
```
|
||||
|
||||
If a `registry` is specified, Renovate uses the specified registry URL to check for a new version.
|
||||
|
@ -128,6 +143,7 @@ single_version_override(
|
|||
|
||||
If Renovate finds an [`archive_override`](https://bazel.build/rules/lib/globals/module#archive_override) or a [`local_path_override`](https://bazel.build/rules/lib/globals/module#local_path_override), it ignores the related `bazel_dep`.
|
||||
Because these declarations lack versionable attributes, Renovate does not update them.
|
||||
When using `archive_override` and `local_path_override`, the `version` parameter on the `bazel_dep` is optional.
|
||||
|
||||
```python
|
||||
bazel_dep(name = "rules_foo", version = "1.2.3")
|
||||
|
@ -138,6 +154,15 @@ archive_override(
|
|||
"https://example.com/archive.tar.gz",
|
||||
],
|
||||
)
|
||||
|
||||
bazel_dep(name = "rules_bar")
|
||||
|
||||
archive_override(
|
||||
module_name = "rules_bar",
|
||||
urls = [
|
||||
"https://example.com/archive.tar.gz",
|
||||
],
|
||||
)
|
||||
```
|
||||
|
||||
#### `multiple_version_override`
|
||||
|
|
|
@ -44,7 +44,7 @@ resources:
|
|||
- container: linux
|
||||
image: ubuntu:24.04
|
||||
- container: python
|
||||
image: python:3.13@sha256:d57ec66c94b9497b9f3c66f6cdddc1e4e0bad4c584397e0b57a721baef0e6fdc
|
||||
image: python:3.13@sha256:6ee79759eb6c6843f7aec973df1d3ae60f7199822669deaf77fba16a7b27d1db
|
||||
|
||||
stages:
|
||||
- stage: StageOne
|
||||
|
|
|
@ -24,6 +24,24 @@ describe('modules/manager/bazel-module/context', () => {
|
|||
]);
|
||||
});
|
||||
|
||||
it('construct simple bazel_dep with no version', () => {
|
||||
const ctx = new Ctx()
|
||||
.startRule('bazel_dep')
|
||||
.startAttribute('name')
|
||||
.addString('rules_foo')
|
||||
.endRule();
|
||||
|
||||
expect(ctx.results).toEqual([
|
||||
fragments.record(
|
||||
{
|
||||
rule: fragments.string('bazel_dep'),
|
||||
name: fragments.string('rules_foo'),
|
||||
},
|
||||
true,
|
||||
),
|
||||
]);
|
||||
});
|
||||
|
||||
it('construct a rule with array arg', () => {
|
||||
const ctx = new Ctx()
|
||||
.startRule('foo_library')
|
||||
|
|
|
@ -93,6 +93,39 @@ describe('modules/manager/bazel-module/extract', () => {
|
|||
);
|
||||
});
|
||||
|
||||
it('returns bazel_dep with no version and git_override', async () => {
|
||||
const input = codeBlock`
|
||||
bazel_dep(name = "rules_foo")
|
||||
git_override(
|
||||
module_name = "rules_foo",
|
||||
commit = "850cb49c8649e463b80ef7984e7c744279746170",
|
||||
remote = "https://github.com/example/rules_foo.git",
|
||||
)
|
||||
`;
|
||||
const result = await extractPackageFile(input, 'MODULE.bazel');
|
||||
if (!result) {
|
||||
throw new Error('Expected a result.');
|
||||
}
|
||||
expect(result.deps).toHaveLength(2);
|
||||
expect(result.deps).toEqual(
|
||||
expect.arrayContaining([
|
||||
{
|
||||
datasource: BazelDatasource.id,
|
||||
depType: 'bazel_dep',
|
||||
depName: 'rules_foo',
|
||||
skipReason: 'git-dependency',
|
||||
},
|
||||
{
|
||||
datasource: GithubTagsDatasource.id,
|
||||
depType: 'git_override',
|
||||
depName: 'rules_foo',
|
||||
currentDigest: '850cb49c8649e463b80ef7984e7c744279746170',
|
||||
packageName: 'example/rules_foo',
|
||||
},
|
||||
]),
|
||||
);
|
||||
});
|
||||
|
||||
it('returns dependencies and custom registry URLs when specified in a bazelrc', async () => {
|
||||
const packageFile = 'extract/multiple-bazelrcs/MODULE.bazel';
|
||||
const input = Fixtures.get(packageFile);
|
||||
|
@ -149,6 +182,38 @@ describe('modules/manager/bazel-module/extract', () => {
|
|||
);
|
||||
});
|
||||
|
||||
it('returns bazel_dep with no version and archive_override dependencies', async () => {
|
||||
const input = codeBlock`
|
||||
bazel_dep(name = "rules_foo")
|
||||
archive_override(
|
||||
module_name = "rules_foo",
|
||||
urls = [
|
||||
"https://example.com/archive.tar.gz",
|
||||
],
|
||||
)
|
||||
`;
|
||||
const result = await extractPackageFile(input, 'MODULE.bazel');
|
||||
if (!result) {
|
||||
throw new Error('Expected a result.');
|
||||
}
|
||||
expect(result.deps).toHaveLength(2);
|
||||
expect(result.deps).toEqual(
|
||||
expect.arrayContaining([
|
||||
{
|
||||
datasource: BazelDatasource.id,
|
||||
depType: 'bazel_dep',
|
||||
depName: 'rules_foo',
|
||||
skipReason: 'file-dependency',
|
||||
},
|
||||
{
|
||||
depType: 'archive_override',
|
||||
depName: 'rules_foo',
|
||||
skipReason: 'unsupported-datasource',
|
||||
},
|
||||
]),
|
||||
);
|
||||
});
|
||||
|
||||
it('returns bazel_dep and local_path_override dependencies', async () => {
|
||||
const input = codeBlock`
|
||||
bazel_dep(name = "rules_foo", version = "1.2.3")
|
||||
|
@ -180,9 +245,39 @@ describe('modules/manager/bazel-module/extract', () => {
|
|||
);
|
||||
});
|
||||
|
||||
it('returns bazel_dep and single_version_override dependencies if a version is specified', async () => {
|
||||
it('returns bazel_dep with no version and local_path_override dependencies', async () => {
|
||||
const input = codeBlock`
|
||||
bazel_dep(name = "rules_foo", version = "1.2.3")
|
||||
bazel_dep(name = "rules_foo")
|
||||
local_path_override(
|
||||
module_name = "rules_foo",
|
||||
urls = "/path/to/repo",
|
||||
)
|
||||
`;
|
||||
const result = await extractPackageFile(input, 'MODULE.bazel');
|
||||
if (!result) {
|
||||
throw new Error('Expected a result.');
|
||||
}
|
||||
expect(result.deps).toHaveLength(2);
|
||||
expect(result.deps).toEqual(
|
||||
expect.arrayContaining([
|
||||
{
|
||||
datasource: BazelDatasource.id,
|
||||
depType: 'bazel_dep',
|
||||
depName: 'rules_foo',
|
||||
skipReason: 'local-dependency',
|
||||
},
|
||||
{
|
||||
depType: 'local_path_override',
|
||||
depName: 'rules_foo',
|
||||
skipReason: 'unsupported-datasource',
|
||||
},
|
||||
]),
|
||||
);
|
||||
});
|
||||
|
||||
it('returns bazel_dep with no version and single_version_override dependencies if a version is specified', async () => {
|
||||
const input = codeBlock`
|
||||
bazel_dep(name = "rules_foo")
|
||||
single_version_override(
|
||||
module_name = "rules_foo",
|
||||
version = "1.2.3",
|
||||
|
@ -200,7 +295,6 @@ describe('modules/manager/bazel-module/extract', () => {
|
|||
datasource: BazelDatasource.id,
|
||||
depType: 'bazel_dep',
|
||||
depName: 'rules_foo',
|
||||
currentValue: '1.2.3',
|
||||
skipReason: 'is-pinned',
|
||||
registryUrls: ['https://example.com/custom_registry'],
|
||||
},
|
||||
|
@ -238,6 +332,29 @@ describe('modules/manager/bazel-module/extract', () => {
|
|||
]);
|
||||
});
|
||||
|
||||
it('returns bazel_dep with no version dependency if single_version_override does not have a version', async () => {
|
||||
const input = codeBlock`
|
||||
bazel_dep(name = "rules_foo")
|
||||
single_version_override(
|
||||
module_name = "rules_foo",
|
||||
registry = "https://example.com/custom_registry",
|
||||
)
|
||||
`;
|
||||
const result = await extractPackageFile(input, 'MODULE.bazel');
|
||||
if (!result) {
|
||||
throw new Error('Expected a result.');
|
||||
}
|
||||
expect(result.deps).toEqual([
|
||||
{
|
||||
datasource: BazelDatasource.id,
|
||||
depType: 'bazel_dep',
|
||||
depName: 'rules_foo',
|
||||
skipReason: 'unspecified-version',
|
||||
registryUrls: ['https://example.com/custom_registry'],
|
||||
},
|
||||
]);
|
||||
});
|
||||
|
||||
it('returns maven.install and maven.artifact dependencies', async () => {
|
||||
const input = codeBlock`
|
||||
maven.artifact(
|
||||
|
|
|
@ -25,6 +25,13 @@ const bazelDepPkgDep: BasePackageDep = {
|
|||
depName: 'rules_foo',
|
||||
currentValue: '1.2.3',
|
||||
};
|
||||
const bazelDepPkgDepNoVersion: BasePackageDep = {
|
||||
datasource: BazelDatasource.id,
|
||||
depType: 'bazel_dep',
|
||||
depName: 'rules_foo',
|
||||
currentValue: undefined,
|
||||
skipReason: 'unspecified-version',
|
||||
};
|
||||
const gitOverrideForGithubPkgDep: OverridePackageDep = {
|
||||
datasource: GithubTagsDatasource.id,
|
||||
depType: 'git_override',
|
||||
|
@ -94,6 +101,10 @@ describe('modules/manager/bazel-module/rules', () => {
|
|||
name: fragments.string('rules_foo'),
|
||||
version: fragments.string('1.2.3'),
|
||||
});
|
||||
const bazelDepWithoutDevDepNoVersion = fragments.record({
|
||||
rule: fragments.string('bazel_dep'),
|
||||
name: fragments.string('rules_foo'),
|
||||
});
|
||||
const gitOverrideWithGihubHost = fragments.record({
|
||||
rule: fragments.string('git_override'),
|
||||
module_name: fragments.string('rules_foo'),
|
||||
|
@ -131,6 +142,7 @@ describe('modules/manager/bazel-module/rules', () => {
|
|||
it.each`
|
||||
msg | a | exp
|
||||
${'bazel_dep'} | ${bazelDepWithoutDevDep} | ${bazelDepPkgDep}
|
||||
${'bazel_dep, no version'} | ${bazelDepWithoutDevDepNoVersion} | ${bazelDepPkgDepNoVersion}
|
||||
${'git_override, GitHub host'} | ${gitOverrideWithGihubHost} | ${gitOverrideForGithubPkgDep}
|
||||
${'git_override, unsupported host'} | ${gitOverrideWithUnsupportedHost} | ${gitOverrideForUnsupportedPkgDep}
|
||||
${'archive_override'} | ${archiveOverride} | ${archiveOverridePkgDep}
|
||||
|
@ -169,10 +181,17 @@ describe('modules/manager/bazel-module/rules', () => {
|
|||
|
||||
describe('.toPackageDependencies()', () => {
|
||||
const expectedBazelDepNoOverrides: PackageDependency[] = [bazelDepPkgDep];
|
||||
const expectedBazelDepNoOverridesNoVersion: PackageDependency[] = [
|
||||
bazelDepPkgDepNoVersion,
|
||||
];
|
||||
const expectedBazelDepAndGitOverride: PackageDependency[] = [
|
||||
deepmerge(bazelDepPkgDep, { skipReason: 'git-dependency' }),
|
||||
bazelModulePackageDepToPackageDependency(gitOverrideForGithubPkgDep),
|
||||
];
|
||||
const expectedBazelDepNoVersionAndGitOverride: PackageDependency[] = [
|
||||
deepmerge(bazelDepPkgDepNoVersion, { skipReason: 'git-dependency' }),
|
||||
bazelModulePackageDepToPackageDependency(gitOverrideForGithubPkgDep),
|
||||
];
|
||||
const expectedBazelDepAndSingleVersionOverride: PackageDependency[] = [
|
||||
deepmerge(bazelDepPkgDep, {
|
||||
skipReason: 'is-pinned',
|
||||
|
@ -180,30 +199,56 @@ describe('modules/manager/bazel-module/rules', () => {
|
|||
}),
|
||||
bazelModulePackageDepToPackageDependency(singleVersionOverridePkgDep),
|
||||
];
|
||||
const expectedBazelDepNoVersionAndSingleVersionOverride: PackageDependency[] =
|
||||
[
|
||||
deepmerge(bazelDepPkgDepNoVersion, {
|
||||
skipReason: 'is-pinned',
|
||||
registryUrls: [customRegistryUrl],
|
||||
}),
|
||||
bazelModulePackageDepToPackageDependency(singleVersionOverridePkgDep),
|
||||
];
|
||||
const expectedBazelDepAndArchiveOverride: PackageDependency[] = [
|
||||
deepmerge(bazelDepPkgDep, { skipReason: 'file-dependency' }),
|
||||
bazelModulePackageDepToPackageDependency(archiveOverridePkgDep),
|
||||
];
|
||||
const expectedBazelDepNoVersionAndArchiveOverride: PackageDependency[] = [
|
||||
deepmerge(bazelDepPkgDepNoVersion, { skipReason: 'file-dependency' }),
|
||||
bazelModulePackageDepToPackageDependency(archiveOverridePkgDep),
|
||||
];
|
||||
const expectedBazelDepAndLocalPathOverride: PackageDependency[] = [
|
||||
deepmerge(bazelDepPkgDep, { skipReason: 'local-dependency' }),
|
||||
bazelModulePackageDepToPackageDependency(localPathOverridePkgDep),
|
||||
];
|
||||
const expectedBazelDepNoVersionAndLocalPathOverride: PackageDependency[] = [
|
||||
deepmerge(bazelDepPkgDepNoVersion, { skipReason: 'local-dependency' }),
|
||||
bazelModulePackageDepToPackageDependency(localPathOverridePkgDep),
|
||||
];
|
||||
// If a registry is specified and a version is not specified for a
|
||||
// single_version_override, it is merely providing a registry URL for the bazel_dep.
|
||||
const expectedBazelDepWithRegistry: PackageDependency[] = [
|
||||
deepmerge(bazelDepPkgDep, { registryUrls: [customRegistryUrl] }),
|
||||
];
|
||||
const expectedBazelDepNoVersionWithRegistry: PackageDependency[] = [
|
||||
deepmerge(bazelDepPkgDepNoVersion, { registryUrls: [customRegistryUrl] }),
|
||||
];
|
||||
|
||||
it.each`
|
||||
msg | a | exp
|
||||
${'bazel_dep, no overrides'} | ${[bazelDepPkgDep]} | ${expectedBazelDepNoOverrides}
|
||||
${'bazel_dep & git_override'} | ${[bazelDepPkgDep, gitOverrideForGithubPkgDep]} | ${expectedBazelDepAndGitOverride}
|
||||
${'git_override, no bazel_dep'} | ${[gitOverrideForGithubPkgDep]} | ${[]}
|
||||
${'bazel_dep & archive_override'} | ${[bazelDepPkgDep, archiveOverridePkgDep]} | ${expectedBazelDepAndArchiveOverride}
|
||||
${'bazel_dep & local_path_override'} | ${[bazelDepPkgDep, localPathOverridePkgDep]} | ${expectedBazelDepAndLocalPathOverride}
|
||||
${'single_version_override, with version and registry'} | ${[bazelDepPkgDep, singleVersionOverridePkgDep]} | ${expectedBazelDepAndSingleVersionOverride}
|
||||
${'single_version_override, with registry'} | ${[bazelDepPkgDep, singleVersionOverrideWithRegistryPkgDep]} | ${expectedBazelDepWithRegistry}
|
||||
${'single_version_override, without version and registry'} | ${[bazelDepPkgDep, singleVersionOverrideWithoutVersionAndRegistryPkgDep]} | ${[bazelDepPkgDep]}
|
||||
msg | a | exp
|
||||
${'bazel_dep, no overrides'} | ${[bazelDepPkgDep]} | ${expectedBazelDepNoOverrides}
|
||||
${'bazel_dep, no overrides, no version'} | ${[bazelDepPkgDepNoVersion]} | ${expectedBazelDepNoOverridesNoVersion}
|
||||
${'bazel_dep & git_override'} | ${[bazelDepPkgDep, gitOverrideForGithubPkgDep]} | ${expectedBazelDepAndGitOverride}
|
||||
${'bazel_dep, no version & git_override'} | ${[bazelDepPkgDepNoVersion, gitOverrideForGithubPkgDep]} | ${expectedBazelDepNoVersionAndGitOverride}
|
||||
${'git_override, no bazel_dep'} | ${[gitOverrideForGithubPkgDep]} | ${[]}
|
||||
${'bazel_dep & archive_override'} | ${[bazelDepPkgDep, archiveOverridePkgDep]} | ${expectedBazelDepAndArchiveOverride}
|
||||
${'bazel_dep, no version & archive_override'} | ${[bazelDepPkgDepNoVersion, archiveOverridePkgDep]} | ${expectedBazelDepNoVersionAndArchiveOverride}
|
||||
${'bazel_dep & local_path_override'} | ${[bazelDepPkgDep, localPathOverridePkgDep]} | ${expectedBazelDepAndLocalPathOverride}
|
||||
${'bazel_dep, no version & local_path_override'} | ${[bazelDepPkgDepNoVersion, localPathOverridePkgDep]} | ${expectedBazelDepNoVersionAndLocalPathOverride}
|
||||
${'single_version_override, with version and registry'} | ${[bazelDepPkgDep, singleVersionOverridePkgDep]} | ${expectedBazelDepAndSingleVersionOverride}
|
||||
${'bazel_dep, no version & single_version_override, with version and registry'} | ${[bazelDepPkgDepNoVersion, singleVersionOverridePkgDep]} | ${expectedBazelDepNoVersionAndSingleVersionOverride}
|
||||
${'single_version_override, with registry'} | ${[bazelDepPkgDep, singleVersionOverrideWithRegistryPkgDep]} | ${expectedBazelDepWithRegistry}
|
||||
${'bazel_dep, no version & single_version_override, with registry'} | ${[bazelDepPkgDepNoVersion, singleVersionOverrideWithRegistryPkgDep]} | ${expectedBazelDepNoVersionWithRegistry}
|
||||
${'single_version_override, without version and registry'} | ${[bazelDepPkgDep, singleVersionOverrideWithoutVersionAndRegistryPkgDep]} | ${[bazelDepPkgDep]}
|
||||
${'bazel_dep, no version & single_version_override, without version and registry'} | ${[bazelDepPkgDepNoVersion, singleVersionOverrideWithoutVersionAndRegistryPkgDep]} | ${[bazelDepPkgDepNoVersion]}
|
||||
`('with $msg', ({ msg, a, exp }) => {
|
||||
const result = toPackageDependencies(a);
|
||||
expect(result).toEqual(exp);
|
||||
|
|
|
@ -69,14 +69,15 @@ const BazelDepToPackageDep = RecordFragmentSchema.extend({
|
|||
value: z.literal('bazel_dep'),
|
||||
}),
|
||||
name: StringFragmentSchema,
|
||||
version: StringFragmentSchema,
|
||||
version: StringFragmentSchema.optional(),
|
||||
}),
|
||||
}).transform(
|
||||
({ children: { rule, name, version } }): BasePackageDep => ({
|
||||
datasource: BazelDatasource.id,
|
||||
depType: rule.value,
|
||||
depName: name.value,
|
||||
currentValue: version.value,
|
||||
currentValue: version?.value,
|
||||
skipReason: version ? undefined : 'unspecified-version',
|
||||
}),
|
||||
);
|
||||
|
||||
|
|
|
@ -2,8 +2,8 @@ import { logger } from '../../../logger';
|
|||
import { HttpCacheStats } from '../../stats';
|
||||
import type { GotOptions, HttpResponse } from '../types';
|
||||
import { copyResponse } from '../util';
|
||||
import { HttpCacheSchema } from './schema';
|
||||
import type { HttpCache, HttpCacheProvider } from './types';
|
||||
import { type HttpCache, HttpCacheSchema } from './schema';
|
||||
import type { HttpCacheProvider } from './types';
|
||||
|
||||
export abstract class AbstractHttpCacheProvider implements HttpCacheProvider {
|
||||
protected abstract load(url: string): Promise<unknown>;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { Http } from '..';
|
||||
import * as httpMock from '../../../../test/http-mock';
|
||||
import { logger } from '../../../../test/util';
|
||||
import { getCache, resetCache } from '../../cache/repository';
|
||||
import { resetCache } from '../../cache/repository';
|
||||
import { repoCacheProvider } from './repository-http-cache-provider';
|
||||
|
||||
describe('util/http/cache/repository-http-cache-provider', () => {
|
||||
|
@ -59,27 +59,6 @@ describe('util/http/cache/repository-http-cache-provider', () => {
|
|||
});
|
||||
});
|
||||
|
||||
it('uses older cache format', async () => {
|
||||
const repoCache = getCache();
|
||||
repoCache.httpCache = {
|
||||
'https://example.com/foo/bar': {
|
||||
etag: '123',
|
||||
lastModified: 'Mon, 01 Jan 2000 00:00:00 GMT',
|
||||
httpResponse: { statusCode: 200, body: { msg: 'Hello, world!' } },
|
||||
timeStamp: new Date().toISOString(),
|
||||
},
|
||||
};
|
||||
httpMock.scope('https://example.com').get('/foo/bar').reply(304);
|
||||
|
||||
const res = await http.getJsonUnchecked('https://example.com/foo/bar');
|
||||
|
||||
expect(res).toMatchObject({
|
||||
statusCode: 200,
|
||||
body: { msg: 'Hello, world!' },
|
||||
authorization: false,
|
||||
});
|
||||
});
|
||||
|
||||
it('reports if cache could not be persisted', async () => {
|
||||
httpMock
|
||||
.scope('https://example.com')
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { getCache } from '../../cache/repository';
|
||||
import { AbstractHttpCacheProvider } from './abstract-http-cache-provider';
|
||||
import type { HttpCache } from './types';
|
||||
import type { HttpCache } from './schema';
|
||||
|
||||
export class RepositoryHttpCacheProvider extends AbstractHttpCacheProvider {
|
||||
override load(url: string): Promise<unknown> {
|
||||
|
|
34
lib/util/http/cache/schema.ts
vendored
34
lib/util/http/cache/schema.ts
vendored
|
@ -1,34 +1,16 @@
|
|||
import { z } from 'zod';
|
||||
|
||||
const invalidFieldsMsg =
|
||||
'Cache object should have `etag` or `lastModified` fields';
|
||||
|
||||
export const HttpCacheSchema = z
|
||||
.object({
|
||||
// TODO: remove this migration part during the Christmas eve 2024
|
||||
timeStamp: z.string().optional(),
|
||||
timestamp: z.string().optional(),
|
||||
etag: z.string().optional(),
|
||||
lastModified: z.string().optional(),
|
||||
httpResponse: z.unknown(),
|
||||
timestamp: z.string(),
|
||||
})
|
||||
.passthrough()
|
||||
.transform((data) => {
|
||||
if (data.timeStamp) {
|
||||
data.timestamp = data.timeStamp;
|
||||
delete data.timeStamp;
|
||||
}
|
||||
return data;
|
||||
})
|
||||
.pipe(
|
||||
z
|
||||
.object({
|
||||
etag: z.string().optional(),
|
||||
lastModified: z.string().optional(),
|
||||
httpResponse: z.unknown(),
|
||||
timestamp: z.string(),
|
||||
})
|
||||
.refine(
|
||||
({ etag, lastModified }) => etag ?? lastModified,
|
||||
invalidFieldsMsg,
|
||||
),
|
||||
.refine(
|
||||
({ etag, lastModified }) => etag ?? lastModified,
|
||||
'Cache object should have `etag` or `lastModified` fields',
|
||||
)
|
||||
.nullable()
|
||||
.catch(null);
|
||||
export type HttpCache = z.infer<typeof HttpCacheSchema>;
|
||||
|
|
7
lib/util/http/cache/types.ts
vendored
7
lib/util/http/cache/types.ts
vendored
|
@ -1,12 +1,5 @@
|
|||
import type { GotOptions, HttpResponse } from '../types';
|
||||
|
||||
export interface HttpCache {
|
||||
etag?: string;
|
||||
lastModified?: string;
|
||||
httpResponse: unknown;
|
||||
timestamp: string;
|
||||
}
|
||||
|
||||
export interface HttpCacheProvider {
|
||||
setCacheHeaders<T extends Pick<GotOptions, 'headers'>>(
|
||||
url: string,
|
||||
|
|
|
@ -299,7 +299,7 @@
|
|||
"@types/mdast": "3.0.15",
|
||||
"@types/moo": "0.5.10",
|
||||
"@types/ms": "0.7.34",
|
||||
"@types/node": "22.10.6",
|
||||
"@types/node": "22.10.7",
|
||||
"@types/parse-link-header": "2.0.3",
|
||||
"@types/punycode": "2.1.4",
|
||||
"@types/semver": "7.5.8",
|
||||
|
|
130
pnpm-lock.yaml
130
pnpm-lock.yaml
|
@ -470,8 +470,8 @@ importers:
|
|||
specifier: 0.7.34
|
||||
version: 0.7.34
|
||||
'@types/node':
|
||||
specifier: 22.10.6
|
||||
version: 22.10.6
|
||||
specifier: 22.10.7
|
||||
version: 22.10.7
|
||||
'@types/parse-link-header':
|
||||
specifier: 2.0.3
|
||||
version: 2.0.3
|
||||
|
@ -540,7 +540,7 @@ importers:
|
|||
version: 2.31.0(@typescript-eslint/parser@8.20.0(eslint@8.57.1)(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.1)
|
||||
eslint-plugin-jest:
|
||||
specifier: 28.11.0
|
||||
version: 28.11.0(@typescript-eslint/eslint-plugin@8.20.0(@typescript-eslint/parser@8.20.0(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)))(typescript@5.7.3)
|
||||
version: 28.11.0(@typescript-eslint/eslint-plugin@8.20.0(@typescript-eslint/parser@8.20.0(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)))(typescript@5.7.3)
|
||||
eslint-plugin-jest-formatting:
|
||||
specifier: 3.1.0
|
||||
version: 3.1.0(eslint@8.57.1)
|
||||
|
@ -564,16 +564,16 @@ importers:
|
|||
version: 9.1.7
|
||||
jest:
|
||||
specifier: 29.7.0
|
||||
version: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
version: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
jest-extended:
|
||||
specifier: 4.0.2
|
||||
version: 4.0.2(jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)))
|
||||
version: 4.0.2(jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)))
|
||||
jest-mock:
|
||||
specifier: 29.7.0
|
||||
version: 29.7.0
|
||||
jest-mock-extended:
|
||||
specifier: 3.0.7
|
||||
version: 3.0.7(jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)))(typescript@5.7.3)
|
||||
version: 3.0.7(jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)))(typescript@5.7.3)
|
||||
jest-snapshot:
|
||||
specifier: 29.7.0
|
||||
version: 29.7.0
|
||||
|
@ -609,10 +609,10 @@ importers:
|
|||
version: 3.0.3
|
||||
ts-jest:
|
||||
specifier: 29.2.5
|
||||
version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)))(typescript@5.7.3)
|
||||
version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)))(typescript@5.7.3)
|
||||
ts-node:
|
||||
specifier: 10.9.2
|
||||
version: 10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)
|
||||
version: 10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)
|
||||
type-fest:
|
||||
specifier: 4.32.0
|
||||
version: 4.32.0
|
||||
|
@ -2130,8 +2130,8 @@ packages:
|
|||
'@types/ms@0.7.34':
|
||||
resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==}
|
||||
|
||||
'@types/node@22.10.6':
|
||||
resolution: {integrity: sha512-qNiuwC4ZDAUNcY47xgaSuS92cjf8JbSUoaKS77bmLG1rU7MlATVSiw/IlrjtIyyskXBZ8KkNfjK/P5na7rgXbQ==}
|
||||
'@types/node@22.10.7':
|
||||
resolution: {integrity: sha512-V09KvXxFiutGp6B7XkpaDXlNadZxrzajcY50EuoLIpQ6WWYCSvf19lVIazzfIzQvhUN2HjX12spLojTnhuKlGg==}
|
||||
|
||||
'@types/normalize-package-data@2.4.4':
|
||||
resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
|
||||
|
@ -7505,27 +7505,27 @@ snapshots:
|
|||
'@jest/console@29.7.0':
|
||||
dependencies:
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
chalk: 4.1.2
|
||||
jest-message-util: 29.7.0
|
||||
jest-util: 29.7.0
|
||||
slash: 3.0.0
|
||||
|
||||
'@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))':
|
||||
'@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))':
|
||||
dependencies:
|
||||
'@jest/console': 29.7.0
|
||||
'@jest/reporters': 29.7.0
|
||||
'@jest/test-result': 29.7.0
|
||||
'@jest/transform': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
ansi-escapes: 4.3.2
|
||||
chalk: 4.1.2
|
||||
ci-info: 3.9.0
|
||||
exit: 0.1.2
|
||||
graceful-fs: 4.2.11
|
||||
jest-changed-files: 29.7.0
|
||||
jest-config: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
jest-config: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
jest-haste-map: 29.7.0
|
||||
jest-message-util: 29.7.0
|
||||
jest-regex-util: 29.6.3
|
||||
|
@ -7550,7 +7550,7 @@ snapshots:
|
|||
dependencies:
|
||||
'@jest/fake-timers': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
jest-mock: 29.7.0
|
||||
|
||||
'@jest/expect-utils@29.4.1':
|
||||
|
@ -7572,7 +7572,7 @@ snapshots:
|
|||
dependencies:
|
||||
'@jest/types': 29.6.3
|
||||
'@sinonjs/fake-timers': 10.3.0
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
jest-message-util: 29.7.0
|
||||
jest-mock: 29.7.0
|
||||
jest-util: 29.7.0
|
||||
|
@ -7594,7 +7594,7 @@ snapshots:
|
|||
'@jest/transform': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
'@jridgewell/trace-mapping': 0.3.25
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
chalk: 4.1.2
|
||||
collect-v8-coverage: 1.0.2
|
||||
exit: 0.1.2
|
||||
|
@ -7664,7 +7664,7 @@ snapshots:
|
|||
'@jest/schemas': 29.6.3
|
||||
'@types/istanbul-lib-coverage': 2.0.6
|
||||
'@types/istanbul-reports': 3.0.4
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
'@types/yargs': 17.0.33
|
||||
chalk: 4.1.2
|
||||
|
||||
|
@ -8712,7 +8712,7 @@ snapshots:
|
|||
|
||||
'@types/aws4@1.11.6':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/babel__core@7.20.5':
|
||||
dependencies:
|
||||
|
@ -8737,27 +8737,27 @@ snapshots:
|
|||
|
||||
'@types/better-sqlite3@7.6.12':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/breejs__later@4.1.5': {}
|
||||
|
||||
'@types/bunyan@1.8.11':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/bunyan@1.8.9':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/cacache@17.0.2':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/cacheable-request@6.0.3':
|
||||
dependencies:
|
||||
'@types/http-cache-semantics': 4.0.4
|
||||
'@types/keyv': 3.1.4
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
'@types/responselike': 1.0.3
|
||||
|
||||
'@types/callsite@1.0.34': {}
|
||||
|
@ -8788,7 +8788,7 @@ snapshots:
|
|||
'@types/fs-extra@11.0.4':
|
||||
dependencies:
|
||||
'@types/jsonfile': 6.1.4
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/git-url-parse@9.0.3': {}
|
||||
|
||||
|
@ -8798,7 +8798,7 @@ snapshots:
|
|||
|
||||
'@types/graceful-fs@4.1.9':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/http-cache-semantics@4.0.4': {}
|
||||
|
||||
|
@ -8824,13 +8824,13 @@ snapshots:
|
|||
|
||||
'@types/jsonfile@6.1.4':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/katex@0.16.7': {}
|
||||
|
||||
'@types/keyv@3.1.4':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/linkify-it@5.0.0': {}
|
||||
|
||||
|
@ -8849,7 +8849,7 @@ snapshots:
|
|||
|
||||
'@types/marshal@0.5.3':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/mdast@3.0.15':
|
||||
dependencies:
|
||||
|
@ -8865,7 +8865,7 @@ snapshots:
|
|||
|
||||
'@types/ms@0.7.34': {}
|
||||
|
||||
'@types/node@22.10.6':
|
||||
'@types/node@22.10.7':
|
||||
dependencies:
|
||||
undici-types: 6.20.0
|
||||
|
||||
|
@ -8879,7 +8879,7 @@ snapshots:
|
|||
|
||||
'@types/responselike@1.0.3':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
|
||||
'@types/semver-stable@3.0.2': {}
|
||||
|
||||
|
@ -8899,7 +8899,7 @@ snapshots:
|
|||
|
||||
'@types/tar@6.1.13':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
minipass: 4.2.8
|
||||
|
||||
'@types/tmp@0.2.6': {}
|
||||
|
@ -8924,7 +8924,7 @@ snapshots:
|
|||
|
||||
'@types/yauzl@2.10.3':
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
optional: true
|
||||
|
||||
'@typescript-eslint/eslint-plugin@8.20.0(@typescript-eslint/parser@8.20.0(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(typescript@5.7.3)':
|
||||
|
@ -9689,13 +9689,13 @@ snapshots:
|
|||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
create-jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)):
|
||||
create-jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)):
|
||||
dependencies:
|
||||
'@jest/types': 29.6.3
|
||||
chalk: 4.1.2
|
||||
exit: 0.1.2
|
||||
graceful-fs: 4.2.11
|
||||
jest-config: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
jest-config: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
jest-util: 29.7.0
|
||||
prompts: 2.4.2
|
||||
transitivePeerDependencies:
|
||||
|
@ -10118,13 +10118,13 @@ snapshots:
|
|||
dependencies:
|
||||
eslint: 8.57.1
|
||||
|
||||
eslint-plugin-jest@28.11.0(@typescript-eslint/eslint-plugin@8.20.0(@typescript-eslint/parser@8.20.0(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)))(typescript@5.7.3):
|
||||
eslint-plugin-jest@28.11.0(@typescript-eslint/eslint-plugin@8.20.0(@typescript-eslint/parser@8.20.0(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)))(typescript@5.7.3):
|
||||
dependencies:
|
||||
'@typescript-eslint/utils': 8.20.0(eslint@8.57.1)(typescript@5.7.3)
|
||||
eslint: 8.57.1
|
||||
optionalDependencies:
|
||||
'@typescript-eslint/eslint-plugin': 8.20.0(@typescript-eslint/parser@8.20.0(eslint@8.57.1)(typescript@5.7.3))(eslint@8.57.1)(typescript@5.7.3)
|
||||
jest: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
jest: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
- typescript
|
||||
|
@ -11154,7 +11154,7 @@ snapshots:
|
|||
'@jest/expect': 29.7.0
|
||||
'@jest/test-result': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
chalk: 4.1.2
|
||||
co: 4.6.0
|
||||
dedent: 1.5.3
|
||||
|
@ -11174,16 +11174,16 @@ snapshots:
|
|||
- babel-plugin-macros
|
||||
- supports-color
|
||||
|
||||
jest-cli@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)):
|
||||
jest-cli@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)):
|
||||
dependencies:
|
||||
'@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
'@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
'@jest/test-result': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
chalk: 4.1.2
|
||||
create-jest: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
create-jest: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
exit: 0.1.2
|
||||
import-local: 3.2.0
|
||||
jest-config: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
jest-config: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
jest-util: 29.7.0
|
||||
jest-validate: 29.7.0
|
||||
yargs: 17.7.2
|
||||
|
@ -11193,7 +11193,7 @@ snapshots:
|
|||
- supports-color
|
||||
- ts-node
|
||||
|
||||
jest-config@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)):
|
||||
jest-config@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)):
|
||||
dependencies:
|
||||
'@babel/core': 7.26.0
|
||||
'@jest/test-sequencer': 29.7.0
|
||||
|
@ -11218,8 +11218,8 @@ snapshots:
|
|||
slash: 3.0.0
|
||||
strip-json-comments: 3.1.1
|
||||
optionalDependencies:
|
||||
'@types/node': 22.10.6
|
||||
ts-node: 10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)
|
||||
'@types/node': 22.10.7
|
||||
ts-node: 10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)
|
||||
transitivePeerDependencies:
|
||||
- babel-plugin-macros
|
||||
- supports-color
|
||||
|
@ -11248,16 +11248,16 @@ snapshots:
|
|||
'@jest/environment': 29.7.0
|
||||
'@jest/fake-timers': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
jest-mock: 29.7.0
|
||||
jest-util: 29.7.0
|
||||
|
||||
jest-extended@4.0.2(jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))):
|
||||
jest-extended@4.0.2(jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))):
|
||||
dependencies:
|
||||
jest-diff: 29.7.0
|
||||
jest-get-type: 29.6.3
|
||||
optionalDependencies:
|
||||
jest: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
jest: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
|
||||
jest-get-type@29.6.3: {}
|
||||
|
||||
|
@ -11265,7 +11265,7 @@ snapshots:
|
|||
dependencies:
|
||||
'@jest/types': 29.6.3
|
||||
'@types/graceful-fs': 4.1.9
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
anymatch: 3.1.3
|
||||
fb-watchman: 2.0.2
|
||||
graceful-fs: 4.2.11
|
||||
|
@ -11308,16 +11308,16 @@ snapshots:
|
|||
slash: 3.0.0
|
||||
stack-utils: 2.0.6
|
||||
|
||||
jest-mock-extended@3.0.7(jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)))(typescript@5.7.3):
|
||||
jest-mock-extended@3.0.7(jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)))(typescript@5.7.3):
|
||||
dependencies:
|
||||
jest: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
jest: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
ts-essentials: 10.0.4(typescript@5.7.3)
|
||||
typescript: 5.7.3
|
||||
|
||||
jest-mock@29.7.0:
|
||||
dependencies:
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
jest-util: 29.7.0
|
||||
|
||||
jest-pnp-resolver@1.2.3(jest-resolve@29.7.0):
|
||||
|
@ -11352,7 +11352,7 @@ snapshots:
|
|||
'@jest/test-result': 29.7.0
|
||||
'@jest/transform': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
chalk: 4.1.2
|
||||
emittery: 0.13.1
|
||||
graceful-fs: 4.2.11
|
||||
|
@ -11380,7 +11380,7 @@ snapshots:
|
|||
'@jest/test-result': 29.7.0
|
||||
'@jest/transform': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
chalk: 4.1.2
|
||||
cjs-module-lexer: 1.4.1
|
||||
collect-v8-coverage: 1.0.2
|
||||
|
@ -11426,7 +11426,7 @@ snapshots:
|
|||
jest-util@29.7.0:
|
||||
dependencies:
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
chalk: 4.1.2
|
||||
ci-info: 3.9.0
|
||||
graceful-fs: 4.2.11
|
||||
|
@ -11445,7 +11445,7 @@ snapshots:
|
|||
dependencies:
|
||||
'@jest/test-result': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
ansi-escapes: 4.3.2
|
||||
chalk: 4.1.2
|
||||
emittery: 0.13.1
|
||||
|
@ -11454,17 +11454,17 @@ snapshots:
|
|||
|
||||
jest-worker@29.7.0:
|
||||
dependencies:
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
jest-util: 29.7.0
|
||||
merge-stream: 2.0.0
|
||||
supports-color: 8.1.1
|
||||
|
||||
jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)):
|
||||
jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)):
|
||||
dependencies:
|
||||
'@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
'@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
'@jest/types': 29.6.3
|
||||
import-local: 3.2.0
|
||||
jest-cli: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
jest-cli: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- babel-plugin-macros
|
||||
|
@ -12627,7 +12627,7 @@ snapshots:
|
|||
'@protobufjs/path': 1.1.2
|
||||
'@protobufjs/pool': 1.1.0
|
||||
'@protobufjs/utf8': 1.1.0
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
long: 5.2.4
|
||||
|
||||
protocols@2.0.1: {}
|
||||
|
@ -13390,12 +13390,12 @@ snapshots:
|
|||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
ts-jest@29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3)))(typescript@5.7.3):
|
||||
ts-jest@29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3)))(typescript@5.7.3):
|
||||
dependencies:
|
||||
bs-logger: 0.2.6
|
||||
ejs: 3.1.10
|
||||
fast-json-stable-stringify: 2.1.0
|
||||
jest: 29.7.0(@types/node@22.10.6)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3))
|
||||
jest: 29.7.0(@types/node@22.10.7)(ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3))
|
||||
jest-util: 29.7.0
|
||||
json5: 2.2.3
|
||||
lodash.memoize: 4.1.2
|
||||
|
@ -13409,14 +13409,14 @@ snapshots:
|
|||
'@jest/types': 29.6.3
|
||||
babel-jest: 29.7.0(@babel/core@7.26.0)
|
||||
|
||||
ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.6)(typescript@5.7.3):
|
||||
ts-node@10.9.2(@swc/core@1.10.7)(@types/node@22.10.7)(typescript@5.7.3):
|
||||
dependencies:
|
||||
'@cspotcode/source-map-support': 0.8.1
|
||||
'@tsconfig/node10': 1.0.11
|
||||
'@tsconfig/node12': 1.0.11
|
||||
'@tsconfig/node14': 1.0.3
|
||||
'@tsconfig/node16': 1.0.4
|
||||
'@types/node': 22.10.6
|
||||
'@types/node': 22.10.7
|
||||
acorn: 8.14.0
|
||||
acorn-walk: 8.3.4
|
||||
arg: 4.1.3
|
||||
|
|
Loading…
Reference in a new issue