Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 29 additions & 39 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@ on:
- master
pull_request:

env:
PKG_CACHE_PATH: .pkg

jobs:

yamllint:
Expand All @@ -25,56 +22,49 @@ jobs:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: '24'
cache: 'npm'
- uses: actions/[email protected]

- uses: oven-sh/setup-bun@v2
with:
path: ${{ env.PKG_CACHE_PATH }}
key: pkg-cache-${{ matrix.node-version }}
- run: npm ci
- run: npm run esbuild
- run: npm run pkg-linux
- run: node bin/index.cjs --version
bun-version: latest
- run: bun install --frozen-lockfile
- run: bun run build:linux
- run: bin/linux/gitlab-ci-local --version
- run: bin/linux/gitlab-ci-local --help

eslint:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
- uses: oven-sh/setup-bun@v2
with:
node-version: '24'
cache: 'npm'
- run: npm ci
- run: npm run lint
bun-version: latest
- run: bun install --frozen-lockfile
- run: bun run lint

unused-deps:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
- uses: oven-sh/setup-bun@v2
with:
node-version: '24'
cache: 'npm'
- run: npm ci
- run: npx depcheck --ignores depcheck
bun-version: latest
- run: bun install --frozen-lockfile
- run: bunx depcheck --ignores depcheck

jest:
runs-on: ubuntu-24.04
steps:
- uses: actions/[email protected]
with:
fetch-depth: 0
- uses: actions/setup-[email protected]
- uses: oven-sh/setup-bun@v2
with:
node-version: '24'
cache: 'npm'
- run: npm ci
bun-version: latest
- run: bun install --frozen-lockfile

- name: Run Tests
run: npm run coverage
run: bun run coverage

- uses: sonarsource/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand All @@ -90,16 +80,16 @@ jobs:
security-events: write

steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Checkout repository
uses: actions/checkout@v6

- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
languages: 'typescript'
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
languages: 'typescript'

- name: Autobuild
uses: github/codeql-action/autobuild@v4
- name: Autobuild
uses: github/codeql-action/autobuild@v4

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
693 changes: 693 additions & 0 deletions bun.lock

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions bunfig.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[test]
preload = ["./tests/setup.ts"]
timeout = 60000
32 changes: 15 additions & 17 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import eslint from "@eslint/js";
import tseslint from "typescript-eslint";
import stylisticTs from "@stylistic/eslint-plugin-ts";
import stylisticJs from "@stylistic/eslint-plugin-js";
import stylistic from "@stylistic/eslint-plugin";

export default tseslint.config(
eslint.configs.recommended,
Expand All @@ -15,33 +14,32 @@ export default tseslint.config(
},
{
plugins: {
"@stylistic/ts": stylisticTs,
"@stylistic/js": stylisticJs,
"@stylistic": stylistic,
},
rules: {
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/explicit-module-boundary-types": "off",
"@stylistic/ts/semi": "error",
"@stylistic/ts/quotes": "error",
"@stylistic/ts/comma-dangle": [
"@stylistic/semi": "error",
"@stylistic/quotes": "error",
"@stylistic/comma-dangle": [
"error",
"always-multiline",
],
"@stylistic/ts/object-curly-spacing": "error",
"@stylistic/ts/space-before-function-paren": "error",
"@stylistic/ts/space-before-blocks": "error",
"@stylistic/ts/space-infix-ops": "error",
"@stylistic/ts/member-delimiter-style": "error",
"@stylistic/ts/indent": [
"@stylistic/object-curly-spacing": "error",
"@stylistic/space-before-function-paren": "error",
"@stylistic/space-before-blocks": "error",
"@stylistic/space-infix-ops": "error",
"@stylistic/member-delimiter-style": "error",
"@stylistic/indent": [
"error",
4,
],
"@stylistic/js/operator-linebreak": ["error", "after"],
"@stylistic/ts/type-annotation-spacing": [ "error" ],
"@stylistic/ts/func-call-spacing": [
"@stylistic/operator-linebreak": ["error", "after"],
"@stylistic/type-annotation-spacing": [ "error" ],
"@stylistic/func-call-spacing": [
"error",
],
"@stylistic/ts/comma-spacing": [
"@stylistic/comma-spacing": [
"error",
],
"keyword-spacing": "error",
Expand Down
Loading
Loading