chore(deps): upgrade to Astro 7.0.3 + @astrojs/mdx 7.0.0 #55

Merged
isyuricunha merged 2 commits from feat/astro-7-mdx-7 into main 2026-07-02 20:43:06 +00:00
isyuricunha commented 2026-07-02 20:38:47 +00:00 (Migrated from github.com)

Major dependency upgrades

Changes

  • astro: 6.4.6 → 7.0.3
  • @astrojs/mdx: 6.0.3 → 7.0.0

Breaking changes verified

Change Status Notes
Rust compiler (stricter HTML) ✅ Pass No unclosed tag errors in content
Sätteri Markdown pipeline (default) ✅ Pass No remark/rehype plugins used
compressHTML: 'jsx' (new default) ✅ Pass No visual regressions observed
Advanced routing (src/fetch.ts reserved) ✅ Pass No conflict
Experimental flags removed ✅ Pass None were used
@astrojs/mdx 7 breaking changes ✅ Pass No custom remark/rehype config

Verification

  • [WARN] Unsupported engine: wanted: {"node":"24.x"} (current: {"node":"v22.23.1","pnpm":"11.8.0"})
    20:38:15 [content] Syncing content
    20:38:15 [content] Synced content
    20:38:15 [types] Generated 756ms
    20:38:15 [check] Getting diagnostics for Astro files in /home/cloud/github/beta-website...
    src/components/SeoHead.astro:100:9 - warning astro(4000): This script will be treated as if it has the is:inline directive because it contains an attribute. Therefore, features that require processing (e.g. using TypeScript or npm packages in the script) are unavailable.

See docs for more details: https://docs.astro.build/en/guides/client-side-scripts/#script-processing.

Add the is:inline directive explicitly to silence this hint.

100

## Major dependency upgrades ### Changes - **astro**: 6.4.6 → 7.0.3 - **@astrojs/mdx**: 6.0.3 → 7.0.0 ### Breaking changes verified | Change | Status | Notes | |--------|--------|-------| | Rust compiler (stricter HTML) | ✅ Pass | No unclosed tag errors in content | | Sätteri Markdown pipeline (default) | ✅ Pass | No remark/rehype plugins used | | compressHTML: 'jsx' (new default) | ✅ Pass | No visual regressions observed | | Advanced routing (src/fetch.ts reserved) | ✅ Pass | No conflict | | Experimental flags removed | ✅ Pass | None were used | | @astrojs/mdx 7 breaking changes | ✅ Pass | No custom remark/rehype config | ### Verification - [x] [WARN] Unsupported engine: wanted: {"node":"24.x"} (current: {"node":"v22.23.1","pnpm":"11.8.0"}) 20:38:15 [content] Syncing content 20:38:15 [content] Synced content 20:38:15 [types] Generated 756ms 20:38:15 [check] Getting diagnostics for Astro files in /home/cloud/github/beta-website... src/components/SeoHead.astro:100:9 - warning astro(4000): This script will be treated as if it has the `is:inline` directive because it contains an attribute. Therefore, features that require processing (e.g. using TypeScript or npm packages in the script) are unavailable. See docs for more details: https://docs.astro.build/en/guides/client-side-scripts/#script-processing. Add the `is:inline` directive explicitly to silence this hint. 100 <script type="application/ld+json" set:html={JSON.stringify(schemaLd)} />    ~~~~ Result (64 files): - 0 errors - 0 warnings - 1 hint [WARN] Unsupported engine: wanted: {"node":"24.x"} (current: {"node":"v22.23.1","pnpm":"11.8.0"}) Checked 282 content files; 12 translations missing. - Type-check passes - [x] [WARN] Unsupported engine: wanted: {"node":"24.x"} (current: {"node":"v22.23.1","pnpm":"11.8.0"}) 20:38:25 [content] Syncing content 20:38:25 [content] Synced content 20:38:25 [types] Generated 754ms 20:38:25 [check] Getting diagnostics for Astro files in /home/cloud/github/beta-website... src/components/SeoHead.astro:100:9 - warning astro(4000): This script will be treated as if it has the `is:inline` directive because it contains an attribute. Therefore, features that require processing (e.g. using TypeScript or npm packages in the script) are unavailable. See docs for more details: https://docs.astro.build/en/guides/client-side-scripts/#script-processing. Add the `is:inline` directive explicitly to silence this hint. 100 <script type="application/ld+json" set:html={JSON.stringify(schemaLd)} />    ~~~~ Result (64 files): - 0 errors - 0 warnings - 1 hint 20:38:33 [content] Syncing content 20:38:33 [content] Synced content 20:38:33 [types] Generated 747ms 20:38:33 [build] output: "static" 20:38:33 [build] mode: "static" 20:38:33 [build] directory: /home/cloud/github/beta-website/dist/ 20:38:33 [build] Collecting build info... 20:38:33 [build] ✓ Completed in 784ms. 20:38:33 [build] Building static entrypoints... 20:38:36 [assets] Copying fonts (2 files)... 20:38:37 [vite] ✓ built in 3.29s 20:38:37 [vite] ✓ built in 132ms 20:38:37 [build] Rearranging server assets... generating static routes 20:38:38 ├─ /blog/coisas-que-eu-gostaria-que-tivessem-me-dito-quando-entrei-na-faculdade-de-ti/index.html (+35ms) 20:38:38 ├─ /blog/confessing-my-stupidity/index.html (+10ms) 20:38:38 ├─ /blog/conselhos-que-eu-gostaria-de-ter-ouvido-quando-comecei-na-tecnologia/index.html (+12ms) 20:38:38 ├─ /blog/dappling/index.html (+10ms) 20:38:38 ├─ /blog/disconnected/index.html (+9ms) 20:38:38 ├─ /blog/echoes-of-a-conflicted-impostor/index.html (+10ms) 20:38:38 ├─ /blog/embracing-feelings-indifference/index.html (+10ms) 20:38:38 ├─ /blog/how-privacy-has-become-increasingly-important/index.html (+10ms) 20:38:38 ├─ /blog/how-to-plan-a-productive-day/index.html (+12ms) 20:38:38 ├─ /blog/i-dont-care/index.html (+10ms) 20:38:38 ├─ /blog/i-think-i-was-born-in-the-wrong-generation/index.html (+11ms) 20:38:38 ├─ /blog/i-was-born-in-the-wrong-generation/index.html (+10ms) 20:38:38 ├─ /blog/i-would-like-to-die-but-i-dont-want-to-die/index.html (+9ms) 20:38:38 ├─ /blog/im-glad-youre-here-dont-go-anywhere/index.html (+8ms) 20:38:38 ├─ /blog/im-proud-of-you/index.html (+9ms) 20:38:38 ├─ /blog/my-last-goodbye/index.html (+8ms) 20:38:38 ├─ /blog/navigating-contradictions-in-life/index.html (+8ms) 20:38:38 ├─ /blog/one-day-at-a-time/index.html (+9ms) 20:38:38 ├─ /blog/one-month-after-leaving-the-internet-and-leaving-everyone-believing-im-still-active/index.html (+8ms) 20:38:38 ├─ /blog/pomodoro-tech/index.html (+8ms) 20:38:38 ├─ /blog/pretending-to-be-okay/index.html (+9ms) 20:38:38 ├─ /blog/reflections-of-a-conflicted-impostor/index.html (+8ms) 20:38:38 ├─ /blog/reflections-on-solitude-and-superficiality/index.html (+8ms) 20:38:38 ├─ /blog/reflections-on-the-fear-of-failure-and-seeking-recognition/index.html (+9ms) 20:38:38 ├─ /blog/roadmap-front-end/index.html (+9ms) 20:38:38 ├─ /blog/sometimes-humans-just-need-to-sit-in-one-place-and-like-hurt/index.html (+8ms) 20:38:38 ├─ /blog/the-art-of-starting-over/index.html (+9ms) 20:38:38 ├─ /blog/the-latest-trends-in-artificial-intelligence-and-their-impact-on-business/index.html (+9ms) 20:38:38 ├─ /blog/the-pleasure-of-doing-nothing/index.html (+8ms) 20:38:38 ├─ /blog/the-problem-is-me/index.html (+9ms) 20:38:38 ├─ /blog/the-unconventional-bonds-of-friendship-and-solitude/index.html (+8ms) 20:38:38 ├─ /blog/tools-and-products-that-i-use-everyday/index.html (+9ms) 20:38:38 ├─ /blog/waking-up-app/index.html (+9ms) 20:38:38 ├─ /blog/what-if-everything-goes-wrong/index.html (+8ms) 20:38:38 ├─ /blog/what-is-sql-server-and-sql/index.html (+9ms) 20:38:38 ├─ /blog/when-everything-begins-to-happen-within/index.html (+9ms) 20:38:38 ├─ /blog/why-i-abandoned-social-media/index.html (+8ms) 20:38:38 ├─ /blog/why-this-site-is-smaller/index.html (+14ms) 20:38:38 ├─ /blog/work-travel-cultures-decisions/index.html (+9ms) 20:38:38 ├─ /projects/this-website/index.html (+5ms) 20:38:38 ├─ /rss.xml (+40ms) 20:38:39 ├─ /snippets/bitwarden-remove-duplicates/index.html (+6ms) 20:38:39 ├─ /snippets/cloudflare-worker-load-balancer-health-check/index.html (+6ms) 20:38:39 ├─ /snippets/discord-ollama-bot/index.html (+5ms) 20:38:39 ├─ /snippets/docker-cleanup-without-surprises/index.html (+4ms) 20:38:39 ├─ /snippets/mistral-agents-openwebui-pipe/index.html (+5ms) 20:38:39 ├─ /snippets/mkcd-bash-function/index.html (+4ms) 20:38:39 ├─ /snippets/remove-duplicated/index.html (+5ms) 20:38:39 ├─ /snippets/set-linux-cpu-governor-to-schedutil/index.html (+5ms) 20:38:39 ├─ /snippets/vscode-config/index.html (+6ms) 20:38:39 ├─ /de/blog/coisas-que-eu-gostaria-que-tivessem-me-dito-quando-entrei-na-faculdade-de-ti/index.html (+12ms) 20:38:39 ├─ /fr/blog/coisas-que-eu-gostaria-que-tivessem-me-dito-quando-entrei-na-faculdade-de-ti/index.html (+9ms) 20:38:39 ├─ /ja/blog/coisas-que-eu-gostaria-que-tivessem-me-dito-quando-entrei-na-faculdade-de-ti/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/coisas-que-eu-gostaria-que-tivessem-me-dito-quando-entrei-na-faculdade-de-ti/index.html (+10ms) 20:38:39 ├─ /zh-cn/blog/coisas-que-eu-gostaria-que-tivessem-me-dito-quando-entrei-na-faculdade-de-ti/index.html (+9ms) 20:38:39 ├─ /de/blog/confessing-my-stupidity/index.html (+7ms) 20:38:39 ├─ /fr/blog/confessing-my-stupidity/index.html (+8ms) 20:38:39 ├─ /ja/blog/confessing-my-stupidity/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/confessing-my-stupidity/index.html (+7ms) 20:38:39 ├─ /zh-cn/blog/confessing-my-stupidity/index.html (+9ms) 20:38:39 ├─ /de/blog/conselhos-que-eu-gostaria-de-ter-ouvido-quando-comecei-na-tecnologia/index.html (+9ms) 20:38:39 ├─ /fr/blog/conselhos-que-eu-gostaria-de-ter-ouvido-quando-comecei-na-tecnologia/index.html (+9ms) 20:38:39 ├─ /ja/blog/conselhos-que-eu-gostaria-de-ter-ouvido-quando-comecei-na-tecnologia/index.html (+19ms) 20:38:39 ├─ /pt-br/blog/conselhos-que-eu-gostaria-de-ter-ouvido-quando-comecei-na-tecnologia/index.html (+13ms) 20:38:39 ├─ /zh-cn/blog/conselhos-que-eu-gostaria-de-ter-ouvido-quando-comecei-na-tecnologia/index.html (+10ms) 20:38:39 ├─ /de/blog/dappling/index.html (+10ms) 20:38:39 ├─ /fr/blog/dappling/index.html (+9ms) 20:38:39 ├─ /ja/blog/dappling/index.html (+9ms) 20:38:39 ├─ /pt-br/blog/dappling/index.html (+10ms) 20:38:39 ├─ /zh-cn/blog/dappling/index.html (+9ms) 20:38:39 ├─ /de/blog/disconnected/index.html (+8ms) 20:38:39 ├─ /fr/blog/disconnected/index.html (+8ms) 20:38:39 ├─ /ja/blog/disconnected/index.html (+7ms) 20:38:39 ├─ /pt-br/blog/disconnected/index.html (+8ms) 20:38:39 ├─ /zh-cn/blog/disconnected/index.html (+9ms) 20:38:39 ├─ /de/blog/echoes-of-a-conflicted-impostor/index.html (+8ms) 20:38:39 ├─ /fr/blog/echoes-of-a-conflicted-impostor/index.html (+8ms) 20:38:39 ├─ /ja/blog/echoes-of-a-conflicted-impostor/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/echoes-of-a-conflicted-impostor/index.html (+8ms) 20:38:39 ├─ /zh-cn/blog/echoes-of-a-conflicted-impostor/index.html (+9ms) 20:38:39 ├─ /de/blog/embracing-feelings-indifference/index.html (+10ms) 20:38:39 ├─ /fr/blog/embracing-feelings-indifference/index.html (+8ms) 20:38:39 ├─ /ja/blog/embracing-feelings-indifference/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/embracing-feelings-indifference/index.html (+9ms) 20:38:39 ├─ /zh-cn/blog/embracing-feelings-indifference/index.html (+8ms) 20:38:39 ├─ /de/blog/how-privacy-has-become-increasingly-important/index.html (+8ms) 20:38:39 ├─ /fr/blog/how-privacy-has-become-increasingly-important/index.html (+10ms) 20:38:39 ├─ /ja/blog/how-privacy-has-become-increasingly-important/index.html (+9ms) 20:38:39 ├─ /pt-br/blog/how-privacy-has-become-increasingly-important/index.html (+9ms) 20:38:39 ├─ /zh-cn/blog/how-privacy-has-become-increasingly-important/index.html (+9ms) 20:38:39 ├─ /de/blog/how-to-plan-a-productive-day/index.html (+8ms) 20:38:39 ├─ /fr/blog/how-to-plan-a-productive-day/index.html (+8ms) 20:38:39 ├─ /ja/blog/how-to-plan-a-productive-day/index.html (+10ms) 20:38:39 ├─ /pt-br/blog/how-to-plan-a-productive-day/index.html (+8ms) 20:38:39 ├─ /zh-cn/blog/how-to-plan-a-productive-day/index.html (+8ms) 20:38:39 ├─ /de/blog/i-dont-care/index.html (+10ms) 20:38:39 ├─ /fr/blog/i-dont-care/index.html (+9ms) 20:38:39 ├─ /ja/blog/i-dont-care/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/i-dont-care/index.html (+10ms) 20:38:39 ├─ /zh-cn/blog/i-dont-care/index.html (+9ms) 20:38:39 ├─ /de/blog/i-think-i-was-born-in-the-wrong-generation/index.html (+8ms) 20:38:39 ├─ /fr/blog/i-think-i-was-born-in-the-wrong-generation/index.html (+10ms) 20:38:39 ├─ /ja/blog/i-think-i-was-born-in-the-wrong-generation/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/i-think-i-was-born-in-the-wrong-generation/index.html (+8ms) 20:38:39 ├─ /zh-cn/blog/i-think-i-was-born-in-the-wrong-generation/index.html (+9ms) 20:38:39 ├─ /de/blog/i-was-born-in-the-wrong-generation/index.html (+8ms) 20:38:39 ├─ /fr/blog/i-was-born-in-the-wrong-generation/index.html (+8ms) 20:38:39 ├─ /ja/blog/i-was-born-in-the-wrong-generation/index.html (+10ms) 20:38:39 ├─ /pt-br/blog/i-was-born-in-the-wrong-generation/index.html (+8ms) 20:38:39 ├─ /zh-cn/blog/i-was-born-in-the-wrong-generation/index.html (+8ms) 20:38:39 ├─ /de/blog/i-would-like-to-die-but-i-dont-want-to-die/index.html (+9ms) 20:38:39 ├─ /fr/blog/i-would-like-to-die-but-i-dont-want-to-die/index.html (+8ms) 20:38:39 ├─ /ja/blog/i-would-like-to-die-but-i-dont-want-to-die/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/i-would-like-to-die-but-i-dont-want-to-die/index.html (+9ms) 20:38:39 ├─ /zh-cn/blog/i-would-like-to-die-but-i-dont-want-to-die/index.html (+8ms) 20:38:39 ├─ /de/blog/im-glad-youre-here-dont-go-anywhere/index.html (+7ms) 20:38:39 ├─ /fr/blog/im-glad-youre-here-dont-go-anywhere/index.html (+8ms) 20:38:39 ├─ /ja/blog/im-glad-youre-here-dont-go-anywhere/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/im-glad-youre-here-dont-go-anywhere/index.html (+8ms) 20:38:39 ├─ /zh-cn/blog/im-glad-youre-here-dont-go-anywhere/index.html (+9ms) 20:38:39 ├─ /de/blog/im-proud-of-you/index.html (+7ms) 20:38:39 ├─ /fr/blog/im-proud-of-you/index.html (+7ms) 20:38:39 ├─ /ja/blog/im-proud-of-you/index.html (+9ms) 20:38:39 ├─ /pt-br/blog/im-proud-of-you/index.html (+7ms) 20:38:39 ├─ /zh-cn/blog/im-proud-of-you/index.html (+7ms) 20:38:39 ├─ /de/blog/my-last-goodbye/index.html (+9ms) 20:38:39 ├─ /fr/blog/my-last-goodbye/index.html (+8ms) 20:38:39 ├─ /ja/blog/my-last-goodbye/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/my-last-goodbye/index.html (+9ms) 20:38:39 ├─ /zh-cn/blog/my-last-goodbye/index.html (+8ms) 20:38:39 ├─ /de/blog/navigating-contradictions-in-life/index.html (+8ms) 20:38:39 ├─ /fr/blog/navigating-contradictions-in-life/index.html (+8ms) 20:38:39 ├─ /ja/blog/navigating-contradictions-in-life/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/navigating-contradictions-in-life/index.html (+7ms) 20:38:39 ├─ /zh-cn/blog/navigating-contradictions-in-life/index.html (+8ms) 20:38:39 ├─ /de/blog/one-day-at-a-time/index.html (+15ms) 20:38:39 ├─ /fr/blog/one-day-at-a-time/index.html (+10ms) 20:38:39 ├─ /ja/blog/one-day-at-a-time/index.html (+9ms) 20:38:39 ├─ /pt-br/blog/one-day-at-a-time/index.html (+8ms) 20:38:39 ├─ /zh-cn/blog/one-day-at-a-time/index.html (+8ms) 20:38:39 ├─ /de/blog/one-month-after-leaving-the-internet-and-leaving-everyone-believing-im-still-active/index.html (+9ms) 20:38:39 ├─ /fr/blog/one-month-after-leaving-the-internet-and-leaving-everyone-believing-im-still-active/index.html (+8ms) 20:38:39 ├─ /ja/blog/one-month-after-leaving-the-internet-and-leaving-everyone-believing-im-still-active/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/one-month-after-leaving-the-internet-and-leaving-everyone-believing-im-still-active/index.html (+9ms) 20:38:39 ├─ /zh-cn/blog/one-month-after-leaving-the-internet-and-leaving-everyone-believing-im-still-active/index.html (+8ms) 20:38:39 ├─ /de/blog/pomodoro-tech/index.html (+8ms) 20:38:39 ├─ /fr/blog/pomodoro-tech/index.html (+10ms) 20:38:39 ├─ /ja/blog/pomodoro-tech/index.html (+8ms) 20:38:39 ├─ /pt-br/blog/pomodoro-tech/index.html (+8ms) 20:38:39 ├─ /zh-cn/blog/pomodoro-tech/index.html (+9ms) 20:38:39 ├─ /de/blog/pretending-to-be-okay/index.html (+8ms) 20:38:39 ├─ /fr/blog/pretending-to-be-okay/index.html (+8ms) 20:38:39 ├─ /ja/blog/pretending-to-be-okay/index.html (+9ms) 20:38:39 ├─ /pt-br/blog/pretending-to-be-okay/index.html (+8ms) 20:38:39 ├─ /zh-cn/blog/pretending-to-be-okay/index.html (+8ms) 20:38:39 ├─ /de/blog/reflections-of-a-conflicted-impostor/index.html (+9ms) 20:38:40 ├─ /fr/blog/reflections-of-a-conflicted-impostor/index.html (+8ms) 20:38:40 ├─ /ja/blog/reflections-of-a-conflicted-impostor/index.html (+7ms) 20:38:40 ├─ /pt-br/blog/reflections-of-a-conflicted-impostor/index.html (+8ms) 20:38:40 ├─ /zh-cn/blog/reflections-of-a-conflicted-impostor/index.html (+8ms) 20:38:40 ├─ /de/blog/reflections-on-solitude-and-superficiality/index.html (+8ms) 20:38:40 ├─ /fr/blog/reflections-on-solitude-and-superficiality/index.html (+10ms) 20:38:40 ├─ /ja/blog/reflections-on-solitude-and-superficiality/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/reflections-on-solitude-and-superficiality/index.html (+8ms) 20:38:40 ├─ /zh-cn/blog/reflections-on-solitude-and-superficiality/index.html (+9ms) 20:38:40 ├─ /de/blog/reflections-on-the-fear-of-failure-and-seeking-recognition/index.html (+8ms) 20:38:40 ├─ /fr/blog/reflections-on-the-fear-of-failure-and-seeking-recognition/index.html (+8ms) 20:38:40 ├─ /ja/blog/reflections-on-the-fear-of-failure-and-seeking-recognition/index.html (+9ms) 20:38:40 ├─ /pt-br/blog/reflections-on-the-fear-of-failure-and-seeking-recognition/index.html (+8ms) 20:38:40 ├─ /zh-cn/blog/reflections-on-the-fear-of-failure-and-seeking-recognition/index.html (+8ms) 20:38:40 ├─ /de/blog/roadmap-front-end/index.html (+10ms) 20:38:40 ├─ /fr/blog/roadmap-front-end/index.html (+9ms) 20:38:40 ├─ /ja/blog/roadmap-front-end/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/roadmap-front-end/index.html (+10ms) 20:38:40 ├─ /zh-cn/blog/roadmap-front-end/index.html (+9ms) 20:38:40 ├─ /de/blog/sometimes-humans-just-need-to-sit-in-one-place-and-like-hurt/index.html (+9ms) 20:38:40 ├─ /fr/blog/sometimes-humans-just-need-to-sit-in-one-place-and-like-hurt/index.html (+10ms) 20:38:40 ├─ /ja/blog/sometimes-humans-just-need-to-sit-in-one-place-and-like-hurt/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/sometimes-humans-just-need-to-sit-in-one-place-and-like-hurt/index.html (+8ms) 20:38:40 ├─ /zh-cn/blog/sometimes-humans-just-need-to-sit-in-one-place-and-like-hurt/index.html (+9ms) 20:38:40 ├─ /de/blog/the-art-of-starting-over/index.html (+8ms) 20:38:40 ├─ /fr/blog/the-art-of-starting-over/index.html (+8ms) 20:38:40 ├─ /ja/blog/the-art-of-starting-over/index.html (+9ms) 20:38:40 ├─ /pt-br/blog/the-art-of-starting-over/index.html (+8ms) 20:38:40 ├─ /zh-cn/blog/the-art-of-starting-over/index.html (+8ms) 20:38:40 ├─ /de/blog/the-latest-trends-in-artificial-intelligence-and-their-impact-on-business/index.html (+10ms) 20:38:40 ├─ /fr/blog/the-latest-trends-in-artificial-intelligence-and-their-impact-on-business/index.html (+9ms) 20:38:40 ├─ /ja/blog/the-latest-trends-in-artificial-intelligence-and-their-impact-on-business/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/the-latest-trends-in-artificial-intelligence-and-their-impact-on-business/index.html (+9ms) 20:38:40 ├─ /zh-cn/blog/the-latest-trends-in-artificial-intelligence-and-their-impact-on-business/index.html (+8ms) 20:38:40 ├─ /de/blog/the-pleasure-of-doing-nothing/index.html (+8ms) 20:38:40 ├─ /fr/blog/the-pleasure-of-doing-nothing/index.html (+13ms) 20:38:40 ├─ /ja/blog/the-pleasure-of-doing-nothing/index.html (+11ms) 20:38:40 ├─ /pt-br/blog/the-pleasure-of-doing-nothing/index.html (+13ms) 20:38:40 ├─ /zh-cn/blog/the-pleasure-of-doing-nothing/index.html (+13ms) 20:38:40 ├─ /de/blog/the-problem-is-me/index.html (+57ms) 20:38:40 ├─ /fr/blog/the-problem-is-me/index.html (+9ms) 20:38:40 ├─ /ja/blog/the-problem-is-me/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/the-problem-is-me/index.html (+9ms) 20:38:40 ├─ /zh-cn/blog/the-problem-is-me/index.html (+8ms) 20:38:40 ├─ /de/blog/the-unconventional-bonds-of-friendship-and-solitude/index.html (+8ms) 20:38:40 ├─ /fr/blog/the-unconventional-bonds-of-friendship-and-solitude/index.html (+9ms) 20:38:40 ├─ /ja/blog/the-unconventional-bonds-of-friendship-and-solitude/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/the-unconventional-bonds-of-friendship-and-solitude/index.html (+8ms) 20:38:40 ├─ /zh-cn/blog/the-unconventional-bonds-of-friendship-and-solitude/index.html (+8ms) 20:38:40 ├─ /de/blog/tools-and-products-that-i-use-everyday/index.html (+8ms) 20:38:40 ├─ /fr/blog/tools-and-products-that-i-use-everyday/index.html (+8ms) 20:38:40 ├─ /ja/blog/tools-and-products-that-i-use-everyday/index.html (+9ms) 20:38:40 ├─ /pt-br/blog/tools-and-products-that-i-use-everyday/index.html (+8ms) 20:38:40 ├─ /zh-cn/blog/tools-and-products-that-i-use-everyday/index.html (+8ms) 20:38:40 ├─ /de/blog/waking-up-app/index.html (+9ms) 20:38:40 ├─ /fr/blog/waking-up-app/index.html (+8ms) 20:38:40 ├─ /ja/blog/waking-up-app/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/waking-up-app/index.html (+9ms) 20:38:40 ├─ /zh-cn/blog/waking-up-app/index.html (+8ms) 20:38:40 ├─ /de/blog/what-if-everything-goes-wrong/index.html (+8ms) 20:38:40 ├─ /fr/blog/what-if-everything-goes-wrong/index.html (+8ms) 20:38:40 ├─ /ja/blog/what-if-everything-goes-wrong/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/what-if-everything-goes-wrong/index.html (+8ms) 20:38:40 ├─ /zh-cn/blog/what-if-everything-goes-wrong/index.html (+8ms) 20:38:40 ├─ /de/blog/what-is-sql-server-and-sql/index.html (+9ms) 20:38:40 ├─ /fr/blog/what-is-sql-server-and-sql/index.html (+9ms) 20:38:40 ├─ /ja/blog/what-is-sql-server-and-sql/index.html (+11ms) 20:38:40 ├─ /pt-br/blog/what-is-sql-server-and-sql/index.html (+9ms) 20:38:40 ├─ /zh-cn/blog/what-is-sql-server-and-sql/index.html (+10ms) 20:38:40 ├─ /de/blog/when-everything-begins-to-happen-within/index.html (+9ms) 20:38:40 ├─ /fr/blog/when-everything-begins-to-happen-within/index.html (+8ms) 20:38:40 ├─ /ja/blog/when-everything-begins-to-happen-within/index.html (+7ms) 20:38:40 ├─ /pt-br/blog/when-everything-begins-to-happen-within/index.html (+9ms) 20:38:40 ├─ /zh-cn/blog/when-everything-begins-to-happen-within/index.html (+8ms) 20:38:40 ├─ /de/blog/why-i-abandoned-social-media/index.html (+8ms) 20:38:40 ├─ /fr/blog/why-i-abandoned-social-media/index.html (+9ms) 20:38:40 ├─ /ja/blog/why-i-abandoned-social-media/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/why-i-abandoned-social-media/index.html (+8ms) 20:38:40 ├─ /zh-cn/blog/why-i-abandoned-social-media/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/why-this-site-is-smaller/index.html (+12ms) 20:38:40 ├─ /de/blog/work-travel-cultures-decisions/index.html (+9ms) 20:38:40 ├─ /fr/blog/work-travel-cultures-decisions/index.html (+8ms) 20:38:40 ├─ /ja/blog/work-travel-cultures-decisions/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/work-travel-cultures-decisions/index.html (+9ms) 20:38:40 ├─ /zh-cn/blog/work-travel-cultures-decisions/index.html (+8ms) 20:38:40 ├─ /pt-br/projects/this-website/index.html (+4ms) 20:38:40 ├─ /de/snippets/bitwarden-remove-duplicates/index.html (+4ms) 20:38:40 ├─ /fr/snippets/bitwarden-remove-duplicates/index.html (+4ms) 20:38:40 ├─ /ja/snippets/bitwarden-remove-duplicates/index.html (+4ms) 20:38:40 ├─ /pt-br/snippets/bitwarden-remove-duplicates/index.html (+4ms) 20:38:40 ├─ /zh-cn/snippets/bitwarden-remove-duplicates/index.html (+4ms) 20:38:40 ├─ /de/snippets/cloudflare-worker-load-balancer-health-check/index.html (+5ms) 20:38:40 ├─ /fr/snippets/cloudflare-worker-load-balancer-health-check/index.html (+5ms) 20:38:40 ├─ /ja/snippets/cloudflare-worker-load-balancer-health-check/index.html (+5ms) 20:38:40 ├─ /pt-br/snippets/cloudflare-worker-load-balancer-health-check/index.html (+7ms) 20:38:40 ├─ /zh-cn/snippets/cloudflare-worker-load-balancer-health-check/index.html (+8ms) 20:38:40 ├─ /de/snippets/discord-ollama-bot/index.html (+5ms) 20:38:40 ├─ /fr/snippets/discord-ollama-bot/index.html (+5ms) 20:38:40 ├─ /ja/snippets/discord-ollama-bot/index.html (+5ms) 20:38:40 ├─ /pt-br/snippets/discord-ollama-bot/index.html (+4ms) 20:38:40 ├─ /zh-cn/snippets/discord-ollama-bot/index.html (+4ms) 20:38:40 ├─ /pt-br/snippets/docker-cleanup-without-surprises/index.html (+4ms) 20:38:40 ├─ /de/snippets/mistral-agents-openwebui-pipe/index.html (+5ms) 20:38:40 ├─ /fr/snippets/mistral-agents-openwebui-pipe/index.html (+5ms) 20:38:40 ├─ /ja/snippets/mistral-agents-openwebui-pipe/index.html (+5ms) 20:38:40 ├─ /pt-br/snippets/mistral-agents-openwebui-pipe/index.html (+5ms) 20:38:40 ├─ /zh-cn/snippets/mistral-agents-openwebui-pipe/index.html (+5ms) 20:38:40 ├─ /de/snippets/mkcd-bash-function/index.html (+4ms) 20:38:40 ├─ /fr/snippets/mkcd-bash-function/index.html (+3ms) 20:38:40 ├─ /ja/snippets/mkcd-bash-function/index.html (+4ms) 20:38:40 ├─ /pt-br/snippets/mkcd-bash-function/index.html (+3ms) 20:38:40 ├─ /zh-cn/snippets/mkcd-bash-function/index.html (+6ms) 20:38:40 ├─ /de/snippets/remove-duplicated/index.html (+5ms) 20:38:40 ├─ /fr/snippets/remove-duplicated/index.html (+4ms) 20:38:40 ├─ /ja/snippets/remove-duplicated/index.html (+4ms) 20:38:40 ├─ /pt-br/snippets/remove-duplicated/index.html (+4ms) 20:38:40 ├─ /zh-cn/snippets/remove-duplicated/index.html (+4ms) 20:38:40 ├─ /de/snippets/set-linux-cpu-governor-to-schedutil/index.html (+4ms) 20:38:40 ├─ /fr/snippets/set-linux-cpu-governor-to-schedutil/index.html (+4ms) 20:38:40 ├─ /ja/snippets/set-linux-cpu-governor-to-schedutil/index.html (+4ms) 20:38:40 ├─ /pt-br/snippets/set-linux-cpu-governor-to-schedutil/index.html (+4ms) 20:38:40 ├─ /zh-cn/snippets/set-linux-cpu-governor-to-schedutil/index.html (+4ms) 20:38:40 ├─ /de/snippets/vscode-config/index.html (+5ms) 20:38:40 ├─ /fr/snippets/vscode-config/index.html (+6ms) 20:38:40 ├─ /ja/snippets/vscode-config/index.html (+6ms) 20:38:40 ├─ /pt-br/snippets/vscode-config/index.html (+5ms) 20:38:40 ├─ /zh-cn/snippets/vscode-config/index.html (+8ms) 20:38:40 ├─ /pt-br/blog/index.html (+17ms) 20:38:41 ├─ /pt-br/snippets/index.html (+6ms) 20:38:41 ├─ /pt-br/projects/index.html (+3ms) 20:38:41 ├─ /pt-br/about/index.html (+4ms) 20:38:41 ├─ /pt-br/contact/index.html (+2ms) 20:38:41 ├─ /ja/blog/index.html (+13ms) 20:38:41 ├─ /ja/snippets/index.html (+5ms) 20:38:41 ├─ /ja/projects/index.html (+2ms) 20:38:41 ├─ /ja/about/index.html (+2ms) 20:38:41 ├─ /ja/contact/index.html (+2ms) 20:38:41 ├─ /zh-cn/blog/index.html (+14ms) 20:38:41 ├─ /zh-cn/snippets/index.html (+6ms) 20:38:41 ├─ /zh-cn/projects/index.html (+2ms) 20:38:41 ├─ /zh-cn/about/index.html (+2ms) 20:38:41 ├─ /zh-cn/contact/index.html (+2ms) 20:38:41 ├─ /de/blog/index.html (+16ms) 20:38:41 ├─ /de/snippets/index.html (+7ms) 20:38:41 ├─ /de/projects/index.html (+2ms) 20:38:41 ├─ /de/about/index.html (+2ms) 20:38:41 ├─ /de/contact/index.html (+2ms) 20:38:41 ├─ /fr/blog/index.html (+17ms) 20:38:41 ├─ /fr/snippets/index.html (+7ms) 20:38:41 ├─ /fr/projects/index.html (+2ms) 20:38:41 ├─ /fr/about/index.html (+2ms) 20:38:41 ├─ /fr/contact/index.html (+2ms) 20:38:41 ├─ /pt-br/index.html (+9ms) 20:38:41 ├─ /ja/index.html (+9ms) 20:38:41 ├─ /zh-cn/index.html (+8ms) 20:38:41 ├─ /de/index.html (+8ms) 20:38:41 ├─ /fr/index.html (+9ms) 20:38:41 ├─ /blog/index.html (+15ms) 20:38:41 ├─ /snippets/index.html (+7ms) 20:38:41 ├─ /projects/index.html (+3ms) 20:38:41 ├─ /about/index.html (+2ms) 20:38:41 ├─ /contact/index.html (+2ms) 20:38:41 ├─ /index.html (+9ms) 20:38:41 ✓ Completed in 3.74s. 20:38:41 [build] ✓ Completed in 7.31s. 20:38:41 [@astrojs/sitemap] `sitemap-index.xml` created at `dist` 20:38:42 [pagefind] Pagefind indexed 318 pages 20:38:42 [pagefind] Pagefind wrote index to /home/cloud/github/beta-website/dist/pagefind 20:38:42 [build] 318 page(s) built in 9.86s 20:38:42 [build] Complete! - Static build succeeds (318 pages) - [x] [WARN] Unsupported engine: wanted: {"node":"24.x"} (current: {"node":"v22.23.1","pnpm":"11.8.0"}) TAP version 13 # Subtest: normalizes code language labels and common aliases ok 1 - normalizes code language labels and common aliases --- duration_ms: 1.043364 type: 'test' ... # Subtest: keeps unknown languages and falls back for missing metadata ok 2 - keeps unknown languages and falls back for missing metadata --- duration_ms: 0.182636 type: 'test' ... # Subtest: validates and humanizes content slugs ok 3 - validates and humanizes content slugs --- duration_ms: 1.250092 type: 'test' ... # Subtest: creates an English source once and refuses to overwrite it ok 4 - creates an English source once and refuses to overwrite it --- duration_ms: 9.952297 type: 'test' ... # Subtest: reports missing translations without failing non-strict validation ok 5 - reports missing translations without failing non-strict validation --- duration_ms: 8.843688 type: 'test' ... # Subtest: promotes missing translations to errors in strict mode ok 6 - promotes missing translations to errors in strict mode --- duration_ms: 3.966414 type: 'test' ... # Subtest: rejects a locale that does not match its filename ok 7 - rejects a locale that does not match its filename --- duration_ms: 7.831353 type: 'test' ... # Subtest: parses grouped content IDs ok 8 - parses grouped content IDs --- duration_ms: 1.948837 type: 'test' ... # Subtest: rejects malformed content IDs and unsupported locales ok 9 - rejects malformed content IDs and unsupported locales --- duration_ms: 0.572307 type: 'test' ... # Subtest: estimates reading time for word-based and CJK content ok 10 - estimates reading time for word-based and CJK content --- duration_ms: 0.623178 type: 'test' ... # Subtest: preserves the original calendar date and timezone text ok 11 - preserves the original calendar date and timezone text --- duration_ms: 1.389083 type: 'test' ... # Subtest: converts legacy callouts and removes legacy more markers ok 12 - converts legacy callouts and removes legacy more markers --- duration_ms: 0.732772 type: 'test' ... # Subtest: normalizes Markdown hard breaks outside fenced code ok 13 - normalizes Markdown hard breaks outside fenced code --- duration_ms: 0.47651 type: 'test' ... # Subtest: normalizes known legacy slugs and assigns explicit taxonomy ok 14 - normalizes known legacy slugs and assigns explicit taxonomy --- duration_ms: 1.967666 type: 'test' ... # Subtest: keeps dry-run read-only and refuses to overwrite existing content ok 15 - keeps dry-run read-only and refuses to overwrite existing content --- duration_ms: 41.806912 type: 'test' ... # Subtest: applies migration atomically without changing the legacy source ok 16 - applies migration atomically without changing the legacy source --- duration_ms: 20.896802 type: 'test' ... # Subtest: merges project taxonomy in editorial order ok 17 - merges project taxonomy in editorial order --- duration_ms: 1.773681 type: 'test' ... # Subtest: removes duplicate and empty project taxonomy labels ok 18 - removes duplicate and empty project taxonomy labels --- duration_ms: 0.205179 type: 'test' ... # Subtest: normalizes standalone project labels without changing their order ok 19 - normalizes standalone project labels without changing their order --- duration_ms: 0.184724 type: 'test' ... # Subtest: detects supported locale prefixes and defaults to English ok 20 - detects supported locale prefixes and defaults to English --- duration_ms: 1.07899 type: 'test' ... # Subtest: strips locale prefixes while preserving a normalized trailing slash ok 21 - strips locale prefixes while preserving a normalized trailing slash --- duration_ms: 0.259143 type: 'test' ... # Subtest: generates localized paths without prefixing English ok 22 - generates localized paths without prefixing English --- duration_ms: 0.255875 type: 'test' ... 1..22 # tests 22 # suites 0 # pass 22 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 795.358698 - All 22 tests pass - [x] [WARN] Unsupported engine: wanted: {"node":"24.x"} (current: {"node":"v22.23.1","pnpm":"11.8.0"}) Checked 282 content files; 12 translations missing. - Content validation passes (12 pre-existing missing translations) ### Notes - astro-pagefind 2.0.0 works because project uses (not the deprecated component) - Peer dependency warning for astro-pagefind is expected (issue upstream #155, PR #156) - Node 22.23.1 used locally (engine spec is 24.x, CI will use correct version)
Sign in to join this conversation.
No description provided.