diff --git a/.devcontainer/devcontainer-lock.json b/.devcontainer/devcontainer-lock.json new file mode 100644 index 0000000..060f32c --- /dev/null +++ b/.devcontainer/devcontainer-lock.json @@ -0,0 +1,19 @@ +{ + "features": { + "ghcr.io/devcontainers/features/dotnet:2": { + "version": "2.5.0", + "resolved": "ghcr.io/devcontainers/features/dotnet@sha256:0fc16547ed4db6d7ff2a9f5981d2b93eb314e568affb9958029ad794f1f9a093", + "integrity": "sha256:0fc16547ed4db6d7ff2a9f5981d2b93eb314e568affb9958029ad794f1f9a093" + }, + "ghcr.io/devcontainers/features/go:1": { + "version": "1.3.4", + "resolved": "ghcr.io/devcontainers/features/go@sha256:d85e921f91b41340055bb12b325d9d551170ed04b3b832e33530bf42f167c032", + "integrity": "sha256:d85e921f91b41340055bb12b325d9d551170ed04b3b832e33530bf42f167c032" + }, + "ghcr.io/devcontainers/features/node:2": { + "version": "2.1.0", + "resolved": "ghcr.io/devcontainers/features/node@sha256:586c9a6f7dd40bd3ba2cd41e7f2f88dcc31fbe5d1442afcbf07ffbc66b686857", + "integrity": "sha256:586c9a6f7dd40bd3ba2cd41e7f2f88dcc31fbe5d1442afcbf07ffbc66b686857" + } + } +} diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000..dd47882 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,38 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the +// README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu +{ + "name": "Ubuntu", + // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile + "image": "mcr.microsoft.com/devcontainers/base:resolute", + "features": { + "ghcr.io/devcontainers/features/dotnet:2": { + "tabCompletions": true, + "version": "latest" + }, + "ghcr.io/devcontainers/features/go:1": { + "version": "latest" + }, + "ghcr.io/devcontainers/features/node:2": { + "nodeGypDependencies": true, + "version": "lts", + "npmVersion": "lts", + "pnpmVersion": "latest", + "nvmVersion": "latest" + } + } + + // Features to add to the dev container. More info: https://containers.dev/features. + // "features": {}, + + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [], + + // Use 'postCreateCommand' to run commands after the container is created. + // "postCreateCommand": "uname -a", + + // Configure tool-specific properties. + // "customizations": {}, + + // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. + // "remoteUser": "root" +} diff --git a/.github/workflows/articles-changed-detection.yaml b/.github/workflows/articles-changed-detection.yaml index 0659e75..a9a78f5 100644 --- a/.github/workflows/articles-changed-detection.yaml +++ b/.github/workflows/articles-changed-detection.yaml @@ -3,21 +3,25 @@ name: Articles - Changed detection sample on: - # push: - # branches: [ "main" ] - # paths: - # - "src/**" pull_request: paths: - - "articles/detections/**" + # Since variables cannot be used in `on.paths`, this part must be hardcoded. + - "articles/changed-detenctions/**" + - ".github/workflows/articles-changed-detection.yaml" workflow_dispatch: permissions: {} - +defaults: + run: + shell: bash + concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true +env: + TARGET_BASE_DIR: "articles/changed-detenctions" + jobs: detect-changes: runs-on: ubuntu-latest @@ -42,7 +46,7 @@ jobs: matrix: true dir_names: true dir_names_max_depth: 3 # path/to/xxx - files: articles/detections/** + files: ${{ env.TARGET_BASE_DIR }}/** # Finalize the array and pass it to the output - name: Set matrix output @@ -50,7 +54,7 @@ jobs: run: | # For manual execution (workflow_dispatch), target all projects under path/to/ if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then - PROJECTS=$(ls -d articles/detections/*/ | cut -d'/' -f3 | jq -R -s -c 'split("\n") | map(select(length > 0))') + PROJECTS=$(ls -d $TARGET_BASE_DIR/*/ | cut -d'/' -f3 | jq -R -s -c 'split("\n") | map(select(length > 0))') echo "projects=$PROJECTS" >> $GITHUB_OUTPUT else # json array returned from the plugin (e.g. ["path/to/AAA", "path/to/BBB"]) @@ -92,7 +96,7 @@ jobs: - name: Find Target and Define Assets Path run: | # 1. First, search for the target - FIND_PATH="articles/detections/${{ matrix.project }}" + FIND_PATH="$TARGET_BASE_DIR/${{ matrix.project }}" TARGET=$(find "$FIND_PATH" -maxdepth 2 \( -name "*.slnx" -o -name "*.sln" -o -name "*.md" \) | head -n 1) if [ -z "$TARGET" ]; then @@ -120,7 +124,7 @@ jobs: - name: Run Test Assets Scripts (If exists) run: | - SCRIPT_PATH="articles/detections/${{ matrix.project }}/scripts/generate-test-assets.sh" + SCRIPT_PATH="$TARGET_BASE_DIR/${{ matrix.project }}/scripts/generate-test-assets.sh" if [ -f "$SCRIPT_PATH" ]; then echo "Found asset generation script. Running..." chmod +x "$SCRIPT_PATH" diff --git a/.github/workflows/blank.yml b/.github/workflows/blank.yml index 27abe40..112cd34 100644 --- a/.github/workflows/blank.yml +++ b/.github/workflows/blank.yml @@ -1,6 +1,6 @@ # This is a basic workflow to help you get started with Actions. --- -name: CI +name: Blank # Controls when the workflow will run on: @@ -9,12 +9,22 @@ on: # branches: [ "main" ] # pull_request: # branches: [ "main" ] - # Allows you to run this workflow manually from the Actions tab workflow_dispatch: +# Disable all permissions at workflow level permissions: {} +# Picking up Bash pipe errors in default shell +defaults: + run: + shell: bash + +#Auto-cancel old workflows with Concurrency +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "build" @@ -27,7 +37,7 @@ jobs: # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 # Runs a single command using the runners shell - name: Run a one-line script diff --git a/.github/workflows/chapter-1-go.yaml b/.github/workflows/chapter-1-go.yaml new file mode 100644 index 0000000..fee39e0 --- /dev/null +++ b/.github/workflows/chapter-1-go.yaml @@ -0,0 +1,63 @@ +# Chapter 1 Hello World、ワークフローの定義ファイルの書き方. +--- +name: Chapter 1 - Hello World (Go Test) + +on: + # Events + # - https://docs.github.com/ja/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#issue_comment + + # コミットのプッシュでワークフローをトリガーする設定 + push: + branches: + - main + paths: + - "./chapters/go/go.mod" + - "./chapters/go/go.sum" + - "./chapters/go/*.go" + - ".github/workflows/chapter-1-go.yaml" + + # issusのコメントでワークフローをトリガーする設定 + issue_comment: + types: [created, deleted] + + # 指定した時間にワークフローをトリガーする設定 + # schedule: + # - cron: "0 9 1 * *" # At 09:00 on day-of-month 1. + + # 手動でワークフローをトリガーする設定 + workflow_dispatch: + +permissions: {} +defaults: + run: + shell: bash + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +# job は同じランナーで実行されるステップの集合体です。 +jobs: + build: + # ランナーの指定 + runs-on: ubuntu-latest + timeout-minutes: 5 + permissions: + contents: read + defaults: + run: + working-directory: ./chapters/go/ + + # steps は job の中で実行されるタスクの集合体です。 + steps: + # 複雑な処理や頻繁に使用する処理は、アクションを定義して使用することができます。 + - uses: actions/checkout@v7 + + - name: Set up Go + uses: actions/setup-go@v7 + with: + go-version: "1.26.5" + cache: false + + - name: Build + run: go build -v . diff --git a/.github/workflows/ci.yaml b/.github/workflows/chapter-2-1-ci.yaml similarity index 63% rename from .github/workflows/ci.yaml rename to .github/workflows/chapter-2-1-ci.yaml index 6d0f34b..e302dbe 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/chapter-2-1-ci.yaml @@ -1,15 +1,16 @@ # Chapter 2 プルリクエスト駆動でCIを実現する. --- -name: Chapter 2 - CI +name: Chapter 2 (1) - CI on: pull_request: branches: - main paths: - - "go.mod" - - "go.sum" - - "**.go" + - "./chapters/go/go.mod" + - "./chapters/go/go.sum" + - "./chapters/go/*.go" + - ".github/workflows/chapter-2-1-ci.yaml" workflow_dispatch: permissions: {} @@ -17,19 +18,28 @@ defaults: run: shell: bash +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: ci: name: ci runs-on: ubuntu-latest permissions: contents: read + defaults: + run: + working-directory: ./chapters/go/ + steps: - name: チェックアウトする - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Go の環境をセットアップする - uses: actions/setup-go@v5 + uses: actions/setup-go@v7 with: - go-version: "1.23.1" + go-version: "1.26.5" + - name: フォーマットを実行する # フォーマット違反時にステップを失敗させる run: test -z "$(gofmt -l .)" diff --git a/.github/workflows/cd.yaml b/.github/workflows/chapter-2-2-cd.yaml similarity index 52% rename from .github/workflows/cd.yaml rename to .github/workflows/chapter-2-2-cd.yaml index 47a4c58..ecee04c 100644 --- a/.github/workflows/cd.yaml +++ b/.github/workflows/chapter-2-2-cd.yaml @@ -1,21 +1,25 @@ # Chapter 2 マージ駆動でCDを実現する. --- -name: Chapter 2 - CD +name: Chapter 2 (2) - CD on: push: branches: - main paths: - - 'go.mod' - - 'go.sum' - - '**.go' + - "./chapters/go/go.mod" + - "./chapters/go/go.sum" + - "./chapters/go/*.go" workflow_dispatch: permissions: {} defaults: run: shell: bash + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: cd: @@ -25,19 +29,19 @@ jobs: contents: read packages: write steps: - - uses: actions/checkout@v4 - # - name: Container registory に認証する - # run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin + - uses: actions/checkout@v7 + - name: Container registory に認証する + run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin - name: Container registory に認証する uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - # - name: Docker ビルドする - # run: docker build -t ghcr.io/${{ github.repository }}:latest . - # - name: Docker イメージをプッシュする - # run: docker push ghcr.io/${{ github.repository }}:latest + - name: Docker ビルドする + run: docker build -t ghcr.io/${{ github.repository }}:latest . + - name: Docker イメージをプッシュする + run: docker push ghcr.io/${{ github.repository }}:latest - name: Docker をビルドおよびプッシュする uses: docker/build-push-action@v5 with: diff --git a/.github/workflows/context.yaml b/.github/workflows/chapter-3-1-context.yaml similarity index 96% rename from .github/workflows/context.yaml rename to .github/workflows/chapter-3-1-context.yaml index ad81823..22fbe6b 100644 --- a/.github/workflows/context.yaml +++ b/.github/workflows/chapter-3-1-context.yaml @@ -1,6 +1,6 @@ # Chapter 3 ワークフロー内で利用可能な値(コンテキスト). --- -name: Chapter 3 - actions/context +name: Chapter 3 (1) - actions/context on: pull_request: @@ -43,7 +43,7 @@ jobs: RUNNER_CONTEXT: ${{ toJson(runner) }} run: echo "$RUNNER_CONTEXT" - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 id: checkout - name: actions/checkout のステータスを表示 run: echo "${{ steps.checkout.conclusion }}" diff --git a/.github/workflows/artifacts.yaml b/.github/workflows/chapter-3-2-artifacts.yaml similarity index 91% rename from .github/workflows/artifacts.yaml rename to .github/workflows/chapter-3-2-artifacts.yaml index 1301e81..cb56777 100644 --- a/.github/workflows/artifacts.yaml +++ b/.github/workflows/chapter-3-2-artifacts.yaml @@ -1,6 +1,6 @@ # Chapter 3 ジョブの成果物の保存、次のジョブへの受け渡し. --- -name: Chapter 3 - actions/artifacts +name: Chapter 3 (2) - actions/artifacts on: pull_request: @@ -19,7 +19,7 @@ jobs: permissions: contents: read steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: ビルド(ダミー) run: | date > dummy.txt @@ -37,7 +37,7 @@ jobs: permissions: contents: write # gh release upload に必要 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: 成果物のダウンロード uses: actions/download-artifact@v4 with: diff --git a/.github/workflows/control-flow.yaml b/.github/workflows/chapter-3-3-control-flow.yaml similarity index 96% rename from .github/workflows/control-flow.yaml rename to .github/workflows/chapter-3-3-control-flow.yaml index 06b0cc7..b77e376 100644 --- a/.github/workflows/control-flow.yaml +++ b/.github/workflows/chapter-3-3-control-flow.yaml @@ -1,6 +1,6 @@ # Chapter 3 ジョブとステップの実行制御. --- -name: Chapter 3 - Control Flow +name: Chapter 3 (3) - Control Flow on: # pull_request: diff --git a/.github/workflows/cache.yaml b/.github/workflows/chapter-3-4-cache.yaml similarity index 92% rename from .github/workflows/cache.yaml rename to .github/workflows/chapter-3-4-cache.yaml index bb9c868..98a085f 100644 --- a/.github/workflows/cache.yaml +++ b/.github/workflows/chapter-3-4-cache.yaml @@ -1,6 +1,6 @@ # Chapter 3 キャッシュ活用によるCIの高速化. --- -name: Chapter 3 - Cache +name: Chapter 3 (4) - Cache on: pull_request: @@ -24,7 +24,7 @@ jobs: permissions: contents: read steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: actions/setup-go@v5 with: go-version: "1.23.1" @@ -37,7 +37,7 @@ jobs: permissions: contents: read steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: build-start のキャッシュを再現 uses: actions/cache@v4 with: @@ -55,7 +55,7 @@ jobs: permissions: contents: read steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 # https://github.com/actions/setup-node/blob/v4/docs/advanced-usage.md#caching-packages-data - uses: actions/setup-node@v4 with: @@ -73,7 +73,7 @@ jobs: run: working-directory: ./packages/node steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: pnpm/action-setup@v2 with: version: 9 @@ -95,7 +95,7 @@ jobs: env: NUGET_PACKAGES: ${{ github.workspace }}/.nuget/packages steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: actions/setup-dotnet@v4 with: dotnet-version: "8.x" diff --git a/.github/workflows/trigger.yaml b/.github/workflows/chapter-3-5-trigger.yaml similarity index 96% rename from .github/workflows/trigger.yaml rename to .github/workflows/chapter-3-5-trigger.yaml index f5e25db..72efe85 100644 --- a/.github/workflows/trigger.yaml +++ b/.github/workflows/chapter-3-5-trigger.yaml @@ -1,6 +1,6 @@ # Chapter 3 さまざまなワークフロートリガー --- -name: Chapter 3 - Work flow trigger +name: Chapter 3 (5) - Work flow trigger on: # https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows diff --git a/.github/workflows/permissions.yaml b/.github/workflows/chapter-3-6-permissions.yaml similarity index 89% rename from .github/workflows/permissions.yaml rename to .github/workflows/chapter-3-6-permissions.yaml index 8ebd1de..a62c640 100644 --- a/.github/workflows/permissions.yaml +++ b/.github/workflows/chapter-3-6-permissions.yaml @@ -1,5 +1,6 @@ # Chapter 3 GitHub Actions の権限について. -name: Chapter 3 - Permissions +--- +name: Chapter 3 (6) - Permissions on: pull_request: @@ -16,7 +17,7 @@ jobs: contents: read steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Github CLI run: gh auth status env: diff --git a/.github/workflows/containers.yaml b/.github/workflows/chapter-4-1-containers.yaml similarity index 94% rename from .github/workflows/containers.yaml rename to .github/workflows/chapter-4-1-containers.yaml index 139854c..2a47cd6 100644 --- a/.github/workflows/containers.yaml +++ b/.github/workflows/chapter-4-1-containers.yaml @@ -1,6 +1,6 @@ # Chapter 4 ジョブによるコンテナの利用. --- -name: Chapter 4 - Containers +name: Chapter 4 (1) - Containers on: pull_request: @@ -37,7 +37,7 @@ jobs: --health-timeout 5s --health-retries 5 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Connect postgres # ERROR: column d.daticulocale does not exist # This occurs when running "psql \l" from a v16 client to a v17 server. diff --git a/.github/workflows/matrix.yaml b/.github/workflows/chapter-4-2-matrix.yaml similarity index 90% rename from .github/workflows/matrix.yaml rename to .github/workflows/chapter-4-2-matrix.yaml index 486be37..151ad77 100644 --- a/.github/workflows/matrix.yaml +++ b/.github/workflows/chapter-4-2-matrix.yaml @@ -1,6 +1,6 @@ # Chapter 4 matrix strategy によるジョブ実行の応用. --- -name: Chapter 4 - Matrix strategy +name: Chapter 4 (2) - Matrix strategy on: pull_request: @@ -23,7 +23,7 @@ jobs: os: [ubuntu-latest, windows-latest, macos-latest] steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Ser up Go ${{ matrix.go-version }} uses: actions/setup-go@v5 with: diff --git a/.github/workflows/matrix-use-case1.yaml b/.github/workflows/chapter-4-2-matrix1-dividing.yaml similarity index 100% rename from .github/workflows/matrix-use-case1.yaml rename to .github/workflows/chapter-4-2-matrix1-dividing.yaml diff --git a/.github/workflows/matrix-use-case2.yaml b/.github/workflows/chapter-4-2-matrix2-dynamic.yaml similarity index 100% rename from .github/workflows/matrix-use-case2.yaml rename to .github/workflows/chapter-4-2-matrix2-dynamic.yaml diff --git a/.github/workflows/cache-restore.yaml b/.github/workflows/chapter-4-3-cache-restore.yaml similarity index 97% rename from .github/workflows/cache-restore.yaml rename to .github/workflows/chapter-4-3-cache-restore.yaml index 60aa807..d41738f 100644 --- a/.github/workflows/cache-restore.yaml +++ b/.github/workflows/chapter-4-3-cache-restore.yaml @@ -17,7 +17,7 @@ jobs: contents: read timeout-minutes: 5 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: actions/cache/restore@v4 with: path: | diff --git a/.github/workflows/e2e-test.yaml b/.github/workflows/chapter-5-1-e2e-test.yaml similarity index 100% rename from .github/workflows/e2e-test.yaml rename to .github/workflows/chapter-5-1-e2e-test.yaml diff --git a/.github/workflows/reusable-e2e-test.yaml b/.github/workflows/chapter-5-1-reusable-e2e-test.yaml similarity index 96% rename from .github/workflows/reusable-e2e-test.yaml rename to .github/workflows/chapter-5-1-reusable-e2e-test.yaml index bb429d4..896f1f5 100644 --- a/.github/workflows/reusable-e2e-test.yaml +++ b/.github/workflows/chapter-5-1-reusable-e2e-test.yaml @@ -22,7 +22,7 @@ jobs: contents: read timeout-minutes: 5 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: pnpm/action-setup@v2 with: package_json_file: ${{ inputs.working-directory }}/package.json diff --git a/.github/workflows/trigger-test-environment-create.yaml b/.github/workflows/chapter-5-2-timings1-test-environment-create.yaml similarity index 100% rename from .github/workflows/trigger-test-environment-create.yaml rename to .github/workflows/chapter-5-2-timings1-test-environment-create.yaml diff --git a/.github/workflows/trigger-test-environment-update.yaml b/.github/workflows/chapter-5-2-timings2-test-environment-update.yaml similarity index 100% rename from .github/workflows/trigger-test-environment-update.yaml rename to .github/workflows/chapter-5-2-timings2-test-environment-update.yaml diff --git a/.github/workflows/trigger-test-environment-destroy.yaml b/.github/workflows/chapter-5-2-timings3-test-environment-destroy.yaml similarity index 100% rename from .github/workflows/trigger-test-environment-destroy.yaml rename to .github/workflows/chapter-5-2-timings3-test-environment-destroy.yaml diff --git a/.github/workflows/skips-if-no-changes-detected.yaml b/.github/workflows/chapter-5-3-skips-if-no-changes-detected.yaml similarity index 94% rename from .github/workflows/skips-if-no-changes-detected.yaml rename to .github/workflows/chapter-5-3-skips-if-no-changes-detected.yaml index 65625c8..87ced7f 100644 --- a/.github/workflows/skips-if-no-changes-detected.yaml +++ b/.github/workflows/chapter-5-3-skips-if-no-changes-detected.yaml @@ -24,7 +24,7 @@ jobs: backend: ${{ steps.changed_directory.outputs.backend }} renovate: ${{ steps.changed_directory.outputs.renovate }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 with: filter: blob:none # gitの履歴のみを取得する fetch-depth: 2 # ファイルの変更を取得するために必要 @@ -45,7 +45,7 @@ jobs: contents: read timeout-minutes: 5 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - run: echo "Frontend passes lint, tests, and build are listed here." backend: runs-on: ubuntu-latest @@ -55,7 +55,7 @@ jobs: contents: read timeout-minutes: 5 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - run: echo "Backend passes lint, tests, and build are listed here." renovate: runs-on: ubuntu-latest @@ -65,5 +65,5 @@ jobs: contents: read timeout-minutes: 5 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - run: echo "Configuration file changes that pass validation are listed here." diff --git a/.github/workflows/rerun-only-failed-tests.yaml b/.github/workflows/chapter-5-4-rerun-only-failed-tests.yaml similarity index 98% rename from .github/workflows/rerun-only-failed-tests.yaml rename to .github/workflows/chapter-5-4-rerun-only-failed-tests.yaml index a3eade9..a3817f0 100644 --- a/.github/workflows/rerun-only-failed-tests.yaml +++ b/.github/workflows/chapter-5-4-rerun-only-failed-tests.yaml @@ -24,7 +24,7 @@ jobs: working-directory: ./packages/node steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: actions/setup-node@v4 - name: Set environment diff --git a/.github/workflows/go.yaml b/.github/workflows/go.yaml deleted file mode 100644 index 5e32c03..0000000 --- a/.github/workflows/go.yaml +++ /dev/null @@ -1,39 +0,0 @@ -# Chapter 1 Hello World、ワークフローの定義ファイルの書き方. ---- -name: Chapter 1 - Go Test - -on: - # Events - # - https://docs.github.com/ja/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#issue_comment - push: - branches-ignore: - - main - - develop - issue_comment: - types: [created, deleted] - schedule: - - cron: "0 9 1 * *" # At 09:00 on day-of-month 1. - workflow_dispatch: - -permissions: {} -defaults: - run: - shell: bash - -jobs: - build: - runs-on: ubuntu-latest - timeout-minutes: 5 - permissions: - contents: read - steps: - - uses: actions/checkout@v4 - - - name: Set up Go - uses: actions/setup-go@v5 - with: - go-version: "1.23.1" - cache: false - - - name: Build - run: go build -v . diff --git a/articles/detections/category-1/README.md b/articles/changed-detenctions/category-1/README.md similarity index 100% rename from articles/detections/category-1/README.md rename to articles/changed-detenctions/category-1/README.md diff --git a/articles/detections/category-2/README.md b/articles/changed-detenctions/category-2/README.md similarity index 100% rename from articles/detections/category-2/README.md rename to articles/changed-detenctions/category-2/README.md diff --git a/articles/detections/category-2/scripts/generate-test-assets.sh b/articles/changed-detenctions/category-2/scripts/generate-test-assets.sh similarity index 100% rename from articles/detections/category-2/scripts/generate-test-assets.sh rename to articles/changed-detenctions/category-2/scripts/generate-test-assets.sh diff --git a/articles/detections/category-3/README.md b/articles/changed-detenctions/category-3/README.md similarity index 100% rename from articles/detections/category-3/README.md rename to articles/changed-detenctions/category-3/README.md diff --git a/packages/dotnet/Program.cs b/chapters/dotnet/Program.cs similarity index 100% rename from packages/dotnet/Program.cs rename to chapters/dotnet/Program.cs diff --git a/packages/dotnet/examples-github-action.csproj b/chapters/dotnet/examples-github-action.csproj similarity index 100% rename from packages/dotnet/examples-github-action.csproj rename to chapters/dotnet/examples-github-action.csproj diff --git a/packages/dotnet/packages.lock.json b/chapters/dotnet/packages.lock.json similarity index 100% rename from packages/dotnet/packages.lock.json rename to chapters/dotnet/packages.lock.json diff --git a/packages/e2e/.gitignore b/chapters/e2e/.gitignore similarity index 100% rename from packages/e2e/.gitignore rename to chapters/e2e/.gitignore diff --git a/packages/e2e/package.json b/chapters/e2e/package.json similarity index 100% rename from packages/e2e/package.json rename to chapters/e2e/package.json diff --git a/packages/e2e/playwright.config.ts b/chapters/e2e/playwright.config.ts similarity index 100% rename from packages/e2e/playwright.config.ts rename to chapters/e2e/playwright.config.ts diff --git a/packages/e2e/pnpm-lock.yaml b/chapters/e2e/pnpm-lock.yaml similarity index 100% rename from packages/e2e/pnpm-lock.yaml rename to chapters/e2e/pnpm-lock.yaml diff --git a/packages/e2e/tests-examples/demo-todo-app.spec.ts b/chapters/e2e/tests-examples/demo-todo-app.spec.ts similarity index 100% rename from packages/e2e/tests-examples/demo-todo-app.spec.ts rename to chapters/e2e/tests-examples/demo-todo-app.spec.ts diff --git a/packages/e2e/tests/example.spec.ts b/chapters/e2e/tests/example.spec.ts similarity index 100% rename from packages/e2e/tests/example.spec.ts rename to chapters/e2e/tests/example.spec.ts diff --git a/chapters/go/README.md b/chapters/go/README.md new file mode 100644 index 0000000..6fae6e1 --- /dev/null +++ b/chapters/go/README.md @@ -0,0 +1,42 @@ +# github.com/suzu-devworks/examples-github-action/chapters/go + +## Create a new Go module for this chapter. + +最初のモジュール作成 + +```bash +go mod init github.com/suzu-devworks/examples-github-action/chapters/go +go get github.com/gin-gonic/gin +``` + +## Uopdate dependencies + +現在のモジュールとそのすべての依存関係を一覧表示します。 + +```bash +go list -m all +``` + +依存関係の必須バージョンを更新する + +```bash +go get {package}@latest +``` + +すべての依存関係を最新バージョンに更新する + +```bash +go get -u ./... +``` + +最小Goバージョンをアップグレード + +```bash +go get go@latest +``` + +未使用の依存関係をクリーンアップします。 + +```bash +go mod tidy +``` \ No newline at end of file diff --git a/chapters/go/go.mod b/chapters/go/go.mod new file mode 100644 index 0000000..b4715dd --- /dev/null +++ b/chapters/go/go.mod @@ -0,0 +1,37 @@ +module github.com/suzu-devworks/examples-github-action/chapters/go + +go 1.26.5 + +require github.com/gin-gonic/gin v1.12.0 + +require ( + github.com/bytedance/gopkg v0.1.4 // indirect + github.com/bytedance/sonic v1.15.2 // indirect + github.com/bytedance/sonic/loader v0.5.2 // indirect + github.com/cloudwego/base64x v0.1.7 // indirect + github.com/gabriel-vasile/mimetype v1.4.15 // indirect + github.com/gin-contrib/sse v1.1.1 // indirect + github.com/go-playground/locales v0.14.1 // indirect + github.com/go-playground/universal-translator v0.18.1 // indirect + github.com/go-playground/validator/v10 v10.30.3 // indirect + github.com/goccy/go-json v0.10.6 // indirect + github.com/goccy/go-yaml v1.19.2 // indirect + github.com/json-iterator/go v1.1.12 // indirect + github.com/klauspost/cpuid/v2 v2.4.0 // indirect + github.com/leodido/go-urn v1.5.0 // indirect + github.com/mattn/go-isatty v0.0.24 // indirect + github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect + github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/pelletier/go-toml/v2 v2.4.3 // indirect + github.com/quic-go/qpack v0.6.0 // indirect + github.com/quic-go/quic-go v0.61.0 // indirect + github.com/twitchyliquid64/golang-asm v0.15.1 // indirect + github.com/ugorji/go/codec v1.3.2 // indirect + go.mongodb.org/mongo-driver/v2 v2.8.0 // indirect + golang.org/x/arch v0.29.0 // indirect + golang.org/x/crypto v0.54.0 // indirect + golang.org/x/net v0.57.0 // indirect + golang.org/x/sys v0.47.0 // indirect + golang.org/x/text v0.40.0 // indirect + google.golang.org/protobuf v1.36.11 // indirect +) diff --git a/chapters/go/go.sum b/chapters/go/go.sum new file mode 100644 index 0000000..964e7b3 --- /dev/null +++ b/chapters/go/go.sum @@ -0,0 +1,90 @@ +github.com/bytedance/gopkg v0.1.4 h1:oZnQwnX82KAIWb7033bEwtxvTqXcYMxDBaQxo5JJHWM= +github.com/bytedance/gopkg v0.1.4/go.mod h1:v1zWfPm21Fb+OsyXN2VAHdL6TBb2L88anLQgdyje6R4= +github.com/bytedance/sonic v1.15.2 h1:90H+rcF/FwLXwfB1cudOLq/je83n683Utf4Cbp0xHCo= +github.com/bytedance/sonic v1.15.2/go.mod h1:mT2NbXunuaEbnZ+mRIX/vYqKISmgEuHFDI4UzmKx2SA= +github.com/bytedance/sonic/loader v0.5.2 h1:0QtP1gevc1OZ6/H8Lb9BRZiCXd1Ftjd3OKuj1T1lBIo= +github.com/bytedance/sonic/loader v0.5.2/go.mod h1:AR4NYCk5DdzZizZ5djGqQ92eEhCCcdf5x77udYiSJRo= +github.com/cloudwego/base64x v0.1.7 h1:NppS+Fgzg5ovhn4NkUXaDT3x9jldgH5ToMCqzBSi2zI= +github.com/cloudwego/base64x v0.1.7/go.mod h1:Cu1PV9zfrSf7ET2tIbWbbEy7jO7HHJ13q4X2SQ8aWYg= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/gabriel-vasile/mimetype v1.4.15 h1:05iP/CYtZ/w455R/KZM6rZ5ieAdh99UPtd+d3YzLmaI= +github.com/gabriel-vasile/mimetype v1.4.15/go.mod h1:azpTcoLcDZRNgFou5j+APrqQx9HqVPWa6ijYQIIVswQ= +github.com/gin-contrib/sse v1.1.1 h1:uGYpNwTacv5R68bSGMapo62iLTRa9l5zxGCps4hK6ko= +github.com/gin-contrib/sse v1.1.1/go.mod h1:QXzuVkA0YO7o/gun03UI1Q+FTI8ZV/n5t03kIQAI89s= +github.com/gin-gonic/gin v1.12.0 h1:b3YAbrZtnf8N//yjKeU2+MQsh2mY5htkZidOM7O0wG8= +github.com/gin-gonic/gin v1.12.0/go.mod h1:VxccKfsSllpKshkBWgVgRniFFAzFb9csfngsqANjnLc= +github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s= +github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= +github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA= +github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY= +github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY= +github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY= +github.com/go-playground/validator/v10 v10.30.3 h1:4MU6YkEwx7GbcPJOZxrtbu+QfF3pJLJuaYTeAH0DYy8= +github.com/go-playground/validator/v10 v10.30.3/go.mod h1:4Axh7oCNGcoGkqLoE4YWt6n20mcEIsPRlB7vPk3lpyc= +github.com/goccy/go-json v0.10.6 h1:p8HrPJzOakx/mn/bQtjgNjdTcN+/S6FcG2CTtQOrHVU= +github.com/goccy/go-json v0.10.6/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= +github.com/goccy/go-yaml v1.19.2 h1:PmFC1S6h8ljIz6gMRBopkjP1TVT7xuwrButHID66PoM= +github.com/goccy/go-yaml v1.19.2/go.mod h1:XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7LkFRi1kA= +github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= +github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/klauspost/cpuid/v2 v2.4.0 h1:S6Hrbc7+ywsr0r+RLapfGBHfyefhCTwEh3A0tV913Dw= +github.com/klauspost/cpuid/v2 v2.4.0/go.mod h1:19jmZ9mjzoF//ddRSUsv0zfBTJWh3QJh9FNxZTMrGxU= +github.com/leodido/go-urn v1.5.0 h1:pLqT2kq1zpHW/1D18QMjMpdtX7cekxqtJJjg5ANyWw0= +github.com/leodido/go-urn v1.5.0/go.mod h1:9BORnCDhdPBJNDEX+w1bJisa8yOKYi116VeO96s4ifE= +github.com/mattn/go-isatty v0.0.24 h1:tGZZoVgT/KiqK1c8ocVLeDS8BSWMRd47J3Lbz7vsReI= +github.com/mattn/go-isatty v0.0.24/go.mod h1:nMCL3Zebbrt45jsMDgnfIwz6ydEQApk5oEI3HqDio6A= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/pelletier/go-toml/v2 v2.4.3 h1:GTRvJQutkOSftxIFD5xw9aepkYNuPWmVJpffdDPYVpY= +github.com/pelletier/go-toml/v2 v2.4.3/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/quic-go/go-ossfuzz-seeds v0.1.0 h1:APacT+iIaNF6fd8AGEiN3bT/Jtkd2jz4v4TzM7MFjy0= +github.com/quic-go/go-ossfuzz-seeds v0.1.0/go.mod h1:3IOHRbJIc+L6YKMwfDtJAM9Vj9k0YY4muhuyUYk5tbk= +github.com/quic-go/qpack v0.6.0 h1:g7W+BMYynC1LbYLSqRt8PBg5Tgwxn214ZZR34VIOjz8= +github.com/quic-go/qpack v0.6.0/go.mod h1:lUpLKChi8njB4ty2bFLX2x4gzDqXwUpaO1DP9qMDZII= +github.com/quic-go/quic-go v0.61.0 h1:ui88A53s8MSVYLC56en0KQ17HARk+9986Dn0SBfKNvA= +github.com/quic-go/quic-go v0.61.0/go.mod h1:9So2anK4Tp22URSQq00k+Vo2PNkle96ycDPDHL4s9vs= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= +github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= +github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI= +github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08= +github.com/ugorji/go/codec v1.3.2 h1:zkEASHHyEClGeURfgNT9PJZVfAbs9oEX9QXggwWNJbc= +github.com/ugorji/go/codec v1.3.2/go.mod h1:pRBVtBSKl77K30Bv8R2P+cLSGaTtex6fsA2Wjqmfxj4= +go.mongodb.org/mongo-driver/v2 v2.8.0 h1:CxWDGQYY8QQwNjAl/aq2sfWakdnWZynnqJ9F4DhHbP8= +go.mongodb.org/mongo-driver/v2 v2.8.0/go.mod h1:yOI9kBsufol30iFsl1slpdq1I0eHPzybRWdyYUs8K/0= +go.uber.org/mock v0.6.0 h1:hyF9dfmbgIX5EfOdasqLsWD6xqpNZlXblLB/Dbnwv3Y= +go.uber.org/mock v0.6.0/go.mod h1:KiVJ4BqZJaMj4svdfmHM0AUx4NJYO8ZNpPnZn1Z+BBU= +golang.org/x/arch v0.29.0 h1:8sSET5wB0+exBm0FGmOtdHMqjlRdV2DRD3/IV6OZgho= +golang.org/x/arch v0.29.0/go.mod h1:0X+GdSIP+kL5wPmpK7sdkEVTt2XoYP0cSjQSbZBwOi8= +golang.org/x/crypto v0.54.0 h1:YLIA59K4fiNzHzjnZt2tUJQjQtUWfWbeHBqKtk3eScw= +golang.org/x/crypto v0.54.0/go.mod h1:KWL8ny2AZdGR2cWmzeHrp2azQPGogOv+HeQaVEXC2dk= +golang.org/x/net v0.57.0 h1:K5+3DljvIuDG9/Jv9rvyMywYNFCQ9RSUY6OOTTkT+tE= +golang.org/x/net v0.57.0/go.mod h1:KpXc8iv+r3XplLAG/f7Jsf9RPszJzdR0f58q9vGOuEU= +golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs= +golang.org/x/sys v0.47.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/text v0.40.0 h1:Ub2Z6/xjgF1WrYQz2nuITOEegKFtiIy+rieRJ5lHZKs= +golang.org/x/text v0.40.0/go.mod h1:hpnzDAfGV753zIKo+wk3u1bVKCGPbrnF7+7LBF/UHVY= +google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= +google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/main.go b/chapters/go/main.go similarity index 100% rename from main.go rename to chapters/go/main.go diff --git a/main_test.go b/chapters/go/main_test.go similarity index 100% rename from main_test.go rename to chapters/go/main_test.go diff --git a/packages/node/package.json b/chapters/node/package.json similarity index 100% rename from packages/node/package.json rename to chapters/node/package.json diff --git a/packages/node/pnpm-lock.yaml b/chapters/node/pnpm-lock.yaml similarity index 100% rename from packages/node/pnpm-lock.yaml rename to chapters/node/pnpm-lock.yaml diff --git a/packages/node/src/sum.js b/chapters/node/src/sum.js similarity index 100% rename from packages/node/src/sum.js rename to chapters/node/src/sum.js diff --git a/packages/node/tests/failure.test.js b/chapters/node/tests/failure.test.js similarity index 100% rename from packages/node/tests/failure.test.js rename to chapters/node/tests/failure.test.js diff --git a/packages/node/tests/sum.test.js b/chapters/node/tests/sum.test.js similarity index 100% rename from packages/node/tests/sum.test.js rename to chapters/node/tests/sum.test.js diff --git a/packages/node/yarn.lock b/chapters/node/yarn.lock similarity index 100% rename from packages/node/yarn.lock rename to chapters/node/yarn.lock diff --git a/project/backend/README.md b/chapters/project/backend/README.md similarity index 100% rename from project/backend/README.md rename to chapters/project/backend/README.md diff --git a/project/frontend/README.md b/chapters/project/frontend/README.md similarity index 100% rename from project/frontend/README.md rename to chapters/project/frontend/README.md diff --git a/project/renovate.json b/chapters/project/renovate.json similarity index 100% rename from project/renovate.json rename to chapters/project/renovate.json diff --git a/go.mod b/go.mod deleted file mode 100644 index 7fd038f..0000000 --- a/go.mod +++ /dev/null @@ -1,34 +0,0 @@ -module github.com/suzu-devworks/examples-github-action - -go 1.25.0 - -require github.com/gin-gonic/gin v1.10.0 - -require ( - github.com/bytedance/sonic v1.11.6 // indirect - github.com/bytedance/sonic/loader v0.1.1 // indirect - github.com/cloudwego/base64x v0.1.4 // indirect - github.com/cloudwego/iasm v0.2.0 // indirect - github.com/gabriel-vasile/mimetype v1.4.3 // indirect - github.com/gin-contrib/sse v0.1.0 // indirect - github.com/go-playground/locales v0.14.1 // indirect - github.com/go-playground/universal-translator v0.18.1 // indirect - github.com/go-playground/validator/v10 v10.20.0 // indirect - github.com/goccy/go-json v0.10.2 // indirect - github.com/json-iterator/go v1.1.12 // indirect - github.com/klauspost/cpuid/v2 v2.2.7 // indirect - github.com/leodido/go-urn v1.4.0 // indirect - github.com/mattn/go-isatty v0.0.20 // indirect - github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect - github.com/modern-go/reflect2 v1.0.2 // indirect - github.com/pelletier/go-toml/v2 v2.2.2 // indirect - github.com/twitchyliquid64/golang-asm v0.15.1 // indirect - github.com/ugorji/go/codec v1.2.12 // indirect - golang.org/x/arch v0.8.0 // indirect - golang.org/x/crypto v0.54.0 // indirect - golang.org/x/net v0.56.0 // indirect - golang.org/x/sys v0.47.0 // indirect - golang.org/x/text v0.40.0 // indirect - google.golang.org/protobuf v1.34.1 // indirect - gopkg.in/yaml.v3 v3.0.1 // indirect -) diff --git a/go.sum b/go.sum deleted file mode 100644 index e4d6986..0000000 --- a/go.sum +++ /dev/null @@ -1,89 +0,0 @@ -github.com/bytedance/sonic v1.11.6 h1:oUp34TzMlL+OY1OUWxHqsdkgC/Zfc85zGqw9siXjrc0= -github.com/bytedance/sonic v1.11.6/go.mod h1:LysEHSvpvDySVdC2f87zGWf6CIKJcAvqab1ZaiQtds4= -github.com/bytedance/sonic/loader v0.1.1 h1:c+e5Pt1k/cy5wMveRDyk2X4B9hF4g7an8N3zCYjJFNM= -github.com/bytedance/sonic/loader v0.1.1/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4yY2JpfqGeCtNLU= -github.com/cloudwego/base64x v0.1.4 h1:jwCgWpFanWmN8xoIUHa2rtzmkd5J2plF/dnLS6Xd/0Y= -github.com/cloudwego/base64x v0.1.4/go.mod h1:0zlkT4Wn5C6NdauXdJRhSKRlJvmclQ1hhJgA0rcu/8w= -github.com/cloudwego/iasm v0.2.0 h1:1KNIy1I1H9hNNFEEH3DVnI4UujN+1zjpuk6gwHLTssg= -github.com/cloudwego/iasm v0.2.0/go.mod h1:8rXZaNYT2n95jn+zTI1sDr+IgcD2GVs0nlbbQPiEFhY= -github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= -github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0= -github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk= -github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE= -github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= -github.com/gin-gonic/gin v1.10.0 h1:nTuyha1TYqgedzytsKYqna+DfLos46nTv2ygFy86HFU= -github.com/gin-gonic/gin v1.10.0/go.mod h1:4PMNQiOhvDRa013RKVbsiNwoyezlm2rm0uX/T7kzp5Y= -github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s= -github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= -github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA= -github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY= -github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY= -github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY= -github.com/go-playground/validator/v10 v10.20.0 h1:K9ISHbSaI0lyB2eWMPJo+kOS/FBExVwjEviJTixqxL8= -github.com/go-playground/validator/v10 v10.20.0/go.mod h1:dbuPbCMFw/DrkbEynArYaCwl3amGuJotoKCe95atGMM= -github.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU= -github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= -github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= -github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= -github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= -github.com/klauspost/cpuid/v2 v2.2.7 h1:ZWSB3igEs+d0qvnxR/ZBzXVmxkgt8DdzP6m9pfuVLDM= -github.com/klauspost/cpuid/v2 v2.2.7/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= -github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M= -github.com/leodido/go-urn v1.4.0 h1:WT9HwE9SGECu3lg4d/dIA+jxlljEa1/ffXKmRjqdmIQ= -github.com/leodido/go-urn v1.4.0/go.mod h1:bvxc+MVxLKB4z00jd1z+Dvzr47oO32F/QSNjSBOlFxI= -github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= -github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= -github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= -github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= -github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= -github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM= -github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= -github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= -github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= -github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= -github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI= -github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08= -github.com/ugorji/go/codec v1.2.12 h1:9LC83zGrHhuUA9l16C9AHXAqEV/2wBQ4nkvumAE65EE= -github.com/ugorji/go/codec v1.2.12/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg= -golang.org/x/arch v0.0.0-20210923205945-b76863e36670/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= -golang.org/x/arch v0.8.0 h1:3wRIsP3pM4yUptoR96otTUOXI367OS0+c9eeRi9doIc= -golang.org/x/arch v0.8.0/go.mod h1:FEVrYAQjsQXMVJ1nsMoVVXPZg6p2JE2mx8psSWTDQys= -golang.org/x/crypto v0.54.0 h1:YLIA59K4fiNzHzjnZt2tUJQjQtUWfWbeHBqKtk3eScw= -golang.org/x/crypto v0.54.0/go.mod h1:KWL8ny2AZdGR2cWmzeHrp2azQPGogOv+HeQaVEXC2dk= -golang.org/x/net v0.56.0 h1:Rw8j/hFzGvJUZwNBXnAtf5sVDVt+65SK2C7IxCxZt5o= -golang.org/x/net v0.56.0/go.mod h1:D3Ku6r+V6JROoZK144D2XfMHFcMq/0zSfLelVTCFKec= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs= -golang.org/x/sys v0.47.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= -golang.org/x/text v0.40.0 h1:Ub2Z6/xjgF1WrYQz2nuITOEegKFtiIy+rieRJ5lHZKs= -golang.org/x/text v0.40.0/go.mod h1:hpnzDAfGV753zIKo+wk3u1bVKCGPbrnF7+7LBF/UHVY= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/protobuf v1.34.1 h1:9ddQBjfCyZPOHPUiPxpYESBLc+T8P3E+Vo4IbKZgFWg= -google.golang.org/protobuf v1.34.1/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= -gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -nullprogram.com/x/optparse v1.0.0/go.mod h1:KdyPE+Igbe0jQUrVfMqDMeJQIJZEuyV7pjYmp6pbG50= -rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=