mirror of https://github.com/aminya/setup-cpp
Compare commits
20 Commits
a5f6731dd9
...
f5ff24c1fd
Author | SHA1 | Date |
---|---|---|
github-actions[bot] | f5ff24c1fd | |
renovate[bot] | a0b1655bf4 | |
Amin Yahyaabadi | 88f2cb4b22 | |
renovate[bot] | 52acadc64a | |
Amin Yahyaabadi | ff4c8289ac | |
Amin Yahyaabadi | d511d1fb52 | |
github-actions[bot] | ea49034e9a | |
Amin Yahyaabadi | b2a7ceb1aa | |
Amin Yahyaabadi | efdf36d38c | |
renovate[bot] | 48bca6ce1e | |
Amin Yahyaabadi | 898e68dbc3 | |
Amin Yahyaabadi | 45b558c2a6 | |
Amin Yahyaabadi | 1034f25a9b | |
Amin Yahyaabadi | 9d702fc974 | |
Amin Yahyaabadi | 77859ef9f3 | |
Amin Yahyaabadi | 32a534716d | |
Amin Yahyaabadi | 72f96bf6fe | |
Amin Yahyaabadi | 654b790525 | |
Amin Yahyaabadi | be3c5a5688 | |
Amin Yahyaabadi | f6458ee4e1 |
|
@ -15,6 +15,11 @@
|
|||
"matchUpdateTypes": ["major", "minor", "patch", "pin", "digest", "lockFileMaintenance", "rollback", "bump"],
|
||||
"groupName": "dependencies",
|
||||
"semanticCommitType": "fix"
|
||||
},
|
||||
{
|
||||
"matchDatasources": ["npm"],
|
||||
"matchPackageNames": ["eslint", "numerous", "execa"],
|
||||
"rangeStrategy": "pin"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -29,9 +29,11 @@ jobs:
|
|||
node:
|
||||
- 22.6.0
|
||||
pnpm:
|
||||
- 9.10.0
|
||||
- 9.11.0
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
ref: ${{ github.head_ref || github.ref_name }}
|
||||
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@v4
|
||||
|
@ -56,13 +58,17 @@ jobs:
|
|||
run: |
|
||||
pnpm run test.lint
|
||||
|
||||
- name: Validate Dist
|
||||
- name: Update Dist
|
||||
run: |
|
||||
if [ "$(git diff --ignore-space-at-eol --text dist/ | wc -l)" -gt "0" ]; then
|
||||
echo "Detected uncommitted changes after build. See status below:"
|
||||
git diff --ignore-space-at-eol --text dist/ ':(exclude)*.js.map'
|
||||
exit 1
|
||||
git config user.name "github-actions[bot]"
|
||||
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git add dist/
|
||||
git commit -m "chore(build): update dist"
|
||||
git push
|
||||
fi
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Upload Dist
|
||||
uses: actions/upload-artifact@v3
|
||||
|
@ -91,7 +97,7 @@ jobs:
|
|||
node:
|
||||
- 22
|
||||
pnpm:
|
||||
- 9.10.0
|
||||
- 9.11.0
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
|
@ -158,7 +164,7 @@ jobs:
|
|||
node:
|
||||
- 22
|
||||
pnpm:
|
||||
- 9.10.0
|
||||
- 9.11.0
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
|
@ -239,7 +245,7 @@ jobs:
|
|||
node:
|
||||
- 22
|
||||
pnpm:
|
||||
- 9.10.0
|
||||
- 9.11.0
|
||||
container:
|
||||
- { file: "ubuntu-llvm.dockerfile", image: "setup-cpp-ubuntu-llvm", tag: "22.04-0.43.0" }
|
||||
- { file: "fedora-llvm.dockerfile", image: "setup-cpp-fedora-llvm", tag: "40-0.43.0" }
|
||||
|
|
|
@ -1,2 +1,5 @@
|
|||
import { buildTerserOptions } from "terser-config-atomic/dist/builder.js"
|
||||
export default buildTerserOptions(process.env.NODE_ENV, undefined, true)
|
||||
const config = buildTerserOptions(process.env.NODE_ENV, undefined, true)
|
||||
config.compress.unsafe_math = false
|
||||
|
||||
export default config
|
||||
|
|
|
@ -78,6 +78,7 @@ words:
|
|||
- nodistro
|
||||
- NOPASSWD
|
||||
- noprogressbar
|
||||
- noreply
|
||||
- nothrow
|
||||
- npmrc
|
||||
- Opencppcoverage
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
32
package.json
32
package.json
|
@ -30,11 +30,12 @@
|
|||
"build.vite": "cross-env NODE_ENV=production vite build",
|
||||
"build.vite.legacy": "cross-env NODE_ENV=production TARGET=legacy vite build",
|
||||
"build.json": "shx cp ./src/*/*.json ./dist/legacy/ && shx cp ./dist/legacy/*.json ./dist/modern && minijson --file ./dist/**/*.json",
|
||||
"bump": "ncu -u -x numerous,execa,prettier,@types/node,eslint,@types/eslint && pnpm update && pnpx typesync && pnpm run clean",
|
||||
"bump": "ncu -u -x execa,numerous,eslint,@types/eslint && pnpm update && pnpx typesync && pnpm run clean",
|
||||
"clean": "shx rm -rf ./dist ./packages/*/dist ./exe ./.parcel-cache && shx mkdir -p ./dist/legacy ./dist/modern ./dist/modern ",
|
||||
"dev.vite": "cross-env NODE_ENV=development vite build --watch",
|
||||
"dev.packages": "turbo dev",
|
||||
"dev": "run-p build.json dev.packages dev.vite",
|
||||
"dev.root.tsc": "tsc --noEmit --pretty --watch",
|
||||
"dev": "run-p build.json dev.packages dev.root.tsc dev.vite",
|
||||
"docs": "shx rm -rf packages/*/README.md && pnpm -r exec readme --path ../../dev/readme/template.md -y && pnpm -r exec ts-readme",
|
||||
"format": "run-s lint.dprint",
|
||||
"lint": "turbo lint && run-p --aggregate-output --continue-on-error lint.**",
|
||||
|
@ -54,6 +55,7 @@
|
|||
"build.docker-ci": "node ./dev/docker/ci/docker-ci.mjs"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@actions/cache": "^3.2.4",
|
||||
"@actions/core": "^1.10.1",
|
||||
"@actions/exec": "^1.1.1",
|
||||
"@actions/http-client": "^2.2.3",
|
||||
|
@ -61,7 +63,7 @@
|
|||
"@actions/tool-cache": "^2.0.1",
|
||||
"@aminya/minijson": "1.1.0",
|
||||
"@babel/core": "^7.25.2",
|
||||
"@biomejs/biome": "^1.9.1",
|
||||
"@biomejs/biome": "^1.9.2",
|
||||
"@iarna/toml": "^2.2.5",
|
||||
"@liuli-util/vite-plugin-node": "^0.9.0",
|
||||
"@octokit/core": "^6.1.2",
|
||||
|
@ -75,11 +77,11 @@
|
|||
"@types/babel__core": "~7.20.5",
|
||||
"@types/cross-spawn": "^6.0.6",
|
||||
"@types/escape-quotes": "~1.0.0",
|
||||
"@types/eslint": "^9.0.0",
|
||||
"@types/eslint": "^9.6.1",
|
||||
"@types/iarna__toml": "~2.0.5",
|
||||
"@types/jest": "^29.5.13",
|
||||
"@types/memoizee": "^0.4.11",
|
||||
"@types/node": "^22.0.0",
|
||||
"@types/node": "^22.5.5",
|
||||
"@types/semver": "^7.5.8",
|
||||
"@types/which": "^3.0.4",
|
||||
"@upleveled/babel-plugin-remove-node-prefix": "github:aminya/babel-plugin-remove-node-prefix#02526f866c4f57d3a097590942dc0e700fb3eb15",
|
||||
|
@ -89,17 +91,17 @@
|
|||
"ci-log": "workspace:*",
|
||||
"cross-env": "7.0.3",
|
||||
"cross-spawn": "^7.0.3",
|
||||
"cspell": "^8.14.3",
|
||||
"cspell": "^8.14.4",
|
||||
"diagnostics_channel": "^1.1.0",
|
||||
"dprint": "^0.47.2",
|
||||
"envosman": "workspace:*",
|
||||
"escape-path-with-spaces": "^1.0.2",
|
||||
"escape-quotes": "^1.0.2",
|
||||
"escape-string-regexp": "^5.0.0",
|
||||
"eslint": "^9.0.0",
|
||||
"eslint": "8.57.1",
|
||||
"eslint-config-atomic": "^1.22.1",
|
||||
"exec-powershell": "workspace:*",
|
||||
"execa": "^9.0.0",
|
||||
"execa": "7.2.0",
|
||||
"is-url-online": "^1.5.0",
|
||||
"jest": "^29.7.0",
|
||||
"lefthook": "^1.7.15",
|
||||
|
@ -109,7 +111,7 @@
|
|||
"mri": "^1.2.0",
|
||||
"msvc-dev-cmd": "github:aminya/msvc-dev-cmd#c01f519bd995460228ed3dec4df51df92dc290fd",
|
||||
"node-downloader-helper": "2.1.9",
|
||||
"npm-check-updates": "^17.1.1",
|
||||
"npm-check-updates": "^17.1.2",
|
||||
"npm-run-all2": "^6.2.3",
|
||||
"numerous": "2.0.0",
|
||||
"p-timeout": "^6.1.2",
|
||||
|
@ -119,17 +121,18 @@
|
|||
"prettier-config-atomic": "^4.0.0",
|
||||
"readme-md-generator": "^1.0.0",
|
||||
"retry-as-promised": "^7.0.4",
|
||||
"rollup": "^4.21.3",
|
||||
"rollup": "^4.22.0",
|
||||
"safe-stable-stringify": "^2.5.0",
|
||||
"semver": "7.6.3",
|
||||
"setup-apt": "workspace:*",
|
||||
"setup-brew": "workspace:*",
|
||||
"setup-python": "github:aminya/setup-python#65d7f2d534ac1bc67fcd62888c5f4f3d2cb2b236",
|
||||
"setup-python": "github:aminya/setup-python#9700887",
|
||||
"shx": "0.3.4",
|
||||
"simple-update-notifier": "^2.0.0",
|
||||
"terser": "^5.33.0",
|
||||
"terser-config-atomic": "^1.0.0",
|
||||
"time-delta": "github:aminya/time-delta#d732dbc4fe991ab323cfa9075df8a7988537926e",
|
||||
"time-delta": "github:aminya/time-delta#69d91a4",
|
||||
"timers-browserify": "^2.0.12",
|
||||
"ts-node": "^10.9.2",
|
||||
"ts-readme": "^1.1.3",
|
||||
"turbo": "2.1.2",
|
||||
|
@ -177,13 +180,14 @@
|
|||
"ubuntu-version",
|
||||
"untildify-user",
|
||||
"util.types",
|
||||
"web-streams-polyfill"
|
||||
"web-streams-polyfill",
|
||||
"timers-browserify"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12.x",
|
||||
"pnpm": "^9"
|
||||
},
|
||||
"packageManager": "pnpm@9.10.0",
|
||||
"packageManager": "pnpm@9.11.0",
|
||||
"workspaces": [
|
||||
"packages/*"
|
||||
],
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"@actions/core": "^1.10.1",
|
||||
"@types/node": "^12",
|
||||
"@types/node": "22.5.5",
|
||||
"admina": "^1.0.1",
|
||||
"ci-info": "^4.0.0",
|
||||
"escape-path-with-spaces": "^1.0.2",
|
||||
|
|
|
@ -18,7 +18,7 @@ export function execPowershell(
|
|||
command: string,
|
||||
startupFlags: string[] = ["-NoProfile", "-NoLogo", "-NonInteractive"],
|
||||
execOptions: execa.Options = { stdio: "inherit" },
|
||||
): execa.ExecaChildProcess<string> {
|
||||
) {
|
||||
return execa.execa(getPowerShell(), [...startupFlags, "-c", command], execOptions)
|
||||
}
|
||||
|
||||
|
@ -36,7 +36,7 @@ export function execPowershellSync(
|
|||
command: string,
|
||||
startupFlags: string[] = ["-NoProfile", "-NoLogo", "-NonInteractive"],
|
||||
execOptions: execa.SyncOptions = { stdio: "inherit" },
|
||||
): execa.ExecaSyncReturnValue<string> {
|
||||
) {
|
||||
return execa.execaSync(getPowerShell(), [...startupFlags, "-c", command], execOptions)
|
||||
}
|
||||
|
||||
|
|
|
@ -17,14 +17,14 @@
|
|||
"prepublishOnly": "pnpm run build"
|
||||
},
|
||||
"dependencies": {
|
||||
"@types/node": "^12",
|
||||
"@types/node": "22.5.5",
|
||||
"admina": "^1.0.1",
|
||||
"ci-info": "^4.0.0",
|
||||
"path-exists": "^5.0.0",
|
||||
"ci-log": "workspace:*",
|
||||
"envosman": "workspace:*",
|
||||
"which": "4.0.0",
|
||||
"execa": "^7.2.0",
|
||||
"execa": "^7",
|
||||
"escape-string-regexp": "^5.0.0",
|
||||
"node-downloader-helper": "2.1.9",
|
||||
"memoizee": "^0.4.17"
|
||||
|
|
|
@ -104,7 +104,7 @@ export async function installAptPack(packages: AptPackage[], update = false): Pr
|
|||
})
|
||||
} catch (err) {
|
||||
if (isExecaError(err)) {
|
||||
if (retryErrors.some((error) => err.stderr.includes(error))) {
|
||||
if (retryErrors.some((error) => typeof err.stderr === "string" && err.stderr.includes(error))) {
|
||||
warning(`Failed to install packages ${needToInstall}. Retrying...`)
|
||||
execRootSync(
|
||||
apt,
|
||||
|
|
|
@ -18,11 +18,11 @@
|
|||
"test": "jest --coverage"
|
||||
},
|
||||
"dependencies": {
|
||||
"@types/node": "^12",
|
||||
"@types/node": "22.5.5",
|
||||
"ci-log": "workspace:*",
|
||||
"envosman": "workspace:*",
|
||||
"which": "4.0.0",
|
||||
"execa": "^7.2.0",
|
||||
"execa": "^7",
|
||||
"setup-apt": "workspace:*",
|
||||
"node-downloader-helper": "2.1.9"
|
||||
},
|
||||
|
|
779
pnpm-lock.yaml
779
pnpm-lock.yaml
File diff suppressed because it is too large
Load Diff
|
@ -3,7 +3,7 @@ import { fileURLToPath } from "url"
|
|||
import { GITHUB_ACTIONS } from "ci-info"
|
||||
import { error, info, warning } from "ci-log"
|
||||
import { addEnv, addPath } from "envosman"
|
||||
import { type ExecaReturnValue, execa } from "execa"
|
||||
import { execa } from "execa"
|
||||
import { readdir } from "fs/promises"
|
||||
import { pathExists } from "path-exists"
|
||||
import { addExeExt } from "patha"
|
||||
|
@ -218,20 +218,9 @@ async function setupChocoMingw(version: string, arch: string): Promise<Installat
|
|||
return undefined
|
||||
}
|
||||
|
||||
/** Setup gcc as the compiler */
|
||||
async function activateGcc(givenVersion: string, binDir: string, priority: number = 40) {
|
||||
const promises: Promise<void | ExecaReturnValue<string>>[] = []
|
||||
// Setup gcc as the compiler
|
||||
|
||||
// TODO
|
||||
// const ld = process.env.LD_LIBRARY_PATH ?? ""
|
||||
// const dyld = process.env.DYLD_LIBRARY_PATH ?? ""
|
||||
// promises.push(
|
||||
// addEnv("LD_LIBRARY_PATH", `${installDir}/lib${path.delimiter}${ld}`, rcOptions),
|
||||
// addEnv("DYLD_LIBRARY_PATH", `${installDir}/lib${path.delimiter}${dyld}`, rcOptions),
|
||||
// addEnv("CPATH", `${installDir}/lib/gcc/${majorVersion}/include`, rcOptions),
|
||||
// addEnv("LDFLAGS", `-L${installDir}/lib`, rcOptions),
|
||||
// addEnv("CPPFLAGS", `-I${installDir}/include`, rcOptions),
|
||||
// )
|
||||
const promises: Promise<void>[] = []
|
||||
|
||||
if (process.platform === "win32") {
|
||||
promises.push(
|
||||
|
@ -280,6 +269,17 @@ async function activateGcc(givenVersion: string, binDir: string, priority: numbe
|
|||
|
||||
promises.push(setupMacOSSDK())
|
||||
|
||||
// TODO
|
||||
// const ld = process.env.LD_LIBRARY_PATH ?? ""
|
||||
// const dyld = process.env.DYLD_LIBRARY_PATH ?? ""
|
||||
// promises.push(
|
||||
// addEnv("LD_LIBRARY_PATH", `${installDir}/lib${path.delimiter}${ld}`, rcOptions),
|
||||
// addEnv("DYLD_LIBRARY_PATH", `${installDir}/lib${path.delimiter}${dyld}`, rcOptions),
|
||||
// addEnv("CPATH", `${installDir}/lib/gcc/${majorVersion}/include`, rcOptions),
|
||||
// addEnv("LDFLAGS", `-L${installDir}/lib`, rcOptions),
|
||||
// addEnv("CPPFLAGS", `-I${installDir}/include`, rcOptions),
|
||||
// )
|
||||
|
||||
if (GITHUB_ACTIONS) {
|
||||
await addGccLoggingMatcher()
|
||||
}
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
import { GITHUB_ACTIONS, isCI } from "ci-info"
|
||||
import { error, info, success, warning } from "ci-log"
|
||||
import { finalizeRC } from "envosman"
|
||||
import * as numerous from "numerous"
|
||||
import numerous from "numerous"
|
||||
import numerousLocale from "numerous/locales/en.js"
|
||||
import * as timeDelta from "time-delta"
|
||||
import timeDelta from "time-delta"
|
||||
import timeDeltaLocale from "time-delta/locales/en.js"
|
||||
import { untildifyUser } from "untildify-user"
|
||||
import { checkUpdates } from "./check-updates.js"
|
||||
|
|
|
@ -31,6 +31,7 @@ const viteConfig = defineConfig({
|
|||
"stream/promises": "./src/utils/compat/stream/promises.ts",
|
||||
"stream/web": "web-streams-polyfill/dist/ponyfill.mjs",
|
||||
"util/types": "util.types/index.js",
|
||||
"timers/promises": "timers-browserify",
|
||||
diagnostics_channel: "diagnostics_channel/index.js",
|
||||
}
|
||||
: {}),
|
||||
|
|
Loading…
Reference in New Issue