From 14b5eee617018d27c4a1159c2e412e0d39dd1728 Mon Sep 17 00:00:00 2001 From: CrazyMax <1951866+crazy-max@users.noreply.github.com> Date: Mon, 16 Feb 2026 12:02:30 +0100 Subject: [PATCH] move to nodenext and simplify TS/ESM config Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com> --- __tests__/buildkit/buildkit.test.ts | 6 +++--- __tests__/buildkit/config.test.ts | 4 ++-- __tests__/buildkit/git.test.ts | 4 ++-- __tests__/buildx/bake.test.itg.ts | 4 ++-- __tests__/buildx/bake.test.ts | 8 ++++---- __tests__/buildx/build.test.ts | 4 ++-- __tests__/buildx/builder.test.ts | 6 +++--- __tests__/buildx/buildx.test.itg.ts | 8 ++++---- __tests__/buildx/buildx.test.ts | 8 ++++---- __tests__/buildx/history.test.itg.ts | 10 +++++----- __tests__/buildx/imagetools.test.itg.ts | 8 ++++---- __tests__/buildx/install.test.itg.ts | 2 +- __tests__/buildx/install.test.ts | 4 ++-- __tests__/cache.test.itg.ts | 4 ++-- __tests__/compose/compose.test.ts | 6 +++--- __tests__/compose/install.test.itg.ts | 2 +- __tests__/compose/install.test.ts | 4 ++-- __tests__/context.test.ts | 2 +- __tests__/cosign/cosign.test.ts | 4 ++-- __tests__/cosign/install.test.itg.ts | 2 +- __tests__/cosign/install.test.ts | 4 ++-- __tests__/docker/docker.test.itg.ts | 2 +- __tests__/docker/docker.test.ts | 6 +++--- __tests__/docker/install.test.itg.ts | 10 +++++----- __tests__/docker/install.test.ts | 4 ++-- __tests__/dockerhub.test.ts | 10 +++++----- __tests__/exec.test.ts | 2 +- __tests__/git.test.ts | 6 +++--- __tests__/github/artifact.test.itg.ts | 4 ++-- __tests__/github/github.test.ts | 8 ++++---- __tests__/github/summary.test.itg.ts | 14 +++++++------- __tests__/oci/oci.test.ts | 6 +++--- __tests__/regclient/install.test.itg.ts | 2 +- __tests__/regclient/install.test.ts | 4 ++-- __tests__/regclient/regctl.test.ts | 6 +++--- __tests__/sigstore/sigstore-cosign-old.test.itg.ts | 12 ++++++------ __tests__/sigstore/sigstore.test.itg.ts | 14 +++++++------- __tests__/undock/install.test.itg.ts | 2 +- __tests__/undock/install.test.ts | 4 ++-- __tests__/undock/undock.test.itg.ts | 4 ++-- __tests__/undock/undock.test.ts | 4 ++-- __tests__/util.test.ts | 2 +- eslint.config.cjs | 14 +++----------- src/github/artifact.ts | 2 +- src/github/summary.ts | 2 +- src/types/github/summary.ts | 6 +++--- tsconfig.json | 12 ++++++------ 47 files changed, 129 insertions(+), 137 deletions(-) diff --git a/__tests__/buildkit/buildkit.test.ts b/__tests__/buildkit/buildkit.test.ts index ab81aba..61a5e01 100644 --- a/__tests__/buildkit/buildkit.test.ts +++ b/__tests__/buildkit/buildkit.test.ts @@ -16,10 +16,10 @@ import {describe, expect, it, vi, test} from 'vitest'; -import {BuildKit} from '../../src/buildkit/buildkit'; -import {Builder} from '../../src/buildx/builder'; +import {BuildKit} from '../../src/buildkit/buildkit.js'; +import {Builder} from '../../src/buildx/builder.js'; -import {BuilderInfo} from '../../src/types/buildx/builder'; +import {BuilderInfo} from '../../src/types/buildx/builder.js'; vi.spyOn(Builder.prototype, 'inspect').mockImplementation(async (): Promise => { return { diff --git a/__tests__/buildkit/config.test.ts b/__tests__/buildkit/config.test.ts index cdeeacf..1f85ae4 100644 --- a/__tests__/buildkit/config.test.ts +++ b/__tests__/buildkit/config.test.ts @@ -20,8 +20,8 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {BuildKit} from '../../src/buildkit/buildkit'; -import {Context} from '../../src/context'; +import {BuildKit} from '../../src/buildkit/buildkit.js'; +import {Context} from '../../src/context.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'buildkit-config-')); diff --git a/__tests__/buildkit/git.test.ts b/__tests__/buildkit/git.test.ts index aa98cb8..b34d7f7 100644 --- a/__tests__/buildkit/git.test.ts +++ b/__tests__/buildkit/git.test.ts @@ -16,9 +16,9 @@ import {beforeEach, describe, expect, vi, test} from 'vitest'; -import {Git} from '../../src/buildkit/git'; +import {Git} from '../../src/buildkit/git.js'; -import {GitRef, GitURL} from '../../src/types/buildkit/git'; +import {GitRef, GitURL} from '../../src/types/buildkit/git.js'; beforeEach(() => { vi.restoreAllMocks(); diff --git a/__tests__/buildx/bake.test.itg.ts b/__tests__/buildx/bake.test.itg.ts index 117d4f9..733990d 100644 --- a/__tests__/buildx/bake.test.itg.ts +++ b/__tests__/buildx/bake.test.itg.ts @@ -18,8 +18,8 @@ import {describe, expect, test} from 'vitest'; import * as fs from 'fs'; import * as path from 'path'; -import {Bake} from '../../src/buildx/bake'; -import {BakeDefinition} from '../../src/types/buildx/bake'; +import {Bake} from '../../src/buildx/bake.js'; +import {BakeDefinition} from '../../src/types/buildx/bake.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); diff --git a/__tests__/buildx/bake.test.ts b/__tests__/buildx/bake.test.ts index e4dcce4..c502b9a 100644 --- a/__tests__/buildx/bake.test.ts +++ b/__tests__/buildx/bake.test.ts @@ -20,12 +20,12 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {Bake} from '../../src/buildx/bake'; -import {Context} from '../../src/context'; +import {Bake} from '../../src/buildx/bake.js'; +import {Context} from '../../src/context.js'; import {ExecOptions} from '@actions/exec'; -import {BakeDefinition} from '../../src/types/buildx/bake'; -import {BuildMetadata} from '../../src/types/buildx/build'; +import {BakeDefinition} from '../../src/types/buildx/bake.js'; +import {BuildMetadata} from '../../src/types/buildx/build.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'buildx-bake-')); diff --git a/__tests__/buildx/build.test.ts b/__tests__/buildx/build.test.ts index a39a541..b9fc53d 100644 --- a/__tests__/buildx/build.test.ts +++ b/__tests__/buildx/build.test.ts @@ -20,8 +20,8 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {Context} from '../../src/context'; -import {Build} from '../../src/buildx/build'; +import {Context} from '../../src/context.js'; +import {Build} from '../../src/buildx/build.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'buildx-build-')); diff --git a/__tests__/buildx/builder.test.ts b/__tests__/buildx/builder.test.ts index e387553..83056a9 100644 --- a/__tests__/buildx/builder.test.ts +++ b/__tests__/buildx/builder.test.ts @@ -18,10 +18,10 @@ import {describe, expect, it, vi, test} from 'vitest'; import * as fs from 'fs'; import * as path from 'path'; -import {Builder} from '../../src/buildx/builder'; -import {Exec} from '../../src/exec'; +import {Builder} from '../../src/buildx/builder.js'; +import {Exec} from '../../src/exec.js'; -import {BuilderInfo} from '../../src/types/buildx/builder'; +import {BuilderInfo} from '../../src/types/buildx/builder.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); diff --git a/__tests__/buildx/buildx.test.itg.ts b/__tests__/buildx/buildx.test.itg.ts index 3df40b7..7997fac 100644 --- a/__tests__/buildx/buildx.test.itg.ts +++ b/__tests__/buildx/buildx.test.itg.ts @@ -20,10 +20,10 @@ import os from 'os'; import path from 'path'; import * as core from '@actions/core'; -import {Buildx} from '../../src/buildx/buildx'; -import {Build} from '../../src/buildx/build'; -import {Bake} from '../../src/buildx/bake'; -import {Exec} from '../../src/exec'; +import {Buildx} from '../../src/buildx/buildx.js'; +import {Build} from '../../src/buildx/build.js'; +import {Bake} from '../../src/buildx/bake.js'; +import {Exec} from '../../src/exec.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'buildx-buildx-itg-')); diff --git a/__tests__/buildx/buildx.test.ts b/__tests__/buildx/buildx.test.ts index 857d7b7..ae0426d 100644 --- a/__tests__/buildx/buildx.test.ts +++ b/__tests__/buildx/buildx.test.ts @@ -21,11 +21,11 @@ import path from 'path'; import * as rimraf from 'rimraf'; import * as semver from 'semver'; -import {Buildx} from '../../src/buildx/buildx'; -import {Context} from '../../src/context'; -import {Exec} from '../../src/exec'; +import {Buildx} from '../../src/buildx/buildx.js'; +import {Context} from '../../src/context.js'; +import {Exec} from '../../src/exec.js'; -import {Cert, LocalState} from '../../src/types/buildx/buildx'; +import {Cert, LocalState} from '../../src/types/buildx/buildx.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'buildx-buildx-')); diff --git a/__tests__/buildx/history.test.itg.ts b/__tests__/buildx/history.test.itg.ts index 5c58ba1..e13b5a5 100644 --- a/__tests__/buildx/history.test.itg.ts +++ b/__tests__/buildx/history.test.itg.ts @@ -19,11 +19,11 @@ import fs from 'fs'; import os from 'os'; import path from 'path'; -import {Buildx} from '../../src/buildx/buildx'; -import {Bake} from '../../src/buildx/bake'; -import {Build} from '../../src/buildx/build'; -import {History} from '../../src/buildx/history'; -import {Exec} from '../../src/exec'; +import {Buildx} from '../../src/buildx/buildx.js'; +import {Bake} from '../../src/buildx/bake.js'; +import {Build} from '../../src/buildx/build.js'; +import {History} from '../../src/buildx/history.js'; +import {Exec} from '../../src/exec.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'buildx-history-itg-')); diff --git a/__tests__/buildx/imagetools.test.itg.ts b/__tests__/buildx/imagetools.test.itg.ts index ad6cdd5..1fc76c5 100644 --- a/__tests__/buildx/imagetools.test.itg.ts +++ b/__tests__/buildx/imagetools.test.itg.ts @@ -18,11 +18,11 @@ import {describe, expect, it} from 'vitest'; import * as fs from 'fs'; import * as path from 'path'; -import {ImageTools} from '../../src/buildx/imagetools'; +import {ImageTools} from '../../src/buildx/imagetools.js'; -import {Manifest as ImageToolsManifest} from '../../src/types/buildx/imagetools'; -import {Image} from '../../src/types/oci/config'; -import {Descriptor} from '../../src/types/oci/descriptor'; +import {Manifest as ImageToolsManifest} from '../../src/types/buildx/imagetools.js'; +import {Image} from '../../src/types/oci/config.js'; +import {Descriptor} from '../../src/types/oci/descriptor.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); diff --git a/__tests__/buildx/install.test.itg.ts b/__tests__/buildx/install.test.itg.ts index 666a3fc..09a7559 100644 --- a/__tests__/buildx/install.test.itg.ts +++ b/__tests__/buildx/install.test.itg.ts @@ -17,7 +17,7 @@ import {describe, expect, test} from 'vitest'; import * as fs from 'fs'; -import {Install} from '../../src/buildx/install'; +import {Install} from '../../src/buildx/install.js'; const maybe = !process.env.GITHUB_ACTIONS || (process.env.GITHUB_ACTIONS === 'true' && process.env.ImageOS && process.env.ImageOS.startsWith('ubuntu')) ? describe : describe.skip; diff --git a/__tests__/buildx/install.test.ts b/__tests__/buildx/install.test.ts index f95d63d..5e13875 100644 --- a/__tests__/buildx/install.test.ts +++ b/__tests__/buildx/install.test.ts @@ -20,9 +20,9 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {mockArch, mockPlatform} from '../.helpers/os'; +import {mockArch, mockPlatform} from '../.helpers/os.js'; -import {Install} from '../../src/buildx/install'; +import {Install} from '../../src/buildx/install.js'; const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'buildx-install-')); diff --git a/__tests__/cache.test.itg.ts b/__tests__/cache.test.itg.ts index e4c2176..6f6131b 100644 --- a/__tests__/cache.test.itg.ts +++ b/__tests__/cache.test.itg.ts @@ -19,8 +19,8 @@ import fs from 'fs'; import os from 'os'; import path from 'path'; -import {Cache} from '../src/cache'; -import {Util} from '../src/util'; +import {Cache} from '../src/cache.js'; +import {Util} from '../src/util.js'; const fixturesDir = path.join(__dirname, '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'cache-itg-')); diff --git a/__tests__/compose/compose.test.ts b/__tests__/compose/compose.test.ts index fef7564..b97adb8 100644 --- a/__tests__/compose/compose.test.ts +++ b/__tests__/compose/compose.test.ts @@ -21,10 +21,10 @@ import path from 'path'; import * as rimraf from 'rimraf'; import * as semver from 'semver'; -import {Context} from '../../src/context'; -import {Exec} from '../../src/exec'; +import {Context} from '../../src/context.js'; +import {Exec} from '../../src/exec.js'; -import {Compose} from '../../src/compose/compose'; +import {Compose} from '../../src/compose/compose.js'; const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'compose-compose-')); const tmpName = path.join(tmpDir, '.tmpname-vi'); diff --git a/__tests__/compose/install.test.itg.ts b/__tests__/compose/install.test.itg.ts index 9e3d01b..d05d23c 100644 --- a/__tests__/compose/install.test.itg.ts +++ b/__tests__/compose/install.test.itg.ts @@ -17,7 +17,7 @@ import {describe, expect, test} from 'vitest'; import * as fs from 'fs'; -import {Install} from '../../src/compose/install'; +import {Install} from '../../src/compose/install.js'; const maybe = !process.env.GITHUB_ACTIONS || (process.env.GITHUB_ACTIONS === 'true' && process.env.ImageOS && process.env.ImageOS.startsWith('ubuntu')) ? describe : describe.skip; diff --git a/__tests__/compose/install.test.ts b/__tests__/compose/install.test.ts index 1c339fe..c48f220 100644 --- a/__tests__/compose/install.test.ts +++ b/__tests__/compose/install.test.ts @@ -20,9 +20,9 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {mockArch, mockPlatform} from '../.helpers/os'; +import {mockArch, mockPlatform} from '../.helpers/os.js'; -import {Install} from '../../src/compose/install'; +import {Install} from '../../src/compose/install.js'; const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'compose-install-')); diff --git a/__tests__/context.test.ts b/__tests__/context.test.ts index a52c2f0..eb0bd87 100644 --- a/__tests__/context.test.ts +++ b/__tests__/context.test.ts @@ -20,7 +20,7 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {Context} from '../src/context'; +import {Context} from '../src/context.js'; const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'context-')); const tmpName = path.join(tmpDir, '.tmpname-vi'); diff --git a/__tests__/cosign/cosign.test.ts b/__tests__/cosign/cosign.test.ts index c5d722a..86ae344 100644 --- a/__tests__/cosign/cosign.test.ts +++ b/__tests__/cosign/cosign.test.ts @@ -19,8 +19,8 @@ import fs from 'fs'; import path from 'path'; import * as semver from 'semver'; -import {Exec} from '../../src/exec'; -import {Cosign} from '../../src/cosign/cosign'; +import {Exec} from '../../src/exec.js'; +import {Cosign} from '../../src/cosign/cosign.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); diff --git a/__tests__/cosign/install.test.itg.ts b/__tests__/cosign/install.test.itg.ts index d081e09..1ad0998 100644 --- a/__tests__/cosign/install.test.itg.ts +++ b/__tests__/cosign/install.test.itg.ts @@ -17,7 +17,7 @@ import {describe, expect, it, test} from 'vitest'; import * as fs from 'fs'; -import {Install} from '../../src/cosign/install'; +import {Install} from '../../src/cosign/install.js'; const maybe = !process.env.GITHUB_ACTIONS || (process.env.GITHUB_ACTIONS === 'true' && process.env.ImageOS && process.env.ImageOS.startsWith('ubuntu')) ? describe : describe.skip; diff --git a/__tests__/cosign/install.test.ts b/__tests__/cosign/install.test.ts index d55656c..2982ca9 100644 --- a/__tests__/cosign/install.test.ts +++ b/__tests__/cosign/install.test.ts @@ -20,9 +20,9 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {mockArch, mockPlatform} from '../.helpers/os'; +import {mockArch, mockPlatform} from '../.helpers/os.js'; -import {Install} from '../../src/cosign/install'; +import {Install} from '../../src/cosign/install.js'; const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'cosign-install-')); diff --git a/__tests__/docker/docker.test.itg.ts b/__tests__/docker/docker.test.itg.ts index 626ff55..b32b587 100644 --- a/__tests__/docker/docker.test.itg.ts +++ b/__tests__/docker/docker.test.itg.ts @@ -16,7 +16,7 @@ import {describe, expect, it, test} from 'vitest'; -import {Docker} from '../../src/docker/docker'; +import {Docker} from '../../src/docker/docker.js'; const maybe = !process.env.GITHUB_ACTIONS || (process.env.GITHUB_ACTIONS === 'true' && process.env.ImageOS && process.env.ImageOS.startsWith('ubuntu')) ? describe : describe.skip; diff --git a/__tests__/docker/docker.test.ts b/__tests__/docker/docker.test.ts index 9fb076c..4a9dbe0 100644 --- a/__tests__/docker/docker.test.ts +++ b/__tests__/docker/docker.test.ts @@ -21,11 +21,11 @@ import path from 'path'; import * as io from '@actions/io'; import * as rimraf from 'rimraf'; -import {mockHomedir} from '../.helpers/os'; +import {mockHomedir} from '../.helpers/os.js'; -import {Docker} from '../../src/docker/docker'; +import {Docker} from '../../src/docker/docker.js'; -import {ConfigFile} from '../../src/types/docker/docker'; +import {ConfigFile} from '../../src/types/docker/docker.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'docker-docker-')); diff --git a/__tests__/docker/install.test.itg.ts b/__tests__/docker/install.test.itg.ts index 278fce1..48b501b 100644 --- a/__tests__/docker/install.test.itg.ts +++ b/__tests__/docker/install.test.itg.ts @@ -19,11 +19,11 @@ import fs from 'fs'; import os from 'os'; import path from 'path'; -import {Install, InstallSource, InstallSourceArchive, InstallSourceImage} from '../../src/docker/install'; -import {Docker} from '../../src/docker/docker'; -import {Install as RegclientInstall} from '../../src/regclient/install'; -import {Install as UndockInstall} from '../../src/undock/install'; -import {Exec} from '../../src/exec'; +import {Install, InstallSource, InstallSourceArchive, InstallSourceImage} from '../../src/docker/install.js'; +import {Docker} from '../../src/docker/docker.js'; +import {Install as RegclientInstall} from '../../src/regclient/install.js'; +import {Install as UndockInstall} from '../../src/undock/install.js'; +import {Exec} from '../../src/exec.js'; const tmpDir = () => fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'docker-install-itg-')); diff --git a/__tests__/docker/install.test.ts b/__tests__/docker/install.test.ts index a372dd3..5bc95e5 100644 --- a/__tests__/docker/install.test.ts +++ b/__tests__/docker/install.test.ts @@ -20,9 +20,9 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {mockArch, mockPlatform} from '../.helpers/os'; +import {mockArch, mockPlatform} from '../.helpers/os.js'; -import {Install, InstallSourceArchive, InstallSourceImage} from '../../src/docker/install'; +import {Install, InstallSourceArchive, InstallSourceImage} from '../../src/docker/install.js'; const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'docker-install-')); diff --git a/__tests__/dockerhub.test.ts b/__tests__/dockerhub.test.ts index 33e633f..0e36bac 100644 --- a/__tests__/dockerhub.test.ts +++ b/__tests__/dockerhub.test.ts @@ -18,12 +18,12 @@ import {describe, expect, vi, it} from 'vitest'; import * as fs from 'fs'; import * as path from 'path'; -import {DockerHub} from '../src/dockerhub'; -import {RepositoryResponse, RepositoryTagsResponse} from '../src/types/dockerhub'; +import {DockerHub} from '../src/dockerhub.js'; +import {RepositoryResponse, RepositoryTagsResponse} from '../src/types/dockerhub.js'; -import repoInfoFixture from './.fixtures/dockerhub-repoinfo.json'; -import repoTagsFixture from './.fixtures/dockerhub-repotags.json'; -import repoAllTagsFixture from './.fixtures/dockerhub-repoalltags.json'; +import repoInfoFixture from './.fixtures/dockerhub-repoinfo.json' with {type: 'json'}; +import repoTagsFixture from './.fixtures/dockerhub-repotags.json' with {type: 'json'}; +import repoAllTagsFixture from './.fixtures/dockerhub-repoalltags.json' with {type: 'json'}; describe('getRepository', () => { it('returns repo info', async () => { diff --git a/__tests__/exec.test.ts b/__tests__/exec.test.ts index 5070b13..6acf79a 100644 --- a/__tests__/exec.test.ts +++ b/__tests__/exec.test.ts @@ -16,7 +16,7 @@ import {describe, expect, it, vi} from 'vitest'; -import {Exec} from '../src/exec'; +import {Exec} from '../src/exec.js'; describe('exec', () => { it('returns docker version', async () => { diff --git a/__tests__/git.test.ts b/__tests__/git.test.ts index 11fbb90..0d46beb 100644 --- a/__tests__/git.test.ts +++ b/__tests__/git.test.ts @@ -16,8 +16,8 @@ import {beforeEach, describe, expect, it, vi} from 'vitest'; -import {Git as GitMocked} from '../src/git'; -import {Exec} from '../src/exec'; +import {Git as GitMocked} from '../src/git.js'; +import {Exec} from '../src/exec.js'; import {ExecOutput} from '@actions/exec'; beforeEach(() => { @@ -74,7 +74,7 @@ describe('remoteSha', () => { it('returns sha using github api', async () => { vi.resetModules(); vi.unmock('@actions/github'); - const {Git} = await import('../src/git'); + const {Git} = await import('../src/git.js'); expect(await Git.remoteSha('https://github.com/docker/buildx.git', 'refs/pull/648/head', process.env.GITHUB_TOKEN)).toEqual('f11797113e5a9b86bd976329c5dbb8a8bfdfadfa'); }); }); diff --git a/__tests__/github/artifact.test.itg.ts b/__tests__/github/artifact.test.itg.ts index 7f88041..627d8a4 100644 --- a/__tests__/github/artifact.test.itg.ts +++ b/__tests__/github/artifact.test.itg.ts @@ -19,8 +19,8 @@ import fs from 'fs'; import os from 'os'; import path from 'path'; -import {GitHubArtifact} from '../../src/github/artifact'; -import {Util} from '../../src/util'; +import {GitHubArtifact} from '../../src/github/artifact.js'; +import {Util} from '../../src/util.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'github-itg-')); diff --git a/__tests__/github/github.test.ts b/__tests__/github/github.test.ts index 40c8c5e..9610d47 100644 --- a/__tests__/github/github.test.ts +++ b/__tests__/github/github.test.ts @@ -19,10 +19,10 @@ import * as fs from 'fs'; import * as path from 'path'; import * as core from '@actions/core'; -import {GitHub} from '../../src/github/github'; -import {GitHubRepo} from '../../src/types/github/github'; +import {GitHub} from '../../src/github/github.js'; +import {GitHubRepo} from '../../src/types/github/github.js'; -import repoFixture from '../.fixtures/github-repo.json'; +import repoFixture from '../.fixtures/github-repo.json' with {type: 'json'}; const fixturesDir = path.join(__dirname, '..', '.fixtures'); @@ -51,7 +51,7 @@ describe('repoData (api)', () => { try { vi.resetModules(); vi.unmock('@actions/github'); - const {GitHub} = await import('../../src/github/github'); + const {GitHub} = await import('../../src/github/github.js'); const github = new GitHub({token: process.env.GITHUB_TOKEN}); const repo = await github.repoData(); const fullName = repo.full_name ?? `${repo.owner?.login}/${repo.name}`; diff --git a/__tests__/github/summary.test.itg.ts b/__tests__/github/summary.test.itg.ts index ec64719..42e03a3 100644 --- a/__tests__/github/summary.test.itg.ts +++ b/__tests__/github/summary.test.itg.ts @@ -19,13 +19,13 @@ import fs from 'fs'; import os from 'os'; import path from 'path'; -import {Buildx} from '../../src/buildx/buildx'; -import {Bake} from '../../src/buildx/bake'; -import {Build} from '../../src/buildx/build'; -import {Exec} from '../../src/exec'; -import {GitHubArtifact} from '../../src/github/artifact'; -import {GitHubSummary} from '../../src/github/summary'; -import {History} from '../../src/buildx/history'; +import {Buildx} from '../../src/buildx/buildx.js'; +import {Bake} from '../../src/buildx/bake.js'; +import {Build} from '../../src/buildx/build.js'; +import {Exec} from '../../src/exec.js'; +import {GitHubArtifact} from '../../src/github/artifact.js'; +import {GitHubSummary} from '../../src/github/summary.js'; +import {History} from '../../src/buildx/history.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'github-itg-')); diff --git a/__tests__/oci/oci.test.ts b/__tests__/oci/oci.test.ts index e319510..1b3f27e 100644 --- a/__tests__/oci/oci.test.ts +++ b/__tests__/oci/oci.test.ts @@ -20,11 +20,11 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {mockArch, mockPlatform} from '../.helpers/os'; +import {mockArch, mockPlatform} from '../.helpers/os.js'; -import {OCI} from '../../src/oci/oci'; +import {OCI} from '../../src/oci/oci.js'; -import {Platform} from '../../src/types/oci/descriptor'; +import {Platform} from '../../src/types/oci/descriptor.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'oci-oci-')); diff --git a/__tests__/regclient/install.test.itg.ts b/__tests__/regclient/install.test.itg.ts index 0c13421..d98acec 100644 --- a/__tests__/regclient/install.test.itg.ts +++ b/__tests__/regclient/install.test.itg.ts @@ -17,7 +17,7 @@ import {describe, expect, test} from 'vitest'; import * as fs from 'fs'; -import {Install} from '../../src/regclient/install'; +import {Install} from '../../src/regclient/install.js'; describe('download', () => { // prettier-ignore diff --git a/__tests__/regclient/install.test.ts b/__tests__/regclient/install.test.ts index 0a7fa88..4d833b1 100644 --- a/__tests__/regclient/install.test.ts +++ b/__tests__/regclient/install.test.ts @@ -20,9 +20,9 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {mockArch, mockPlatform} from '../.helpers/os'; +import {mockArch, mockPlatform} from '../.helpers/os.js'; -import {Install} from '../../src/regclient/install'; +import {Install} from '../../src/regclient/install.js'; const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'regclient-install-')); diff --git a/__tests__/regclient/regctl.test.ts b/__tests__/regclient/regctl.test.ts index cfe8b13..228538d 100644 --- a/__tests__/regclient/regctl.test.ts +++ b/__tests__/regclient/regctl.test.ts @@ -17,10 +17,10 @@ import {describe, expect, it, vi, test} from 'vitest'; import * as semver from 'semver'; -import {Exec} from '../../src/exec'; -import {Regctl} from '../../src/regclient/regctl'; +import {Exec} from '../../src/exec.js'; +import {Regctl} from '../../src/regclient/regctl.js'; -import {Image} from '../../src/types/oci/config'; +import {Image} from '../../src/types/oci/config.js'; describe('manifestGet', () => { // prettier-ignore diff --git a/__tests__/sigstore/sigstore-cosign-old.test.itg.ts b/__tests__/sigstore/sigstore-cosign-old.test.itg.ts index e146249..5862d77 100644 --- a/__tests__/sigstore/sigstore-cosign-old.test.itg.ts +++ b/__tests__/sigstore/sigstore-cosign-old.test.itg.ts @@ -17,12 +17,12 @@ import {beforeAll, describe, expect, vi, it} from 'vitest'; import * as path from 'path'; -import {Buildx} from '../../src/buildx/buildx'; -import {Build} from '../../src/buildx/build'; -import {Install as CosignInstall} from '../../src/cosign/install'; -import {Docker} from '../../src/docker/docker'; -import {Exec} from '../../src/exec'; -import {Sigstore} from '../../src/sigstore/sigstore'; +import {Buildx} from '../../src/buildx/buildx.js'; +import {Build} from '../../src/buildx/build.js'; +import {Install as CosignInstall} from '../../src/cosign/install.js'; +import {Docker} from '../../src/docker/docker.js'; +import {Exec} from '../../src/exec.js'; +import {Sigstore} from '../../src/sigstore/sigstore.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); diff --git a/__tests__/sigstore/sigstore.test.itg.ts b/__tests__/sigstore/sigstore.test.itg.ts index d1ba0d1..f0bfaf9 100644 --- a/__tests__/sigstore/sigstore.test.itg.ts +++ b/__tests__/sigstore/sigstore.test.itg.ts @@ -18,13 +18,13 @@ import {beforeAll, describe, expect, vi, it, test} from 'vitest'; import fs from 'fs'; import * as path from 'path'; -import {Buildx} from '../../src/buildx/buildx'; -import {Build} from '../../src/buildx/build'; -import {Install as CosignInstall} from '../../src/cosign/install'; -import {Docker} from '../../src/docker/docker'; -import {Exec} from '../../src/exec'; -import {OCI} from '../../src/oci/oci'; -import {Sigstore} from '../../src/sigstore/sigstore'; +import {Buildx} from '../../src/buildx/buildx.js'; +import {Build} from '../../src/buildx/build.js'; +import {Install as CosignInstall} from '../../src/cosign/install.js'; +import {Docker} from '../../src/docker/docker.js'; +import {Exec} from '../../src/exec.js'; +import {OCI} from '../../src/oci/oci.js'; +import {Sigstore} from '../../src/sigstore/sigstore.js'; const fixturesDir = path.join(__dirname, '..', '.fixtures'); diff --git a/__tests__/undock/install.test.itg.ts b/__tests__/undock/install.test.itg.ts index e55a06a..5ba432f 100644 --- a/__tests__/undock/install.test.itg.ts +++ b/__tests__/undock/install.test.itg.ts @@ -17,7 +17,7 @@ import {describe, expect, test} from 'vitest'; import * as fs from 'fs'; -import {Install} from '../../src/undock/install'; +import {Install} from '../../src/undock/install.js'; describe('download', () => { // prettier-ignore diff --git a/__tests__/undock/install.test.ts b/__tests__/undock/install.test.ts index d012cd4..ed4f67d 100644 --- a/__tests__/undock/install.test.ts +++ b/__tests__/undock/install.test.ts @@ -20,9 +20,9 @@ import os from 'os'; import path from 'path'; import * as rimraf from 'rimraf'; -import {mockArch, mockPlatform} from '../.helpers/os'; +import {mockArch, mockPlatform} from '../.helpers/os.js'; -import {Install} from '../../src/undock/install'; +import {Install} from '../../src/undock/install.js'; const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'undock-install-')); diff --git a/__tests__/undock/undock.test.itg.ts b/__tests__/undock/undock.test.itg.ts index a7a548e..bfc8b5f 100644 --- a/__tests__/undock/undock.test.itg.ts +++ b/__tests__/undock/undock.test.itg.ts @@ -18,8 +18,8 @@ import {describe, expect, it} from 'vitest'; import fs from 'fs'; import os from 'os'; -import {Undock} from '../../src/undock/undock'; -import {Install as UndockInstall} from '../../src/undock/install'; +import {Undock} from '../../src/undock/undock.js'; +import {Install as UndockInstall} from '../../src/undock/install.js'; describe('run', () => { it('extracts moby/moby-bin:26.1.5', async () => { diff --git a/__tests__/undock/undock.test.ts b/__tests__/undock/undock.test.ts index 7333dd7..530eb63 100644 --- a/__tests__/undock/undock.test.ts +++ b/__tests__/undock/undock.test.ts @@ -20,8 +20,8 @@ import path from 'path'; import {describe, expect, it, vi, test} from 'vitest'; import * as semver from 'semver'; -import {Exec} from '../../src/exec'; -import {Undock} from '../../src/undock/undock'; +import {Exec} from '../../src/exec.js'; +import {Undock} from '../../src/undock/undock.js'; const tmpDir = fs.mkdtempSync(path.join(process.env.TEMP || os.tmpdir(), 'undock-undock-')); diff --git a/__tests__/util.test.ts b/__tests__/util.test.ts index 490bbd6..94052c1 100644 --- a/__tests__/util.test.ts +++ b/__tests__/util.test.ts @@ -18,7 +18,7 @@ import {describe, expect, it, test} from 'vitest'; import * as fs from 'fs'; import * as path from 'path'; -import {Util} from '../src/util'; +import {Util} from '../src/util.js'; describe('getInputList', () => { it('single line correctly', async () => { diff --git a/eslint.config.cjs b/eslint.config.cjs index 28d93a5..949e2f1 100644 --- a/eslint.config.cjs +++ b/eslint.config.cjs @@ -35,16 +35,7 @@ module.exports = defineConfig([ globalIgnores(['.yarn/**/*', 'lib/**/*', 'coverage/**/*', 'node_modules/**/*']), { extends: fixupConfigRules( - compat.extends( - 'eslint:recommended', - 'plugin:@typescript-eslint/eslint-recommended', - 'plugin:@typescript-eslint/recommended', - 'plugin:import/errors', - 'plugin:import/typescript', - 'plugin:import/warnings', - 'plugin:vitest/recommended', - 'plugin:prettier/recommended' - ) + compat.extends('eslint:recommended', 'plugin:@typescript-eslint/eslint-recommended', 'plugin:@typescript-eslint/recommended', 'plugin:import/errors', 'plugin:import/typescript', 'plugin:import/warnings', 'plugin:prettier/recommended') ), plugins: { @@ -72,9 +63,10 @@ module.exports = defineConfig([ 'import/no-unresolved': [ 'error', { - ignore: ['\\.js$', 'csv-parse/sync', '@octokit/openapi-types', '@octokit/core', '@octokit/plugin-rest-endpoint-methods'] + ignore: ['\\.js$', 'csv-parse/sync', '@octokit/openapi-types', '@octokit/core', '@octokit/plugin-rest-endpoint-methods', 'vitest/config'] } ], + 'vitest/no-conditional-expect': 'error', 'vitest/no-disabled-tests': 0 } } diff --git a/src/github/artifact.ts b/src/github/artifact.ts index 8828e5f..93955a1 100644 --- a/src/github/artifact.ts +++ b/src/github/artifact.ts @@ -20,7 +20,7 @@ import {DefaultArtifactClient, InvalidResponseError} from '@actions/artifact'; import * as core from '@actions/core'; import {UploadOpts, UploadResponse} from '../types/github/artifact.js'; -import {GitHub} from './github'; +import {GitHub} from './github.js'; export class GitHubArtifact { public static async upload(opts: UploadOpts): Promise { diff --git a/src/github/summary.ts b/src/github/summary.ts index 6a3bc22..9da8441 100644 --- a/src/github/summary.ts +++ b/src/github/summary.ts @@ -19,7 +19,7 @@ import {dump as yamldump} from 'js-yaml'; import os from 'os'; import * as core from '@actions/core'; -import {GitHub} from './github'; +import {GitHub} from './github.js'; import {Util} from '../util.js'; import {BuildSummaryOpts, SummaryTableCell} from '../types/github/summary.js'; diff --git a/src/types/github/summary.ts b/src/types/github/summary.ts index d1a9985..126c22f 100644 --- a/src/types/github/summary.ts +++ b/src/types/github/summary.ts @@ -16,9 +16,9 @@ import * as core from '@actions/core'; -import {UploadResponse} from './artifact'; -import {BakeDefinition} from '../buildx/bake'; -import {ExportResponse} from '../buildx/history'; +import {UploadResponse} from './artifact.js'; +import {BakeDefinition} from '../buildx/bake.js'; +import {ExportResponse} from '../buildx/history.js'; export type SummaryTableRow = Parameters[0][number]; export type SummaryTableCell = Exclude; diff --git a/tsconfig.json b/tsconfig.json index 88dabea..bca4392 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,7 @@ { "compilerOptions": { - "module": "es2020", - "moduleResolution": "bundler", + "module": "nodenext", + "moduleResolution": "nodenext", "esModuleInterop": true, "isolatedModules": true, "strict": true, @@ -12,13 +12,13 @@ "rootDir": "./src", "forceConsistentCasingInFileNames": true, "noImplicitAny": false, - "resolveJsonModule": true, "useUnknownInCatchVariables": false, - "skipLibCheck": true, + "skipLibCheck": true }, + "include": [ + "src/**/*.ts" + ], "exclude": [ - "./__mocks__/**/*", - "./__tests__/**/*", "./lib/**/*", "node_modules" ]