diff --git a/packages/config/src/env/git.js b/packages/config/src/env/git.js index 20beef53ed..af9fe7a74d 100644 --- a/packages/config/src/env/git.js +++ b/packages/config/src/env/git.js @@ -6,10 +6,9 @@ import { removeFalsy } from '../utils/remove_falsy.js' // git is optional and there might be not git repository. // We purposely keep this decoupled from the git utility. export const getGitEnv = async function (buildDir, branch) { - const [COMMIT_REF, CACHED_COMMIT_REF] = await Promise.all([ - git(['rev-parse', 'HEAD'], buildDir), - git(['rev-parse', 'HEAD^'], buildDir), - ]) + const COMMIT_REF = await git(['rev-parse', 'HEAD'], buildDir) + // `HEAD^` is not available on the first commit, so we fallback to `HEAD`. + const CACHED_COMMIT_REF = (await git(['rev-parse', 'HEAD^'], buildDir)) || COMMIT_REF const gitEnv = { BRANCH: branch, HEAD: branch, COMMIT_REF, CACHED_COMMIT_REF, PULL_REQUEST: 'false' } const gitEnvA = removeFalsy(gitEnv) return gitEnvA diff --git a/packages/config/src/types/error_monitor.ts b/packages/config/src/types/error_monitor.ts new file mode 100644 index 0000000000..aae678b08f --- /dev/null +++ b/packages/config/src/types/error_monitor.ts @@ -0,0 +1,3 @@ +export type ErrorMonitor = { + notify: (error: Error, callback?: (event: any) => void) => void +} diff --git a/packages/config/src/types/test_options.ts b/packages/config/src/types/test_options.ts new file mode 100644 index 0000000000..f88dfda256 --- /dev/null +++ b/packages/config/src/types/test_options.ts @@ -0,0 +1,13 @@ +import type { ErrorMonitor } from './error_monitor.js' + +export type TestOptions = { + errorMonitor?: ErrorMonitor + host?: string + env?: boolean + pluginsListUrl?: string + skipPluginList?: boolean + telemetryOrigin?: string + telemetryTimeout?: number + silentLingeringProcesses?: boolean + scheme?: string +} diff --git a/packages/config/src/utils/extensions/auto-install-extensions.ts b/packages/config/src/utils/extensions/auto-install-extensions.ts index d0df88f5b4..7161db4796 100644 --- a/packages/config/src/utils/extensions/auto-install-extensions.ts +++ b/packages/config/src/utils/extensions/auto-install-extensions.ts @@ -3,6 +3,7 @@ import { join } from 'path' import { type Extension, getExtensions } from '../../api/site_info.js' import { type ModeOption } from '../../types/options.js' +import { type TestOptions } from '../../types/test_options.js' import { fetchAutoInstallableExtensionsMeta, installExtension } from './utils.js' @@ -17,14 +18,14 @@ function getPackageJSON(directory: string) { } interface AutoInstallOptions { - featureFlags: any + featureFlags: Record siteId: string accountId: string token: string buildDir: string extensions: Extension[] offline: boolean - testOpts: any + testOpts: TestOptions mode: ModeOption extensionApiBaseUrl: string debug?: boolean diff --git a/packages/config/tests/api/snapshots/tests.js.snap b/packages/config/tests/api/snapshots/tests.js.snap index ff72afb27c..6dafdb5a2e 100644 Binary files a/packages/config/tests/api/snapshots/tests.js.snap and b/packages/config/tests/api/snapshots/tests.js.snap differ diff --git a/packages/config/tests/context/snapshots/tests.js.md b/packages/config/tests/context/snapshots/tests.js.md index 19d1f91adf..8a6b7d4d4d 100644 --- a/packages/config/tests/context/snapshots/tests.js.md +++ b/packages/config/tests/context/snapshots/tests.js.md @@ -746,6 +746,12 @@ Generated by [AVA](https://avajs.dev). ],␊ "value": "0"␊ },␊ + "CACHED_COMMIT_REF": {␊ + "sources": [␊ + "general"␊ + ],␊ + "value": "HEXADECIMAL_ID"␊ + },␊ "COMMIT_REF": {␊ "sources": [␊ "general"␊ @@ -1814,7 +1820,7 @@ Generated by [AVA](https://avajs.dev). "siteInfo": {}␊ }` -## Context with branch wildcard pattern feat/\* +## Context with branch wildcard pattern feat/* > Snapshot 1 @@ -2225,7 +2231,7 @@ Generated by [AVA](https://avajs.dev). "siteInfo": {}␊ }` -## Context with nested branch wildcard pattern feat/nested/\* +## Context with nested branch wildcard pattern feat/nested/* > Snapshot 1 @@ -2362,7 +2368,7 @@ Generated by [AVA](https://avajs.dev). "siteInfo": {}␊ }` -## Context with branch wildcard pattern feature/\* +## Context with branch wildcard pattern feature/* > Snapshot 1 @@ -2499,7 +2505,7 @@ Generated by [AVA](https://avajs.dev). "siteInfo": {}␊ }` -## Context with branch wildcard pattern feat\* without slash +## Context with branch wildcard pattern feat* without slash > Snapshot 1 diff --git a/packages/config/tests/context/snapshots/tests.js.snap b/packages/config/tests/context/snapshots/tests.js.snap index 6242bb3bf6..1648d9d8f0 100644 Binary files a/packages/config/tests/context/snapshots/tests.js.snap and b/packages/config/tests/context/snapshots/tests.js.snap differ diff --git a/packages/config/tests/load/snapshots/tests.js.md b/packages/config/tests/load/snapshots/tests.js.md index c3228ffd57..855d10e50d 100644 --- a/packages/config/tests/load/snapshots/tests.js.md +++ b/packages/config/tests/load/snapshots/tests.js.md @@ -181,6 +181,12 @@ Generated by [AVA](https://avajs.dev). ],␊ "value": "0"␊ },␊ + "CACHED_COMMIT_REF": {␊ + "sources": [␊ + "general"␊ + ],␊ + "value": "HEXADECIMAL_ID"␊ + },␊ "COMMIT_REF": {␊ "sources": [␊ "general"␊ diff --git a/packages/config/tests/load/snapshots/tests.js.snap b/packages/config/tests/load/snapshots/tests.js.snap index 7cab4cc9dd..08966db519 100644 Binary files a/packages/config/tests/load/snapshots/tests.js.snap and b/packages/config/tests/load/snapshots/tests.js.snap differ