Skip to main content

Deploy details

Deploy successful for dannyguo

Add a draft for The Joy of Hackathons

Production: main@e6e90a2

Deploy log

Initializing

Complete
4:34:00 AM: Build ready to start
4:34:19 AM: build-image version: 9a361c83c6a43010ba0aa3ea38214accc0223b2c (focal)
4:34:19 AM: buildbot version: 9a4374dc9e2c1cbd2a152e441d69a3a6d7e12511
4:34:19 AM: Fetching cached dependencies
4:34:19 AM: Failed to fetch cache, continuing with build
4:34:19 AM: Starting to prepare the repo for build
4:34:20 AM: No cached dependencies found. Cloning fresh repo
4:34:20 AM: git clone --filter=blob:none https://github.com/dguo/dannyguo.com
4:34:20 AM: Preparing Git Reference refs/heads/main
4:34:21 AM: Custom publish path detected. Proceeding with the specified path: 'dist'
4:34:21 AM: Custom build command detected. Proceeding with the specified command: 'yarn run build'
4:34:21 AM: Starting to install dependencies
4:34:22 AM: mise python@3.13.2 install
4:34:22 AM: mise python@3.13.2 download cpython-3.13.2+20250212-x86_64-unknown-linux-gnu-install_only_stripped.tar.gz
4:34:23 AM: mise python@3.13.2 extract cpython-3.13.2+20250212-x86_64-unknown-linux-gnu-install_only_stripped.tar.gz
4:34:23 AM: mise python@3.13.2 python --version
4:34:23 AM: mise python@3.13.2 Python 3.13.2
4:34:23 AM: mise python@3.13.2 installed
4:34:23 AM: Python version set to 3.13
4:34:25 AM: Collecting pipenv
4:34:25 AM: Downloading pipenv-2024.4.1-py3-none-any.whl.metadata (17 kB)
4:34:25 AM: Collecting certifi (from pipenv)
4:34:25 AM: Downloading certifi-2025.1.31-py3-none-any.whl.metadata (2.5 kB)
4:34:25 AM: Collecting packaging>=22 (from pipenv)
4:34:25 AM: Downloading packaging-24.2-py3-none-any.whl.metadata (3.2 kB)
4:34:25 AM: Collecting setuptools>=67 (from pipenv)
4:34:25 AM: Downloading setuptools-75.8.2-py3-none-any.whl.metadata (6.7 kB)
4:34:25 AM: Collecting virtualenv>=20.24.2 (from pipenv)
4:34:25 AM: Downloading virtualenv-20.29.2-py3-none-any.whl.metadata (4.5 kB)
4:34:25 AM: Collecting distlib<1,>=0.3.7 (from virtualenv>=20.24.2->pipenv)
4:34:25 AM: Downloading distlib-0.3.9-py2.py3-none-any.whl.metadata (5.2 kB)
4:34:25 AM: Collecting filelock<4,>=3.12.2 (from virtualenv>=20.24.2->pipenv)
4:34:26 AM: Downloading filelock-3.17.0-py3-none-any.whl.metadata (2.9 kB)
4:34:26 AM: Collecting platformdirs<5,>=3.9.1 (from virtualenv>=20.24.2->pipenv)
4:34:26 AM: Downloading platformdirs-4.3.6-py3-none-any.whl.metadata (11 kB)
4:34:26 AM: Downloading pipenv-2024.4.1-py3-none-any.whl (3.0 MB)
4:34:26 AM: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.0/3.0 MB 49.6 MB/s eta 0:00:00
4:34:26 AM: Downloading packaging-24.2-py3-none-any.whl (65 kB)
4:34:26 AM: Downloading setuptools-75.8.2-py3-none-any.whl (1.2 MB)
4:34:26 AM: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 81.1 MB/s eta 0:00:00
4:34:26 AM: Downloading virtualenv-20.29.2-py3-none-any.whl (4.3 MB)
4:34:26 AM: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.3/4.3 MB 141.4 MB/s eta 0:00:00
4:34:26 AM: Downloading certifi-2025.1.31-py3-none-any.whl (166 kB)
4:34:26 AM: Downloading distlib-0.3.9-py2.py3-none-any.whl (468 kB)
4:34:26 AM: Downloading filelock-3.17.0-py3-none-any.whl (16 kB)
4:34:26 AM: Downloading platformdirs-4.3.6-py3-none-any.whl (18 kB)
4:34:26 AM: Installing collected packages: distlib, setuptools, platformdirs, packaging, filelock, certifi, virtualenv, pipenv
4:34:28 AM: Successfully installed certifi-2025.1.31 distlib-0.3.9 filelock-3.17.0 packaging-24.2 pipenv-2024.4.1 platformdirs-4.3.6 setuptools-75.8.2 virtualenv-20.29.2
4:34:28 AM: [notice] A new release of pip is available: 24.3.1 -> 25.0.1
4:34:28 AM: [notice] To update, run: pip install --upgrade pip
4:34:29 AM: Attempting Ruby version 2.6.2, read from environment
4:34:29 AM: Required ruby-2.6.2 is not installed - installing.
4:34:29 AM: Searching for binary rubies, this might take some time.
4:34:29 AM: Checking requirements for ubuntu.
4:34:30 AM: Requirements installation successful.
4:34:30 AM: ruby-2.6.2 - #configure
4:34:30 AM: ruby-2.6.2 - #download
4:34:30 AM: ruby-2.6.2 - #validate archive
4:34:33 AM: ruby-2.6.2 - #extract
4:34:35 AM: ruby-2.6.2 - #validate binary
4:34:35 AM: ruby-2.6.2 - #setup
4:34:36 AM: ruby-2.6.2 - #gemset created /opt/buildhome/.rvm/gems/ruby-2.6.2@global
4:34:36 AM: ruby-2.6.2 - #importing gemset /opt/buildhome/.rvm/gemsets/global.gems........................................
4:34:36 AM: ruby-2.6.2 - #generating global wrappers........
4:34:36 AM: ruby-2.6.2 - #gemset created /opt/buildhome/.rvm/gems/ruby-2.6.2
4:34:36 AM: ruby-2.6.2 - #importing gemsetfile /opt/buildhome/.rvm/gemsets/default.gems evaluated to empty gem list
4:34:36 AM: ruby-2.6.2 - #generating default wrappers........
4:34:37 AM: Using /opt/buildhome/.rvm/gems/ruby-2.6.2
4:34:37 AM: Using Ruby version 2.6.2
4:34:37 AM: Started restoring cached go cache
4:34:37 AM: Finished restoring cached go cache
4:34:38 AM: Installing Go version 1.12 (requested 1.12)
4:34:41 AM: go version go1.12 linux/amd64
4:34:42 AM: Using PHP version 8.0
4:34:43 AM: Attempting Node.js version '18.14.0' from .nvmrc
4:34:44 AM: Downloading and installing node v18.14.0...
4:34:44 AM: Computing checksum with sha256sum
4:34:44 AM: Checksums matched!
4:34:46 AM: Now using node v18.14.0 (npm v9.3.1)
4:34:46 AM: Enabling Node.js Corepack
4:34:46 AM: Started restoring cached build plugins
4:34:46 AM: Finished restoring cached build plugins
4:34:46 AM: Started restoring cached corepack dependencies
4:34:46 AM: Finished restoring cached corepack dependencies
4:34:46 AM: Started restoring cached yarn cache
4:34:46 AM: Finished restoring cached yarn cache
4:34:47 AM: Installing Yarn version 1.17.0
4:34:47 AM: Preparing yarn@1.17.0 for immediate activation...
4:34:47 AM: No yarn workspaces detected
4:34:47 AM: Started restoring cached node modules
4:34:47 AM: Finished restoring cached node modules
4:34:48 AM: Installing npm packages using Yarn version 4.0.2
4:34:48 AM: ➤ YN0000: · Yarn 4.0.2
4:34:48 AM: ➤ YN0000: ┌ Resolution step
4:34:49 AM: ➤ YN0000: └ Completed
4:34:49 AM: ➤ YN0000: ┌ Fetch step
4:35:06 AM: ➤ YN0013: │ 1042 packages were added to the project (+ 81.18 MiB).
4:35:06 AM: ➤ YN0000: └ Completed in 16s 973ms
4:35:06 AM: ➤ YN0000: ┌ Link step
4:35:09 AM: ➤ YN0007: │ esbuild@npm:0.17.19 must be built because it never has been before or the last one failed
4:35:09 AM: ➤ YN0007: │ esbuild@npm:0.18.13 must be built because it never has been before or the last one failed
4:35:10 AM: ➤ YN0000: └ Completed in 3s 916ms
4:35:10 AM: ➤ YN0000: · Done in 21s 224ms
4:35:10 AM: npm packages installed using Yarn
4:35:11 AM: Successfully installed dependencies
4:35:11 AM: Starting build script
4:35:12 AM: Detected 1 framework(s)
4:35:12 AM: "astro" at version "2.8.3"
4:35:12 AM: Section completed: initializing

Building

Complete
4:35:14 AM: Netlify Build
4:35:14 AM: ────────────────────────────────────────────────────────────────
4:35:14 AM:
4:35:14 AM: ❯ Version
4:35:14 AM: @netlify/build 29.59.2
4:35:14 AM:
4:35:14 AM: ❯ Flags
4:35:14 AM: accountId: 5990d896cf321c0b5f109efd
4:35:14 AM: baseRelDir: false
4:35:14 AM: buildId: 67c3dfb8ad99300008b8d433
4:35:14 AM: deployId: 67c3dfb8ad99300008b8d435
4:35:14 AM:
4:35:14 AM: ❯ Current directory
4:35:14 AM: /opt/build/repo
4:35:14 AM:
4:35:14 AM: ❯ Config file
4:35:14 AM: /opt/build/repo/netlify.toml
4:35:14 AM:
4:35:14 AM: ❯ Context
4:35:14 AM: production
4:35:14 AM:
4:35:14 AM: build.command from netlify.toml
4:35:14 AM: ────────────────────────────────────────────────────────────────
4:35:14 AM: ​
4:35:14 AM: $ yarn run build
4:35:16 AM: 04:35:16 AM [content] No content directory found. Skipping type generation.
4:35:16 AM: 04:35:16 AM [build] output target: static
4:35:16 AM: 04:35:16 AM [build] Collecting build info...
4:35:16 AM: 04:35:16 AM [build] Completed in 323ms.
4:35:16 AM: 04:35:16 AM [build] Building static entrypoints...
4:35:22 AM: 04:35:22 AM [build] Completed in 6.30s.
4:35:22 AM:
4:35:22 AM: building client
4:35:23 AM: Completed in 1.23s.
4:35:23 AM:
4:35:23 AM:
4:35:23 AM: generating static routes
4:35:23 AM: src/pages/index.md
4:35:23 AM: └─ /index.html (+11ms)
4:35:23 AM: src/pages/newsletter.astro
4:35:23 AM: └─ /newsletter/index.html (+6ms)
4:35:23 AM: λ src/pages/robots.txt.js
4:35:23 AM: └─ /robots.txt (+1ms)
4:35:23 AM: src/pages/referrals.md
4:35:23 AM: └─ /referrals/index.html (+2ms)
4:35:23 AM: src/pages/friction.md
4:35:23 AM: └─ /friction/index.html (+3ms)
4:35:23 AM: src/pages/problems.md
4:35:23 AM: └─ /problems/index.html (+2ms)
4:35:23 AM: src/pages/projects.md
4:35:23 AM: └─ /projects/index.html (+2ms)
4:35:23 AM: src/pages/search.astro
4:35:23 AM: └─ /search/index.html (+2ms)
4:35:23 AM: src/pages/about.md
4:35:23 AM: └─ /about/index.html (+2ms)
4:35:23 AM: src/pages/books.md
4:35:23 AM: └─ /books/index.html (+2ms)
4:35:23 AM: src/pages/music.md
4:35:23 AM: └─ /music/index.html (+2ms)
4:35:23 AM: src/pages/blog/index.astro
4:35:23 AM: └─ /blog/index.html (+71ms)
4:35:23 AM: src/pages/blog/how-to-use-tasker-to-block-spam-phone-calls-from-a-certain-area-code-on-android.md
4:35:23 AM: └─ /blog/how-to-use-tasker-to-block-spam-phone-calls-from-a-certain-area-code-on-android/index.html (+6ms)
4:35:23 AM: src/pages/blog/how-to-use-a-samsung-galaxy-watch4-as-a-heart-rate-monitor-for-a-peloton-bike.md
4:35:23 AM: └─ /blog/how-to-use-a-samsung-galaxy-watch4-as-a-heart-rate-monitor-for-a-peloton-bike/index.html (+4ms)
4:35:23 AM: src/pages/blog/how-to-fix-instanceof-not-working-for-custom-errors-in-typescript.md
4:35:23 AM: └─ /blog/how-to-fix-instanceof-not-working-for-custom-errors-in-typescript/index.html (+3ms)
4:35:23 AM: src/pages/blog/how-to-check-if-a-javascript-string-begins-or-ends-with-a-string.md
4:35:23 AM: └─ /blog/how-to-check-if-a-javascript-string-begins-or-ends-with-a-string/index.html (+3ms)
4:35:23 AM: src/pages/blog/how-to-enforce-exhaustive-typescript-enum-mappings-using-records.md
4:35:23 AM: └─ /blog/how-to-enforce-exhaustive-typescript-enum-mappings-using-records/index.html (+2ms)
4:35:23 AM: src/pages/blog/how-to-prevent-a-website-page-from-showing-up-in-search-results.md
4:35:23 AM: └─ /blog/how-to-prevent-a-website-page-from-showing-up-in-search-results/index.html (+2ms)
4:35:23 AM: src/pages/blog/how-to-use-newlines-in-an-environment-variable-file-for-docker.md
4:35:23 AM: └─ /blog/how-to-use-newlines-in-an-environment-variable-file-for-docker/index.html (+2ms)
4:35:23 AM: src/pages/blog/how-to-add-copy-to-clipboard-buttons-to-code-blocks-in-hugo.md
4:35:23 AM: └─ /blog/how-to-add-copy-to-clipboard-buttons-to-code-blocks-in-hugo/index.html (+2ms)
4:35:23 AM: src/pages/blog/how-to-replace-all-instances-of-a-substring-in-javascript.md
4:35:23 AM: └─ /blog/how-to-replace-all-instances-of-a-substring-in-javascript/index.html (+4ms)
4:35:23 AM: src/pages/blog/how-to-improve-interface-responsiveness-with-web-workers.mdx
4:35:23 AM: └─ /blog/how-to-improve-interface-responsiveness-with-web-workers/index.html (+14ms)
4:35:23 AM: src/pages/blog/how-to-break-and-continue-in-nested-loops-in-javascript.md
4:35:23 AM: └─ /blog/how-to-break-and-continue-in-nested-loops-in-javascript/index.html (+2ms)
4:35:23 AM: src/pages/blog/optional-chaining-and-nullish-coalescing-in-javascript.md
4:35:23 AM: └─ /blog/optional-chaining-and-nullish-coalescing-in-javascript/index.html (+2ms)
4:35:23 AM: ⚠️ Skipping draft src/pages/blog/the-leap-from-computer-science-to-software-engineering.md
4:35:23 AM: src/pages/blog/using-mailgun-for-a-free-custom-domain-email-address.mdx
4:35:23 AM: └─ /blog/using-mailgun-for-a-free-custom-domain-email-address/index.html (+5ms)
4:35:23 AM: src/pages/blog/how-to-disable-5g-for-a-samsung-galaxy-s21-fe-phone.md
4:35:23 AM: └─ /blog/how-to-disable-5g-for-a-samsung-galaxy-s21-fe-phone/index.html (+2ms)
4:35:23 AM: src/pages/blog/rendering-sibling-elements-in-react-using-fragments.md
4:35:23 AM: └─ /blog/rendering-sibling-elements-in-react-using-fragments/index.html (+2ms)
4:35:23 AM: src/pages/blog/using-fuse.js-to-add-dynamic-search-to-a-react-app.md
4:35:23 AM: └─ /blog/using-fuse.js-to-add-dynamic-search-to-a-react-app/index.html (+3ms)
4:35:23 AM: ⚠️ Skipping draft src/pages/blog/contributing-to-retirement-as-a-medical-resident.md
4:35:23 AM: src/pages/blog/how-to-convert-any-javascript-value-to-a-boolean.md
4:35:23 AM: └─ /blog/how-to-convert-any-javascript-value-to-a-boolean/index.html (+2ms)
4:35:23 AM: ⚠️ Skipping draft src/pages/blog/one-year-of-spaced-repetition-learning-with-anki.md
4:35:23 AM: ⚠️ Skipping draft src/pages/blog/manage-your-dotfiles-and-configuration-with-git.md
4:35:23 AM: src/pages/blog/migrating-from-authy-to-bitwarden-for-2fa-codes.md
4:35:23 AM: └─ /blog/migrating-from-authy-to-bitwarden-for-2fa-codes/index.html (+2ms)
4:35:23 AM: src/pages/blog/updating-my-favicon-courtesy-of-randall-munroe.md
4:35:23 AM: └─ /blog/updating-my-favicon-courtesy-of-randall-munroe/index.html (+2ms)
4:35:23 AM: src/pages/blog/automating-turbotax-data-entry-with-puppeteer.mdx
4:35:23 AM: └─ /blog/automating-turbotax-data-entry-with-puppeteer/index.html (+7ms)
4:35:23 AM: src/pages/blog/fixing-macbook-pro-thermal-performance-issues.md
4:35:23 AM: └─ /blog/fixing-macbook-pro-thermal-performance-issues/index.html (+2ms)
4:35:23 AM: src/pages/blog/thinking-in-binaries-spectrums-and-dimensions.md
4:35:23 AM: └─ /blog/thinking-in-binaries-spectrums-and-dimensions/index.html (+2ms)
4:35:23 AM: src/pages/blog/animated-multiline-link-underlines-with-css.mdx
4:35:23 AM: └─ /blog/animated-multiline-link-underlines-with-css/index.html (+4ms)
4:35:23 AM: src/pages/blog/forex-trading-for-fun-and-luckily-profit.md
4:35:23 AM: └─ /blog/forex-trading-for-fun-and-luckily-profit/index.html (+2ms)
4:35:23 AM: src/pages/blog/how-to-keep-your-js-libraries-up-to-date.md
4:35:23 AM: └─ /blog/how-to-keep-your-js-libraries-up-to-date/index.html (+2ms)
4:35:23 AM: src/pages/blog/the-introductory-guide-to-assemblyscript.md
4:35:23 AM: └─ /blog/the-introductory-guide-to-assemblyscript/index.html (+2ms)
4:35:23 AM: src/pages/blog/I-published-my-aws-secret-key-to-github.md
4:35:23 AM: └─ /blog/I-published-my-aws-secret-key-to-github/index.html (+2ms)
4:35:23 AM: ⚠️ Skipping draft src/pages/blog/my-checklist-for-opening-a-pull-request.md
4:35:23 AM: src/pages/blog/a-code-review-of-my-earliest-projects.md
4:35:23 AM: └─ /blog/a-code-review-of-my-earliest-projects/index.html (+4ms)
4:35:23 AM: src/pages/blog/remap-caps-lock-to-escape-and-control.md
4:35:23 AM: └─ /blog/remap-caps-lock-to-escape-and-control/index.html (+2ms)
4:35:23 AM: src/pages/blog/how-to-get-a-free-s-mime-certificate.md
4:35:23 AM: └─ /blog/how-to-get-a-free-s-mime-certificate/index.html (+2ms)
4:35:23 AM: src/pages/blog/is-safari-the-next-internet-explorer.md
4:35:23 AM: └─ /blog/is-safari-the-next-internet-explorer/index.html (+2ms)
4:35:23 AM: src/pages/blog/software-engineering-manager-tactics.md
4:35:23 AM: └─ /blog/software-engineering-manager-tactics/index.html (+3ms)
4:35:23 AM: ⚠️ Skipping draft src/pages/blog/the-state-of-static-websites-in-2018.md
4:35:23 AM: src/pages/blog/how-to-use-git-bisect-for-debugging.md
4:35:23 AM: └─ /blog/how-to-use-git-bisect-for-debugging/index.html (+3ms)
4:35:23 AM: src/pages/blog/my-credit-and-debit-card-collection.mdx
4:35:23 AM: └─ /blog/my-credit-and-debit-card-collection/index.html (+3ms)
4:35:23 AM: ⚠️ Skipping draft src/pages/blog/ultimate-hacking-keyboard-v2-review.md
4:35:23 AM: src/pages/blog/google-banned-me-from-google-voice.md
4:35:23 AM: └─ /blog/google-banned-me-from-google-voice/index.html (+4ms)
4:35:23 AM: src/pages/blog/my-cat-alerted-me-to-a-ddos-attack.md
4:35:23 AM: └─ /blog/my-cat-alerted-me-to-a-ddos-attack/index.html (+2ms)
4:35:23 AM: src/pages/blog/start-with-a-minimum-viable-system.md
4:35:23 AM: └─ /blog/start-with-a-minimum-viable-system/index.html (+2ms)
4:35:23 AM: src/pages/blog/how-to-concatenate-strings-in-lua.md
4:35:23 AM: └─ /blog/how-to-concatenate-strings-in-lua/index.html (+3ms)
4:35:23 AM: src/pages/blog/momath-hackathon-2018-vortex-pool.mdx
4:35:23 AM: └─ /blog/momath-hackathon-2018-vortex-pool/index.html (+3ms)
4:35:23 AM: src/pages/blog/what-i-learned-by-relearning-html.md
4:35:23 AM: └─ /blog/what-i-learned-by-relearning-html/index.html (+2ms)
4:35:23 AM: src/pages/blog/how-to-swap-column-values-in-sql.md
4:35:23 AM: └─ /blog/how-to-swap-column-values-in-sql/index.html (+2ms)
4:35:23 AM: src/pages/blog/prefer-numbered-lists-to-bullets.md
4:35:23 AM: └─ /blog/prefer-numbered-lists-to-bullets/index.html (+2ms)
4:35:23 AM: src/pages/blog/the-history-and-legacy-of-jquery.md
4:35:23 AM: └─ /blog/the-history-and-legacy-of-jquery/index.html (+2ms)
4:35:23 AM: src/pages/blog/building-dynamic-firefox-themes.mdx
4:35:23 AM: └─ /blog/building-dynamic-firefox-themes/index.html (+5ms)
4:35:23 AM: src/pages/blog/custom-website-selection-colors.mdx
4:35:24 AM: └─ /blog/custom-website-selection-colors/index.html (+4ms)
4:35:24 AM: src/pages/blog/how-to-get-icloud-plus-for-free.md
4:35:24 AM: └─ /blog/how-to-get-icloud-plus-for-free/index.html (+2ms)
4:35:24 AM: src/pages/blog/the-decline-of-the-macbook-pro.md
4:35:24 AM: └─ /blog/the-decline-of-the-macbook-pro/index.html (+2ms)
4:35:24 AM: src/pages/blog/automating-my-air-conditioner.md
4:35:24 AM: └─ /blog/automating-my-air-conditioner/index.html (+2ms)
4:35:24 AM: ⚠️ Skipping draft src/pages/blog/how-i-pay-less-for-everything.md
4:35:24 AM: src/pages/blog/how-to-handle-pii-in-websites.md
4:35:24 AM: └─ /blog/how-to-handle-pii-in-websites/index.html (+3ms)
4:35:24 AM: src/pages/blog/migrating-from-jekyll-to-hugo.md
4:35:24 AM: └─ /blog/migrating-from-jekyll-to-hugo/index.html (+2ms)
4:35:24 AM: src/pages/blog/my-seatbelt-rule-for-judgment.md
4:35:24 AM: └─ /blog/my-seatbelt-rule-for-judgment/index.html (+2ms)
4:35:24 AM: src/pages/blog/serve-videos-instead-of-gifs.mdx
4:35:24 AM: └─ /blog/serve-videos-instead-of-gifs/index.html (+5ms)
4:35:24 AM: src/pages/blog/my-indoor-air-quality-setup.mdx
4:35:24 AM: └─ /blog/my-indoor-air-quality-setup/index.html (+3ms)
4:35:24 AM: src/pages/blog/clearing-mac-storage-space.md
4:35:24 AM: └─ /blog/clearing-mac-storage-space/index.html (+2ms)
4:35:24 AM: src/pages/blog/building-a-hyper-key-tree.md
4:35:24 AM: └─ /blog/building-a-hyper-key-tree/index.html (+2ms)
4:35:24 AM: src/pages/blog/debates-as-competitions.md
4:35:24 AM: └─ /blog/debates-as-competitions/index.html (+2ms)
4:35:24 AM: src/pages/blog/playwright-vs-puppeteer.md
4:35:24 AM: └─ /blog/playwright-vs-puppeteer/index.html (+2ms)
4:35:24 AM: src/pages/blog/digital-security-coach.md
4:35:24 AM: └─ /blog/digital-security-coach/index.html (+2ms)
4:35:24 AM: src/pages/blog/the-black-hole-problem.md
4:35:24 AM: └─ /blog/the-black-hole-problem/index.html (+2ms)
4:35:24 AM: src/pages/blog/my-peloton-desk-setup.md
4:35:24 AM: └─ /blog/my-peloton-desk-setup/index.html (+2ms)
4:35:24 AM: src/pages/blog/the-joy-of-hackathons.md
4:35:24 AM: └─ /blog/the-joy-of-hackathons/index.html (+3ms)
4:35:24 AM: src/pages/blog/the-power-of-the-link.md
4:35:24 AM: └─ /blog/the-power-of-the-link/index.html (+2ms)
4:35:24 AM: src/pages/blog/how-i-do-code-review.md
4:35:24 AM: └─ /blog/how-i-do-code-review/index.html (+2ms)
4:35:24 AM: src/pages/blog/making-make-a-readme.mdx
4:35:24 AM: └─ /blog/making-make-a-readme/index.html (+3ms)
4:35:24 AM: src/pages/blog/philanthropy-for-all.md
4:35:24 AM: └─ /blog/philanthropy-for-all/index.html (+2ms)
4:35:24 AM: src/pages/blog/a-tribute-to-kindle.md
4:35:24 AM: └─ /blog/a-tribute-to-kindle/index.html (+2ms)
4:35:24 AM: ⚠️ Skipping draft src/pages/blog/credit-card-rewards.md
4:35:24 AM: ⚠️ Skipping draft src/pages/blog/my-salary-history.md
4:35:24 AM: src/pages/blog/beben-x8-review.md
4:35:24 AM: └─ /blog/beben-x8-review/index.html (+2ms)
4:35:24 AM: src/pages/blog/splurge-stopper.md
4:35:24 AM: └─ /blog/splurge-stopper/index.html (+2ms)
4:35:24 AM: src/pages/blog/beat-the-drum.md
4:35:24 AM: └─ /blog/beat-the-drum/index.html (+2ms)
4:35:24 AM: src/pages/blog/great-writing.md
4:35:24 AM: └─ /blog/great-writing/index.html (+3ms)
4:35:24 AM: ⚠️ Skipping draft src/pages/blog/better-cding.md
4:35:24 AM: src/pages/blog/morning-joy.md
4:35:24 AM: └─ /blog/morning-joy/index.html (+2ms)
4:35:24 AM: src/pages/blog/why-i-blog.md
4:35:24 AM: └─ /blog/why-i-blog/index.html (+2ms)
4:35:24 AM: λ src/pages/blog/feed.xml.js
4:35:24 AM: └─ /blog/feed.xml (+20ms)
4:35:24 AM: src/pages/food.md
4:35:24 AM: └─ /food/index.html (+2ms)
4:35:24 AM: src/pages/keys.md
4:35:24 AM: └─ /keys/index.html (+2ms)
4:35:24 AM: src/pages/404.astro
4:35:24 AM: └─ /404.html (+1ms)
4:35:24 AM: Completed in 422ms.
4:35:24 AM:
4:35:24 AM: @astrojs/sitemap: `sitemap-index.xml` is created.
4:35:24 AM: 04:35:24 AM [build] 86 page(s) built in 8.31s
4:35:24 AM: 04:35:24 AM [build] Complete!
4:35:24 AM: ​
4:35:24 AM: (build.command completed in 9.8s)
4:35:24 AM:
4:35:24 AM: (Netlify Build completed in 10.2s)
4:36:13 AM: Section completed: building
4:36:23 AM: Finished processing build request in 2m4.025s

Deploying

Complete
4:35:24 AM: Deploy site
4:35:24 AM: ────────────────────────────────────────────────────────────────
4:35:24 AM: ​
4:35:24 AM: Starting to deploy site from 'dist'
4:35:24 AM: Calculating files to upload
4:35:24 AM: 1 new file(s) to upload
4:35:24 AM: 0 new function(s) to upload
4:35:24 AM: Section completed: deploying
4:35:24 AM: Site deploy was successfully initiated
4:35:24 AM: ​
4:35:24 AM: (Deploy site completed in 343ms)

Cleanup

Complete
4:35:24 AM: Netlify Build Complete
4:35:24 AM: ────────────────────────────────────────────────────────────────
4:35:24 AM: ​
4:35:25 AM: Caching artifacts
4:35:25 AM: Started saving node modules
4:35:25 AM: Finished saving node modules
4:35:25 AM: Started saving build plugins
4:35:25 AM: Finished saving build plugins
4:35:25 AM: Started saving mise cache
4:35:33 AM: Finished saving mise cache
4:35:33 AM: Started saving corepack cache
4:35:33 AM: Finished saving corepack cache
4:35:33 AM: Started saving yarn cache
4:35:33 AM: Finished saving yarn cache
4:35:33 AM: Started saving pip cache
4:35:33 AM: Finished saving pip cache
4:35:33 AM: Started saving emacs cask dependencies
4:35:33 AM: Finished saving emacs cask dependencies
4:35:33 AM: Started saving maven dependencies
4:35:33 AM: Finished saving maven dependencies
4:35:33 AM: Started saving boot dependencies
4:35:33 AM: Finished saving boot dependencies
4:35:33 AM: Started saving rust rustup cache
4:35:33 AM: Finished saving rust rustup cache
4:35:33 AM: Started saving go dependencies
4:35:33 AM: Finished saving go dependencies
4:36:13 AM: Cached Ruby version 2.6.2
4:36:13 AM: Build script success
4:36:22 AM: Uploading Cache of size 330.3MB
4:36:23 AM: Section completed: cleanup

Post-processing

Complete
4:35:24 AM: Skipping form detection
4:35:24 AM: Post processing - header rules
4:35:24 AM: Post processing - redirect rules
4:35:24 AM: Post processing done
4:35:24 AM: Section completed: postprocessing
4:35:24 AM: Starting post processing
4:35:25 AM: Site is live ✨