diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 05dd1f497..0722b5575 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,9 +2,9 @@ name: CI on: push: - branches: [ main ] + branches: [main] pull_request: - branches: [ main ] + branches: [main] workflow_dispatch: jobs: @@ -13,103 +13,103 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 10 steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version-file: .tool-versions - cache: npm - - run: npm ci - - run: npm run lint-biome && git diff --exit-code + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version-file: .tool-versions + cache: npm + - run: npm ci + - run: npm run lint-biome && git diff --exit-code lint-ts: name: Lint TypeScript runs-on: ubuntu-latest timeout-minutes: 10 steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version-file: .tool-versions - cache: npm - - run: npm ci - - run: npm run lint-ts + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version-file: .tool-versions + cache: npm + - run: npm ci + - run: npm run lint-ts lint-secretlint: name: Lint Secretlint runs-on: ubuntu-latest timeout-minutes: 10 steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version-file: .tool-versions - cache: npm - - run: npm ci - - run: npm run lint-secretlint + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version-file: .tool-versions + cache: npm + - run: npm ci + - run: npm run lint-secretlint lint-website-client: name: Lint Website Client runs-on: ubuntu-latest timeout-minutes: 10 steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version-file: .tool-versions - cache: npm - - name: Install website client dependencies - run: | - cd website/client - npm ci - - name: Lint website client - run: | - cd website/client - npm run lint + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version-file: .tool-versions + cache: npm + - name: Install website client dependencies + run: | + cd website/client + npm ci + - name: Lint website client + run: | + cd website/client + npm run lint lint-website-server: name: Lint Website Server runs-on: ubuntu-latest timeout-minutes: 10 steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version-file: .tool-versions - cache: npm - - name: Install website server dependencies - run: | - cd website/server - npm ci - - name: Lint website server - run: | - cd website/server - npm run lint + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version-file: .tool-versions + cache: npm + - name: Install website server dependencies + run: | + cd website/server + npm ci + - name: Lint website server + run: | + cd website/server + npm run lint lint-browser: name: Lint Browser Extension runs-on: ubuntu-latest timeout-minutes: 10 steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version-file: .tool-versions - cache: npm - - name: Install browser extension dependencies - run: | - cd browser - npm ci - - name: Lint browser extension - run: | - cd browser - npm run lint + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version-file: .tool-versions + cache: npm + - name: Install browser extension dependencies + run: | + cd browser + npm ci + - name: Lint browser extension + run: | + cd browser + npm run lint lint-action: name: Lint GitHub Actions runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: docker://rhysd/actionlint:latest + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: rhysd/actionlint@4e683ab8014a63fafa117492a0c6053758e6d593 # ratchet:rhysd/actionlint@v1.7.3 with: args: "-color" @@ -117,8 +117,8 @@ jobs: name: Check typos runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: crate-ci/typos@master + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: crate-ci/typos@022bdbe8ce21237ca3a95659bd6b8aef48389b9f # ratchet:crate-ci/typos@master test: name: Test @@ -128,58 +128,58 @@ jobs: node-version: [18.0.0, 18.x, 19.x, 20.x, 21.x, 22.x, 23.x, 24.x] runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v4 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v4 - with: - node-version: ${{ matrix.node-version }} - - run: npm ci - - run: npm run test --reporter=verbose - env: - CI_OS: ${{ runner.os }} + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + - run: npm ci + - run: npm run test --reporter=verbose + env: + CI_OS: ${{ runner.os }} test-coverage: name: Test coverage runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version-file: .tool-versions - cache: npm - - run: npm ci - - run: npm run test-coverage -- --reporter=verbose - env: - CI_OS: ${{ runner.os }} - - uses: actions/upload-artifact@v4 - with: - name: test-coverage - path: coverage/ - - uses: codecov/codecov-action@v5 - with: - fail_ci_if_error: true - directory: ./coverage - env: - CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version-file: .tool-versions + cache: npm + - run: npm ci + - run: npm run test-coverage -- --reporter=verbose + env: + CI_OS: ${{ runner.os }} + - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # ratchet:actions/upload-artifact@v4 + with: + name: test-coverage + path: coverage/ + - uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # ratchet:codecov/codecov-action@v5 + with: + fail_ci_if_error: true + directory: ./coverage + env: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} test-browser: name: Test Browser Extension runs-on: ubuntu-latest timeout-minutes: 10 steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version-file: .tool-versions - cache: npm - - name: Install browser extension dependencies - run: | - cd browser - npm ci - - name: Test browser extension - run: | - cd browser - npm run test + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version-file: .tool-versions + cache: npm + - name: Install browser extension dependencies + run: | + cd browser + npm ci + - name: Test browser extension + run: | + cd browser + npm run test build-and-run: name: Build and run @@ -189,20 +189,20 @@ jobs: node-version: [18.0.0, 18.x, 19.x, 20.x, 21.x, 22.x, 23.x, 24.x] runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v4 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v4 - with: - node-version: ${{ matrix.node-version }} - - run: npm ci - - run: npm run build - - name: Install only production dependencies - run: npm ci --omit=dev - - run: node bin/repomix.cjs - - run: node bin/repomix.cjs --version - - run: node bin/repomix.cjs --help - - name: Upload build artifact - uses: actions/upload-artifact@v4 - with: - name: repomix-output-${{ matrix.os }}-${{ matrix.node-version }}.txt - path: repomix-output.txt + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # ratchet:actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + - run: npm ci + - run: npm run build + - name: Install only production dependencies + run: npm ci --omit=dev + - run: node bin/repomix.cjs + - run: node bin/repomix.cjs --version + - run: node bin/repomix.cjs --help + - name: Upload build artifact + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # ratchet:actions/upload-artifact@v4 + with: + name: repomix-output-${{ matrix.os }}-${{ matrix.node-version }}.txt + path: repomix-output.txt diff --git a/.github/workflows/claude.yml b/.github/workflows/claude.yml index bcd8ef593..cc3600bff 100644 --- a/.github/workflows/claude.yml +++ b/.github/workflows/claude.yml @@ -25,13 +25,13 @@ jobs: id-token: write steps: - name: Checkout repository - uses: actions/checkout@v4 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 with: fetch-depth: 1 - name: Run Claude Code id: claude - uses: anthropics/claude-code-action@beta + uses: anthropics/claude-code-action@41dd0aa695a06b94f18ce26fd851bfd6ed9d8760 # ratchet:anthropics/claude-code-action@beta with: anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index d9c517480..565de2e67 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -2,9 +2,9 @@ name: "CodeQL" on: push: - branches: [ "main" ] + branches: ["main"] pull_request: - branches: [ "main" ] + branches: ["main"] schedule: - cron: '25 11 * * 0' @@ -22,30 +22,30 @@ jobs: fail-fast: false matrix: include: - - language: javascript-typescript - build-mode: none + - language: javascript-typescript + build-mode: none steps: - - name: Checkout repository - uses: actions/checkout@v4 + - name: Checkout repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v3 - with: - languages: ${{ matrix.language }} - build-mode: ${{ matrix.build-mode }} + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # ratchet:github/codeql-action/init@v3 + with: + languages: ${{ matrix.language }} + build-mode: ${{ matrix.build-mode }} - - if: matrix.build-mode == 'manual' - shell: bash - run: | - echo 'If you are using a "manual" build mode for one or more of the' \ - 'languages you are analyzing, replace this with the commands to build' \ - 'your code, for example:' - echo ' make bootstrap' - echo ' make release' - exit 1 + - if: matrix.build-mode == 'manual' + shell: bash + run: | + echo 'If you are using a "manual" build mode for one or more of the' \ + 'languages you are analyzing, replace this with the commands to build' \ + 'your code, for example:' + echo ' make bootstrap' + echo ' make release' + exit 1 - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v3 - with: - category: "/language:${{matrix.language}}" + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # ratchet:github/codeql-action/analyze@v3 + with: + category: "/language:${{matrix.language}}" diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index ee31d0251..581995ba2 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -27,11 +27,11 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 - name: Docker metadata id: meta - uses: docker/metadata-action@v5 + uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # ratchet:docker/metadata-action@v5 with: images: | ghcr.io/yamadashy/repomix @@ -44,21 +44,21 @@ jobs: type=raw,value=latest,enable=${{ github.event_name == 'release' }} - name: Set up QEMU - uses: docker/setup-qemu-action@v3 + uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # ratchet:docker/setup-qemu-action@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 + uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # ratchet:docker/setup-buildx-action@v3 - name: Login to GitHub Container Registry if: github.event_name != 'pull_request' - uses: docker/login-action@v3 + uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # ratchet:docker/login-action@v3 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and Publish Docker Image - uses: docker/build-push-action@v6 + uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # ratchet:docker/build-push-action@v6 with: context: . push: ${{ github.event_name != 'pull_request' }} diff --git a/.github/workflows/homebrew.yml b/.github/workflows/homebrew.yml index 30069848d..6a53861f9 100644 --- a/.github/workflows/homebrew.yml +++ b/.github/workflows/homebrew.yml @@ -10,15 +10,15 @@ jobs: runs-on: macos-latest steps: - name: Set up Homebrew - uses: Homebrew/actions/setup-homebrew@master + uses: Homebrew/actions/setup-homebrew@74f356bb4e3aee7d859d8e514ed57922710e0995 # ratchet:Homebrew/actions/setup-homebrew@master with: test-bot: false - name: Configure Git user - uses: Homebrew/actions/git-user-config@master + uses: Homebrew/actions/git-user-config@74f356bb4e3aee7d859d8e514ed57922710e0995 # ratchet:Homebrew/actions/git-user-config@master - name: Bump packages - uses: Homebrew/actions/bump-packages@master + uses: Homebrew/actions/bump-packages@74f356bb4e3aee7d859d8e514ed57922710e0995 # ratchet:Homebrew/actions/bump-packages@master with: token: ${{ secrets.COMMITTER_TOKEN }} formulae: repomix diff --git a/.github/workflows/pack-repository.yml b/.github/workflows/pack-repository.yml index 0aeaa51e8..958a30095 100644 --- a/.github/workflows/pack-repository.yml +++ b/.github/workflows/pack-repository.yml @@ -3,24 +3,24 @@ name: Pack repository with Repomix on: workflow_dispatch: push: - branches: [ main ] + branches: [main] pull_request: - branches: [ main ] + branches: [main] jobs: pack-repo: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 - name: Pack repository with Repomix - uses: yamadashy/repomix/.github/actions/repomix@main + uses: yamadashy/repomix/.github/actions/repomix@0d0f20ec55f4703865753b2c85d6e164eaa4dad8 # ratchet:yamadashy/repomix/.github/actions/repomix@main with: output: repomix-output.xml - name: Upload Repomix output - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # ratchet:actions/upload-artifact@v4 with: name: repomix-output.xml path: repomix-output.xml diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index f519bdac0..d0399dbaf 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -21,7 +21,7 @@ jobs: - node-version: 22 test-case: "full" steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4 - name: Run Repomix Action (Minimal) if: matrix['test-case'] == 'minimal' @@ -50,7 +50,7 @@ jobs: additional-args: "--no-file-summary" - name: Upload result - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # ratchet:actions/upload-artifact@v4 with: name: repomix-output-node${{ matrix.node-version }} path: repomix-*-output.txt