diff --git a/.github/actions/spelling/allow.txt b/.github/actions/spelling/allow.txt index e4d5df47c2f..f640c409a73 100644 --- a/.github/actions/spelling/allow.txt +++ b/.github/actions/spelling/allow.txt @@ -44,3 +44,15 @@ xticks yargsparser yticked webtoken +bitcoin +coingecko +dajneem +emojis +eur +identicons +jpy +mikey +octokits +twemojis +upvotes +usd diff --git a/.github/actions/spelling/excludes.txt b/.github/actions/spelling/excludes.txt index 0900304ea4e..ad6d68ef573 100644 --- a/.github/actions/spelling/excludes.txt +++ b/.github/actions/spelling/excludes.txt @@ -4,7 +4,6 @@ (?:^|/)go\.sum$ (?:^|/)package(?:-lock|)\.json$ (?:^|/)vendor/ -ignore$ \.a$ \.ai$ \.avi$ @@ -47,13 +46,15 @@ ignore$ ^\.github/actions/spelling/ ^\Q.github/readme/partials/documentation/inspirations.md\E$ ^\Q.github/workflows/spelling.yml\E$ -^source/plugins/community/splatoon/ ^\Qsource/plugins/sponsors/index.mjs\E$ ^\Qsource/plugins/stargazers/worldmap/atlas/50m_countries.geojson\E$ ^\Qsource/templates/classic/partials/splatoon.ejs\E$ ^\Qsource/templates/markdown/example.md\E$ ^\Qsource/templates/terminal/fonts.css\E$ ^\Qsource/templates/terminal/partials/screenshot.ejs\E$ -^\Qtests/mocks/api/github/rest/emojis/get.mjs\E$ ^\Qtests/mocks/api/axios/get/lichess.mjs\E$ -^\Qtests/mocks/api/axios/get/steam.mjs\E$ \ No newline at end of file +^\Qtests/mocks/api/axios/get/steam.mjs\E$ +^\Qtests/mocks/api/github/rest/emojis/get.mjs\E$ +^source/plugins/community/splatoon/ +^source/templates/classic/fonts\.css$ +ignore$ diff --git a/.github/actions/spelling/expect.txt b/.github/actions/spelling/expect.txt index 0c3e2fbf0b2..c746f303b83 100644 --- a/.github/actions/spelling/expect.txt +++ b/.github/actions/spelling/expect.txt @@ -6,21 +6,16 @@ amd anilist apidojo apostrophecms -argv arobase asi audioscrobbler Autoloaded automator -backreference Bizau blankslate -blog brackethighlighter btn -cacheable cakeday -captcha charsets chmod chown @@ -28,26 +23,18 @@ chrisbottin cloudinary cmake codelines -codemirror codeql colorsets Consolas -coord -csso -CVE cwd datapoints dded -dependabot -deployer -deps dessant -destructuring +dethb Dexcom dflag diffs diffstat -dirname domcontentloaded DOUBLEDOWN DOUBLEUP @@ -59,32 +46,22 @@ ecma Edg eleased eleted -emails -emoji emojipedia endgroup endyear ENOENT -entrypoint eopened eqeqeq erged -esm eugeneware eviewed -expr expressjs extracter extralarge -facebook -favicon favourites FEmusic -filesize filesloop -Firefox firstname -Fnc foliojs forkee FORTYFIVEDOWN @@ -100,46 +77,36 @@ getrecenttracks gettopartists gettoptracks ghactions -ghcr ghquery gifencoder -gionkunz Gister githubs -githubusercontent gitted -globals Gmap gnupg gnuplot Gollum -google googlechrome gpg -grep guttermarker hackernews -hardcode hashnode hashtag herokuapp highalert highlighter -homepage honzaap htmlescape htmlsanitize htmlunescape hubot -hyperlinks -identicon ies -iframes imagga imgb indepth infographics infographile +infp installable instanceof instantier @@ -147,16 +114,12 @@ Intelli invertocat Ionica ipafont -ipsum -isaacs isocalendar -itemprop itunes jellyfin jshemas kacst keyup -Kotlin largeable lastfm lastname @@ -164,29 +127,23 @@ leaderboard lecoq legoandmars libgconf -libssl libx -libxml libxmljs libxss libxtst lichess linux lng -localhost localstorage logline losed lovell lowalert -lowercased lowlighter lsb -lstat mangas markedjs marudor -matchingbracket matievisthekat maxage maxusers @@ -194,7 +151,6 @@ mbid mde mergeability mergeable -middlewares mkdir mockresize mozilla @@ -211,12 +167,9 @@ Nixinova NOASSERTION nocase nodeca -nodejs notoken octicon -OCTO octocat -octokit octonaut octoraw oid @@ -227,25 +180,19 @@ orked pageerror pagespeed pagespeedonline -panosoft -params patchnote pdated pened PGP playcount playlists -plugin poopmap practicaldev prettylights previewable -prismjs producthunt ptarjan puppeteergif -purgecss -pwa qmake rankeds rapidapi @@ -254,12 +201,8 @@ ratelimiter rbmok rbren rcopy -readdir -readme -readonly reated recenttracks -regexp rlreset rssi runsh @@ -267,16 +210,13 @@ SAPISID SAPISIDHASH scorecalc screenshots -SDKs Segoe selfhosted seo -Serializer sgit sgv shipit shm -SIGKILL SINGLEDOWN SINGLEUP sourced @@ -290,17 +230,13 @@ stackoverflow stagazers standalone starlist -stderr -stdin stdio -stdout steveukx streamable stripemojis stroustrup sublimelinter substr -sudo sysadmin systemctl systemd @@ -309,64 +245,45 @@ templating testapp testcase Thu -timeline tlwg tmpdir -todo topartists toptracks tracklist transfonter trollface TSLA -twemoji uapi uconf -uid uncache Unconfigured -undef underlinenav -Unescape -upcase -upvote urgenthighalert urgentlowalert -uri -urlencoded URLTo usermod usernames ushed usr -utf utm -vercel vnd vuejs waifus wakapi wakatime -wasm -webserver websites wget -whitelisted whoami -wiki wikipedia wontfix workaround WORKDIR worldmap wqy -wsl xcb -Xcode xkcd xmlformat ycombinator -ymd yoda youtube ytd diff --git a/.github/config/label.yml b/.github/config/label.yml index 1d10a5dc423..37d001970ee 100644 --- a/.github/config/label.yml +++ b/.github/config/label.yml @@ -1,92 +1,251 @@ + 📊 metrics embed: - - source/app/action/** - - source/app/web/** + - changed-files: + - any-glob-to-any-file: + - source/app/action/** + - source/app/web/** + ✨ metrics insights: - - source/app/web/statics/insights/** + - changed-files: + - any-glob-to-any-file: + - source/app/web/statics/insights/** 🧩 plugins: - - source/plugins/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/** + 🖼️ templates: - - source/templates/** + - changed-files: + - any-glob-to-any-file: + - source/templates/** 🗃️ base: - - source/plugins/base/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/base/** + 🧱 core: - - source/app/metrics/** - - source/plugins/core/** + - changed-files: + - any-glob-to-any-file: + - source/app/metrics/** + - source/plugins/core/** + +🚀 ci: + - changed-files: + - any-glob-to-any-file: + - .github/** + +⚙️ ci config: + - changed-files: + - any-glob-to-any-file: + - .github/config/** + - .github/ISSUE_TEMPLATE/** + - .github/FUNDING.yml + - .github/pull_request_template.md + +🦾 ci actions: + - changed-files: + - any-glob-to-any-file: + - .github/actions/** + +🦿 ci scripts: + - changed-files: + - any-glob-to-any-file: + - .github/scripts/** + +🖨️ ci docs: + - changed-files: + - any-glob-to-any-file: + - .github/readme/** + - .github/**/examples.yml + - .github/**/*.md + - '!.github/pull_request_template.md' + - .github/architecture.svg + - .github/scripts/markdown_example.mjs + - .github/scripts/presets_example.mjs 🎲 community plugins: - - source/plugins/community/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/community/** 🏆 plugin achievements: - - source/plugins/achievements/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/achievements/** 📰 plugin activity: - - source/plugins/activity/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/activity/** + 🌸 plugin anilist: - - source/plugins/anilist/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/anilist/** + 📆 plugin calendar: - - source/plugins/calendar/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/calendar/** + ♐ plugin code: - - source/plugins/code/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/code/** + 🏅 plugin contributors: - - source/plugins/contributors/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/contributors/** + 💬 plugin discussions: - - source/plugins/discussions/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/discussions/** + 🎟️ plugin followup: - - source/plugins/followup/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/followup/** + 🎫 plugin gists: - - source/plugins/gists/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/gists/** + 💡 plugin habits: - - source/plugins/habits/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/habits/** + 🙋 plugin introduction: - - source/plugins/introduction/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/introduction/** + 📅 plugin isocalendar: - - source/plugins/isocalendar/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/isocalendar/** + 🈷️ plugin languages: - - source/plugins/languages/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/languages/** + 🗳️ plugin leetcode: - - source/plugins/leetcode/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/leetcode/** + 📜 plugin licenses: - - source/plugins/licenses/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/licenses/** + 👨‍💻 plugin lines: - - source/plugins/lines/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/lines/** + 🎼 plugin music: - - source/plugins/music/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/music/** + 🎩 plugin notable: - - source/plugins/notable/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/notable/** + ⏱️ plugin pagespeed: - - source/plugins/pagespeed/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/pagespeed/** + 🧑‍🤝‍🧑 plugin people: - - source/plugins/people/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/people/** + ✒️ plugin posts: - - source/plugins/posts/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/posts/** + 🗂️ plugin projects: - - source/plugins/projects/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/projects/** + 🎭 plugin reactions: - - source/plugins/reactions/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/reactions/** + 📓 plugin repositories: - - source/plugins/repositories/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/repositories/** + 🗼 plugin rss: - - source/plugins/rss/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/rss/** + 🌇 plugin skyline: - - source/plugins/skyline/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/skyline/** + 💕 plugin sponsors: - - source/plugins/sponsors/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/sponsors/** + 🗨️ plugin stackoverflow: - - source/plugins/stackoverflow/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/stackoverflow/** + ✨ plugin stargazers: - - source/plugins/stargazers/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/stargazers/** + 💫 plugin starlists: - - source/plugins/starlists/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/starlists/** + 🌟 plugin stars: - - source/plugins/stars/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/stars/** + 💭 plugin support: - - source/plugins/support/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/support/** + 📌 plugin topics: - - source/plugins/topics/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/topics/** + 🧮 plugin traffic: - - source/plugins/traffic/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/traffic/** + 🐤 plugin tweets: - - source/plugins/tweets/** + - changed-files: + - any-glob-to-any-file: + - source/plugins/tweets/** + ⏰ plugin wakatime: - - source/plugins/wakatime/** \ No newline at end of file + - changed-files: + - any-glob-to-any-file: + - source/plugins/wakatime/** + diff --git a/.github/workflows/branches.yml b/.github/workflows/branches.yml index 5b3dede5ffb..f9fddb4a8d7 100644 --- a/.github/workflows/branches.yml +++ b/.github/workflows/branches.yml @@ -13,7 +13,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Comment on pull request - uses: actions/github-script@v6 + uses: actions/github-script@v7 with: script: | const {issue:{number:issue_number}, repo:{owner, repo}} = context diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5428dd7123f..df7c99a39be 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,7 +20,7 @@ jobs: if: always() && (needs.build-test-analyze.result == 'success' || needs.build-test-analyze.result == 'skipped') steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Checkout master @@ -47,11 +47,11 @@ jobs: needs: [ format ] steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20 - name: Pull changes @@ -70,11 +70,11 @@ jobs: needs: [ update-indexes ] steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20 - name: Pull @@ -93,7 +93,7 @@ jobs: needs: [ update-indexes ] steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Login to GitHub registry run: echo ${{ github.token }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin - name: Build docker image @@ -178,7 +178,7 @@ jobs: if: contains(github.event.head_commit.message, '[release]') steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Login to GitHub registry run: echo ${{ github.token }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin - name: Pull docker image (master) @@ -203,11 +203,11 @@ jobs: needs: [ docker-release ] steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20 - name: Setup metrics @@ -256,9 +256,9 @@ jobs: needs: [ action-latest-test, deploy-latest ] steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20 - name: Setup metrics diff --git a/.github/workflows/clean.yml b/.github/workflows/clean.yml index c7bed12a577..6eddacdcfe7 100644 --- a/.github/workflows/clean.yml +++ b/.github/workflows/clean.yml @@ -13,7 +13,7 @@ jobs: continue-on-error: true steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Run script run: ./delete_ghcr_dangling_images.sh lowlighter metrics working-directory: .github/actions/ghcr-clean diff --git a/.github/workflows/examples.presets.yml b/.github/workflows/examples.presets.yml index 77f8a72a72a..20a8dca6fe6 100644 --- a/.github/workflows/examples.presets.yml +++ b/.github/workflows/examples.presets.yml @@ -10,11 +10,11 @@ jobs: if: "github.repository == 'lowlighter/metrics'" steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20 - name: Setup metrics diff --git a/.github/workflows/label.yml b/.github/workflows/label.yml index 80c8c77c882..05d42c3e4ec 100644 --- a/.github/workflows/label.yml +++ b/.github/workflows/label.yml @@ -7,8 +7,8 @@ jobs: name: Label issue and pull requests runs-on: ubuntu-latest steps: - - uses: actions/labeler@v4 + - uses: actions/labeler@v5 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" configuration-path: .github/config/label.yml - sync-labels: yes + sync-labels: true diff --git a/.github/workflows/spelling.yml b/.github/workflows/spelling.yml index b587d178b8f..cbf34fa48b9 100644 --- a/.github/workflows/spelling.yml +++ b/.github/workflows/spelling.yml @@ -48,13 +48,18 @@ jobs: steps: - name: check-spelling id: spelling - uses: check-spelling/check-spelling@v0.0.20 + uses: check-spelling/check-spelling@v0.0.25 with: experimental_apply_changes_via_bot: ${{ github.repository_owner != 'lowlighter' && 1 || 0 }} suppress_push_for_open_pull_request: 1 checkout: true post_comment: 0 + dictionary_source_prefixes: > + { + "cspell": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20241114/dictionaries/" + } extra_dictionaries: + cspell:cpp/cpp.txt cspell:html/html.txt cspell:filetypes/filetypes.txt cspell:css/css.txt @@ -62,7 +67,13 @@ jobs: cspell:django/django.txt cspell:npm/npm.txt cspell:aws/aws.txt - check_extra_dictionaries: '' + cspell:software-terms/software-terms.txt + cspell:software-terms/dict/softwareTerms.txt + cspell:php/dict/php.txt + cspell:python/src/common/extra.txt + cspell:node/dict/node.txt + cspell:python/src/python/python-lib.txt + extra_dictionary_limit: 50 comment: name: Report @@ -74,7 +85,7 @@ jobs: if: (success() || failure()) && needs.spelling.outputs.followup steps: - name: comment - uses: check-spelling/check-spelling@v0.0.20 + uses: check-spelling/check-spelling@v0.0.25 with: checkout: true task: ${{ needs.spelling.outputs.followup }} @@ -97,7 +108,7 @@ jobs: cancel-in-progress: false steps: - name: apply spelling updates - uses: check-spelling/check-spelling@v0.0.20 + uses: check-spelling/check-spelling@v0.0.25 with: experimental_apply_changes_via_bot: ${{ github.repository_owner != 'lowlighter' && 1 || 0 }} checkout: true diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index bbc174e6ca4..3af2e98dfda 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -10,7 +10,7 @@ jobs: name: Flag stale issues and pull requests runs-on: ubuntu-latest steps: - - uses: actions/stale@v6 + - uses: actions/stale@v9 with: days-before-stale: -1 stale-pr-message: This pull request seems to be inactive and will be automatically closed in a few days if it remains without any activity. @@ -25,7 +25,7 @@ jobs: - stale runs-on: ubuntu-latest steps: - - uses: dessant/lock-threads@v4 + - uses: dessant/lock-threads@v5 with: github-token: ${{ github.token }} issue-inactive-days: 180 @@ -40,7 +40,7 @@ jobs: continue-on-error: true steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Run script run: ./delete_workflows.sh lowlighter/metrics working-directory: .github/actions/ghcr-clean diff --git a/.github/workflows/test.presets.yml b/.github/workflows/test.presets.yml index f9c867a37bd..de262ec50c8 100644 --- a/.github/workflows/test.presets.yml +++ b/.github/workflows/test.presets.yml @@ -16,12 +16,12 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 ref: master - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20 - name: Setup metrics diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7c8a1bc18e3..85868242588 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,11 +13,11 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20 - name: Setup metrics @@ -36,7 +36,7 @@ jobs: needs: [ lint ] steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Format code with dprint run: | npm install -g dprint @@ -58,11 +58,11 @@ jobs: needs: [ lint ] steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup CodeQL - uses: github/codeql-action/init@v2 + uses: github/codeql-action/init@v3 with: languages: javascript config-file: ./.github/config/codeql.yml - name: Analyze code - uses: github/codeql-action/analyze@v2 \ No newline at end of file + uses: github/codeql-action/analyze@v3 \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 3ff5209a48a..2f50cde6cfe 100644 --- a/Dockerfile +++ b/Dockerfile @@ -10,7 +10,7 @@ RUN chmod +x /metrics/source/app/action/index.mjs \ # Install latest chrome dev package, fonts to support major charsets and skip chromium download on puppeteer install # Based on https://github.com/GoogleChrome/puppeteer/blob/master/docs/troubleshooting.md#running-puppeteer-in-docker && apt-get update \ - && apt-get install -y wget gnupg ca-certificates libgconf-2-4 \ + && apt-get install -y xz-utils wget gnupg ca-certificates libgconf-2-4 \ && wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - \ && sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' \ && apt-get update \ diff --git a/tests/cases/16personalities.plugin.yml b/tests/cases/16personalities.plugin.yml index 4a010ccfa4d..c55e8392d1e 100644 --- a/tests/cases/16personalities.plugin.yml +++ b/tests/cases/16personalities.plugin.yml @@ -3,7 +3,7 @@ with: token: MOCKED_TOKEN plugin_16personalities: 'yes' - plugin_16personalities_url: https://www.16personalities.com/profiles/b7d9f29453ea5 + plugin_16personalities_url: https://www.16personalities.com/profiles/infp-t/o/f9r5dethb plugin_16personalities_sections: personality, traits plugin_16personalities_scores: 'no' use_mocked_data: 'yes' diff --git a/tests/ci.test.js b/tests/ci.test.js index 02c21c7e1f8..2373cb78e5a 100644 --- a/tests/ci.test.js +++ b/tests/ci.test.js @@ -19,7 +19,7 @@ describe("Check file changes (checkout your files if needed)", () => { ".github/workflows/examples.yml", ".github/readme/partials/documentation/compatibility.md", ])("%s", async file => expect((await diff()).includes(file)).toBe(false))) - if (!["lowlighter"].includes(process.env.PR_AUTHOR)) { + if (!["lowlighter","mikey-"].includes(process.env.PR_AUTHOR)) { describe("Repository level files were not modified", () => void test.each([ ".github/config/*",