diff --git a/.gitattributes b/.gitattributes index 808191f..aadcdc9 100644 --- a/.gitattributes +++ b/.gitattributes @@ -24,7 +24,6 @@ /.projen/deps.json linguist-generated /.projen/files.json linguist-generated /.projen/tasks.json linguist-generated -/codecov.yml linguist-generated /LICENSE linguist-generated /package.json linguist-generated /pnpm-lock.yaml linguist-generated diff --git a/.github/workflows/auto-approve.yml b/.github/workflows/auto-approve.yml index 93f1e49..19563d4 100644 --- a/.github/workflows/auto-approve.yml +++ b/.github/workflows/auto-approve.yml @@ -16,6 +16,6 @@ jobs: pull-requests: write if: contains(github.event.pull_request.labels.*.name, 'auto-approve') && (github.event.pull_request.user.login == 'cu-infra-svc-git') steps: - - uses: hmarr/auto-approve-action@v2.2.1 + - uses: hmarr/auto-approve-action@f0939ea97e9205ef24d872e76833fa908a770363 with: github-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 565b590..2393c6b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,7 +15,7 @@ jobs: CI: "true" steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: ref: ${{ github.event.pull_request.head.ref }} repository: ${{ github.event.pull_request.head.repo.full_name }} @@ -30,11 +30,11 @@ jobs: - name: Make cdk-ecr-deployment sane run: export FORCE_PREBUILT_LAMBDA=1 - name: Setup pnpm - uses: pnpm/action-setup@v3 + uses: pnpm/action-setup@v4 with: - version: "9" + version: 9.15.7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: 22.14.0 - name: Install dependencies @@ -42,7 +42,7 @@ jobs: - name: build run: npx projen build - name: Upload coverage to Codecov - uses: codecov/codecov-action@v4 + uses: codecov/codecov-action@v5 with: token: ${{ secrets.CODECOV_TOKEN }} directory: coverage @@ -51,10 +51,11 @@ jobs: run: |- git add . git diff --staged --patch --exit-code > repo.patch || echo "self_mutation_happened=true" >> $GITHUB_OUTPUT + shell: bash working-directory: ./ - name: Upload patch if: steps.self_mutation.outputs.self_mutation_happened - uses: actions/upload-artifact@v4.4.0 + uses: actions/upload-artifact@v4.6.2 with: name: repo.patch path: repo.patch @@ -73,13 +74,13 @@ jobs: if: always() && needs.build.outputs.self_mutation_happened && !(github.event.pull_request.head.repo.full_name != github.repository) steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: token: ${{ secrets.PROJEN_GITHUB_TOKEN }} ref: ${{ github.event.pull_request.head.ref }} repository: ${{ github.event.pull_request.head.repo.full_name }} - name: Download patch - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v5 with: name: repo.patch path: ${{ runner.temp }} @@ -87,12 +88,12 @@ jobs: run: '[ -s ${{ runner.temp }}/repo.patch ] && git apply ${{ runner.temp }}/repo.patch || echo "Empty patch. Skipping."' - name: Set git identity run: |- - git config user.name "github-actions" - git config user.email "github-actions@github.com" + git config user.name "github-actions[bot]" + git config user.email "41898282+github-actions[bot]@users.noreply.github.com" - name: Push changes env: PULL_REQUEST_REF: ${{ github.event.pull_request.head.ref }} run: |- git add . git commit -s -m "chore: self mutation" - git push origin HEAD:$PULL_REQUEST_REF + git push origin "HEAD:$PULL_REQUEST_REF" diff --git a/.github/workflows/pull-request-lint.yml b/.github/workflows/pull-request-lint.yml index 100c15e..5912590 100644 --- a/.github/workflows/pull-request-lint.yml +++ b/.github/workflows/pull-request-lint.yml @@ -19,7 +19,7 @@ jobs: pull-requests: write if: (github.event_name == 'pull_request' || github.event_name == 'pull_request_target') steps: - - uses: amannn/action-semantic-pull-request@v5.4.0 + - uses: amannn/action-semantic-pull-request@v6 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0f2a5f8..3e8c661 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -21,13 +21,13 @@ jobs: CI: "true" steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: fetch-depth: 0 - name: Set git identity run: |- - git config user.name "github-actions" - git config user.email "github-actions@github.com" + git config user.name "github-actions[bot]" + git config user.email "41898282+github-actions[bot]@users.noreply.github.com" - name: GitHub Packages authorization env: NPM_TOKEN: ${{ secrets.ALL_PACKAGE_READ_TOKEN }} @@ -39,11 +39,11 @@ jobs: - name: Make cdk-ecr-deployment sane run: export FORCE_PREBUILT_LAMBDA=1 - name: Setup pnpm - uses: pnpm/action-setup@v3 + uses: pnpm/action-setup@v4 with: - version: "9" + version: 9.15.7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: 22.14.0 - name: Install dependencies @@ -51,7 +51,7 @@ jobs: - name: release run: npx projen release - name: Upload coverage to Codecov - uses: codecov/codecov-action@v4 + uses: codecov/codecov-action@v5 with: token: ${{ secrets.CODECOV_TOKEN }} directory: coverage @@ -66,13 +66,14 @@ jobs: run: |- echo "latest_commit=$(git ls-remote origin -h ${{ github.ref }} | cut -f1)" >> $GITHUB_OUTPUT cat $GITHUB_OUTPUT + shell: bash - name: Backup artifact permissions if: ${{ steps.git_remote.outputs.latest_commit == github.sha }} run: cd dist && getfacl -R . > permissions-backup.acl continue-on-error: true - name: Upload artifact if: ${{ steps.git_remote.outputs.latest_commit == github.sha }} - uses: actions/upload-artifact@v4.4.0 + uses: actions/upload-artifact@v4.6.2 with: name: build-artifact path: dist @@ -87,11 +88,11 @@ jobs: contents: write if: needs.release.outputs.tag_exists != 'true' && needs.release.outputs.latest_commit == github.sha steps: - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v5 with: node-version: 22.14.0 - name: Download build artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v5 with: name: build-artifact path: dist @@ -111,11 +112,11 @@ jobs: packages: write if: needs.release.outputs.tag_exists != 'true' && needs.release.outputs.latest_commit == github.sha steps: - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v5 with: node-version: 22.14.0 - name: Download build artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v5 with: name: build-artifact path: dist diff --git a/.github/workflows/update-projen-main.yml b/.github/workflows/update-projen-main.yml index 84a6e7e..00c78ee 100644 --- a/.github/workflows/update-projen-main.yml +++ b/.github/workflows/update-projen-main.yml @@ -15,7 +15,7 @@ jobs: patch_created: ${{ steps.create_patch.outputs.patch_created }} steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: ref: main - name: GitHub Packages authorization @@ -29,11 +29,11 @@ jobs: - name: Make cdk-ecr-deployment sane run: export FORCE_PREBUILT_LAMBDA=1 - name: Setup pnpm - uses: pnpm/action-setup@v3 + uses: pnpm/action-setup@v4 with: - version: "9" + version: 9.15.7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: 22.14.0 - name: Install dependencies @@ -45,10 +45,11 @@ jobs: run: |- git add . git diff --staged --patch --exit-code > repo.patch || echo "patch_created=true" >> $GITHUB_OUTPUT + shell: bash working-directory: ./ - name: Upload patch if: steps.create_patch.outputs.patch_created - uses: actions/upload-artifact@v4.4.0 + uses: actions/upload-artifact@v4.6.2 with: name: repo.patch path: repo.patch @@ -62,11 +63,11 @@ jobs: if: ${{ needs.upgrade.outputs.patch_created }} steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: ref: main - name: Download patch - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v5 with: name: repo.patch path: ${{ runner.temp }} @@ -74,11 +75,11 @@ jobs: run: '[ -s ${{ runner.temp }}/repo.patch ] && git apply ${{ runner.temp }}/repo.patch || echo "Empty patch. Skipping."' - name: Set git identity run: |- - git config user.name "github-actions" - git config user.email "github-actions@github.com" + git config user.name "github-actions[bot]" + git config user.email "41898282+github-actions[bot]@users.noreply.github.com" - name: Create Pull Request id: create-pr - uses: peter-evans/create-pull-request@v6 + uses: peter-evans/create-pull-request@v7 with: token: ${{ secrets.PROJEN_GITHUB_TOKEN }} commit-message: |- @@ -102,6 +103,6 @@ jobs: ------ *Automatically created by projen via the "update-projen-main" workflow* - author: github-actions - committer: github-actions + author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> + committer: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> signoff: true diff --git a/.gitignore b/.gitignore index d561114..967b90d 100644 --- a/.gitignore +++ b/.gitignore @@ -43,6 +43,8 @@ junit.xml /dist/changelog.md /dist/version.txt !/.github/workflows/release.yml +codecov +codecov.* !/.mergify.yml !/.github/pull_request_template.md !/.prettierignore @@ -55,7 +57,6 @@ junit.xml /lib /dist/ !/.eslintrc.json -!/codecov.yml !/.nvmrc !/.github/workflows/renovate.yml !/.github/workflows/add-to-project.yml diff --git a/.mergify.yml b/.mergify.yml index a84b929..e9c207c 100644 --- a/.mergify.yml +++ b/.mergify.yml @@ -3,7 +3,7 @@ queue_rules: - name: default update_method: merge - conditions: + queue_conditions: - "#approved-reviews-by>=1" - -label~=(do-not-merge) - status-success=build @@ -22,3 +22,5 @@ pull_request_rules: - "#approved-reviews-by>=1" - -label~=(do-not-merge) - status-success=build +merge_queue: + max_parallel_checks: 1 diff --git a/.projen/files.json b/.projen/files.json index 77cfbb8..c73deaf 100644 --- a/.projen/files.json +++ b/.projen/files.json @@ -21,7 +21,6 @@ ".projen/deps.json", ".projen/files.json", ".projen/tasks.json", - "codecov.yml", "LICENSE", "renovate.json5", "tsconfig.dev.json", diff --git a/.projen/tasks.json b/.projen/tasks.json index db399da..1ba991f 100644 --- a/.projen/tasks.json +++ b/.projen/tasks.json @@ -108,7 +108,8 @@ "name": "eslint", "description": "Runs eslint against the codebase", "env": { - "ESLINT_USE_FLAT_CONFIG": "false" + "ESLINT_USE_FLAT_CONFIG": "false", + "NODE_NO_WARNINGS": "1" }, "steps": [ { diff --git a/.projenrc.ts b/.projenrc.ts index 538f945..b40e379 100644 --- a/.projenrc.ts +++ b/.projenrc.ts @@ -1,13 +1,9 @@ import { clickupTs } from '@time-loop/clickup-projen'; -import { javascript } from 'projen'; const project = new clickupTs.ClickUpTypeScriptProject({ name: '@time-loop/cdk-log-parser', defaultReleaseBranch: 'main', licensed: true, - packageManager: javascript.NodePackageManager.PNPM, - pnpmVersion: '9', - projenrcTs: true, bin: { 'cdk-log-parser': 'src/cdkLogParser.ts', diff --git a/codecov.yml b/codecov.yml deleted file mode 100644 index fb30b58..0000000 --- a/codecov.yml +++ /dev/null @@ -1,34 +0,0 @@ -# ~~ Generated by projen. To modify, edit .projenrc.ts and run "npx projen". - -coverage: - precision: 2 - round: down - status: - project: - default: - target: auto - threshold: 10% - paths: - - src - if_ci_failed: error - only_pulls: true - patch: - default: - base: auto - target: auto - threshold: 10% - paths: - - src - if_ci_failed: error - only_pulls: true -parsers: - gcov: - branch_detection: - conditional: yes - loop: yes - method: no - macro: no -comment: - layout: reach,diff,flags,files,footer - behavior: default - require_changes: no diff --git a/package.json b/package.json index 07c7f2f..55cd7c8 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "jest-junit": "^16", "jsii-release": "^0.2.838", "prettier": "^3.2.5", - "projen": "^0.92.10", + "projen": "^0.98.6", "ts-jest": "^29.1.3", "ts-node": "^10", "typedoc": "^0.25.13", @@ -54,7 +54,7 @@ "typescript": "^5.4.5" }, "dependencies": { - "@time-loop/clickup-projen": "^1.19.17" + "@time-loop/clickup-projen": "^1.22.1" }, "pnpm": {}, "engines": { @@ -115,7 +115,7 @@ } }, "types": "lib/index.d.ts", - "packageManager": "pnpm@9.15.5", + "packageManager": "pnpm@9.15.7", "files": [ "/bin", "/lib", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e6d18fc..554e159 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: dependencies: '@time-loop/clickup-projen': - specifier: ^1.19.17 - version: 1.19.17(projen@0.92.10(constructs@10.3.0)) + specifier: ^1.22.1 + version: 1.22.1(projen@0.98.6(constructs@10.3.0)) devDependencies: '@types/jest': specifier: ^29.5.12 @@ -61,8 +61,8 @@ importers: specifier: ^3.2.5 version: 3.2.5 projen: - specifier: ^0.92.10 - version: 0.92.10(constructs@10.3.0) + specifier: ^0.98.6 + version: 0.98.6(constructs@10.3.0) ts-jest: specifier: ^29.1.3 version: 29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(esbuild@0.21.4)(jest@29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@types/node@18.19.33)(typescript@5.4.5)))(typescript@5.4.5) @@ -895,11 +895,11 @@ packages: resolution: {integrity: sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==} engines: {node: '>=16.0.0'} - '@time-loop/clickup-projen@1.19.17': - resolution: {integrity: sha512-MwCdSwvO7fPnaR8Km9iwvJ9Lc8YpuDLv4kdEHZr9fnW2fhiaax8Fkzro3jvsyh/s1QbVjckePKHaCky9vZ1f0g==, tarball: https://npm.pkg.github.com/download/@time-loop/clickup-projen/1.19.17/f504f0481c414b340aa6b823364cbaaf93f6a661} + '@time-loop/clickup-projen@1.22.1': + resolution: {integrity: sha512-j8rJQJ4smvms0AJpz1RsJ4/Ny5+G/vDh1uQroBCbL9e/7yTvV24hLuPuVORFVRmfHeIzavMVZ6sooluvdW2DEQ==, tarball: https://npm.pkg.github.com/download/@time-loop/clickup-projen/1.22.1/d91517051179b157a69c621226a8c741373db1a6} engines: {node: '>= 18.17.1'} peerDependencies: - projen: ^0.92.8 + projen: ^0.98.3 bundledDependencies: - cson-parser - semver @@ -2637,8 +2637,8 @@ packages: process-nextick-args@2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - projen@0.92.10: - resolution: {integrity: sha512-c60xtQbkPt1tseUhMdCCUURdzcYaV5/Z5OxLJlNQzONwh/0VmpHKEW/creY8X7tw8hk4WgtMKhwisajJHkcf0Q==} + projen@0.98.6: + resolution: {integrity: sha512-YR4tUn24D8BB16gGm3bjqVMj3NWbNG2sBmUv4M5Wvdv7t56hJ5Xo4fDGKVWzGGBvtSKIYtxC28gEt/4YXDKbwA==} engines: {node: '>= 16.0.0'} hasBin: true peerDependencies: @@ -2649,8 +2649,8 @@ packages: - chalk - comment-json - conventional-changelog-config-spec + - fast-glob - fast-json-patch - - glob - ini - parse-conflict-json - semver @@ -4566,9 +4566,9 @@ snapshots: '@smithy/util-buffer-from': 3.0.0 tslib: 2.6.2 - '@time-loop/clickup-projen@1.19.17(projen@0.92.10(constructs@10.3.0))': + '@time-loop/clickup-projen@1.22.1(projen@0.98.6(constructs@10.3.0))': dependencies: - projen: 0.92.10(constructs@10.3.0) + projen: 0.98.6(constructs@10.3.0) '@tsconfig/node10@1.0.11': {} @@ -6683,7 +6683,7 @@ snapshots: process-nextick-args@2.0.1: {} - projen@0.92.10(constructs@10.3.0): + projen@0.98.6(constructs@10.3.0): dependencies: constructs: 10.3.0 diff --git a/renovate.json5 b/renovate.json5 index 59f8f03..1a182ee 100644 --- a/renovate.json5 +++ b/renovate.json5 @@ -52,6 +52,12 @@ "Applying major version updates without understanding what they do has caused outages at ClickUp. Don't be that guy. Read the release notes. The release notes are in a link buried in the rollup below. Sorry, unfortunately Renovate does not offer a reasonable way to expose them here. If in doubt, escalate to CloudPlatform.", "CloudPlatform thanks you for being diligent with your library updates!" ] + }, + { + "matchPackageNames": [ + "@time-loop/{/,}**" + ], + "minimumReleaseAge": "0 days" } ], "ignoreDeps": [ @@ -66,11 +72,22 @@ "node", "@time-loop/clickup-projen", "pnpm", - "projen" + "projen", + "hmarr/auto-approve-action", + "actions/checkout", + "actions/download-artifact", + "amannn/action-semantic-pull-request", + "pnpm/action-setup", + "actions/setup-node", + "codecov/codecov-action", + "actions/upload-artifact", + "rtCamp/action-slack-notify", + "peter-evans/create-pull-request" ], "rangeStrategy": "bump", "prHourlyLimit": 0, "prConcurrentLimit": 0, "automergeType": "pr", - "platformAutomerge": true + "platformAutomerge": true, + "minimumReleaseAge": "7 days" }