From 494c5c9f93d61b5c3743d3d498609e36b9d533aa Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 8 Nov 2025 01:13:13 +0000 Subject: [PATCH 1/8] Fix CI: Update actions/checkout from v2 to v4 The deprecated actions/checkout@v2 was causing CI failures. Updated to v4 which is the current stable version and resolves compatibility issues with modern GitHub Actions runners. --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dcb9d5a..0f8b47b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,7 +5,7 @@ jobs: name: Build Jekyll runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Build the site in the jekyll/builder container run: | export JEKYLL_VERSION=3.8 From 8e141ac68e99199e370be92dfda83e51f89f85a4 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 8 Nov 2025 11:53:33 +0000 Subject: [PATCH 2/8] Fix Jekyll build: Add missing frontmatter to draft posts Several draft files were missing the required YAML frontmatter, causing Jekyll to fail with exit code 5. Added proper frontmatter to: - !dogfight-milestone.md - !gunner-assist.md - !physics-engine.md - !pilot-assists.md All draft files now have the required layout, title, subtitle, and tags fields. --- _drafts/!dogfight-milestone.md | 6 ++++++ _drafts/!gunner-assist.md | 7 ++++++- _drafts/!physics-engine.md | 7 ++++++- _drafts/!pilot-assists.md | 8 +++++++- 4 files changed, 25 insertions(+), 3 deletions(-) diff --git a/_drafts/!dogfight-milestone.md b/_drafts/!dogfight-milestone.md index a523ae7..e45e110 100644 --- a/_drafts/!dogfight-milestone.md +++ b/_drafts/!dogfight-milestone.md @@ -1 +1,7 @@ +--- +layout: post +title: Dogfight Milestone +subtitle: +tags: [] +--- the overall story of the 1st milestone diff --git a/_drafts/!gunner-assist.md b/_drafts/!gunner-assist.md index 8b13789..0655de2 100644 --- a/_drafts/!gunner-assist.md +++ b/_drafts/!gunner-assist.md @@ -1 +1,6 @@ - +--- +layout: post +title: Gunner Assist +subtitle: +tags: [] +--- diff --git a/_drafts/!physics-engine.md b/_drafts/!physics-engine.md index 8b13789..e4f904e 100644 --- a/_drafts/!physics-engine.md +++ b/_drafts/!physics-engine.md @@ -1 +1,6 @@ - +--- +layout: post +title: Physics Engine +subtitle: +tags: [] +--- diff --git a/_drafts/!pilot-assists.md b/_drafts/!pilot-assists.md index cc38f32..cf3731d 100644 --- a/_drafts/!pilot-assists.md +++ b/_drafts/!pilot-assists.md @@ -1,5 +1,11 @@ +--- +layout: post +title: Pilot Assists +subtitle: +tags: [] +--- - max speed - velocity, direct, target - - anti-drift -> breaks + - anti-drift -> breaks - reserve speed (combar maneuvering) From dbfd49370076d3c609c8a12b227d7660a8e9f980 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 8 Nov 2025 11:55:55 +0000 Subject: [PATCH 3/8] Add verbose output to Jekyll build for debugging Added --verbose and --trace flags to see the actual build error in CI logs. --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0f8b47b..504e202 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,4 +12,4 @@ jobs: docker run \ -v ${{ github.workspace }}:/srv/jekyll -v ${{ github.workspace }}/_site:/srv/jekyll/_site \ -e PAGES_REPO_NWO=${{ github.repository }} \ - jekyll/builder:$JEKYLL_VERSION /bin/bash -c "chmod 777 /srv/jekyll && jekyll build --future" + jekyll/builder:$JEKYLL_VERSION /bin/bash -c "chmod 777 /srv/jekyll && jekyll build --future --verbose --trace" From 53f612f4668d96503833e2738e2b1945bed7ea81 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 8 Nov 2025 11:57:27 +0000 Subject: [PATCH 4/8] Modernize CI: Replace Docker with native Ruby setup Replaced the Docker-based Jekyll build with the standard ruby/setup-ruby action. This provides: - Better error messages in CI logs - Faster builds with bundler caching - More reliable dependency management - Standard Jekyll CI approach recommended by GitHub --- .github/workflows/ci.yml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 504e202..71beeed 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,10 +6,12 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - name: Build the site in the jekyll/builder container - run: | - export JEKYLL_VERSION=3.8 - docker run \ - -v ${{ github.workspace }}:/srv/jekyll -v ${{ github.workspace }}/_site:/srv/jekyll/_site \ - -e PAGES_REPO_NWO=${{ github.repository }} \ - jekyll/builder:$JEKYLL_VERSION /bin/bash -c "chmod 777 /srv/jekyll && jekyll build --future --verbose --trace" + - name: Setup Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: '3.1' + bundler-cache: true + - name: Build the site + run: bundle exec jekyll build --future --verbose + env: + JEKYLL_ENV: production From 39251dd961186870c90546fa2ed97347cb0b7301 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 8 Nov 2025 11:59:28 +0000 Subject: [PATCH 5/8] Add explicit bundle install step --- .github/workflows/ci.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 71beeed..12ad4d0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,7 +10,10 @@ jobs: uses: ruby/setup-ruby@v1 with: ruby-version: '3.1' - bundler-cache: true + - name: Install dependencies + run: | + gem install bundler + bundle install - name: Build the site run: bundle exec jekyll build --future --verbose env: From d13e9efdb0da95cbd9af3b7d5cf49e1f849b342a Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 8 Nov 2025 14:48:48 +0000 Subject: [PATCH 6/8] Fix devcontainer: Update Ruby from 2.7 to 3.1 The old Ruby 2.7 image was incompatible with the latest bundler which requires Ruby >= 3.2.0. Updated to Ruby 3.1 to match the CI configuration and resolve the devcontainer build failure. This fixes the error: "bundler requires Ruby version >= 3.2.0. The current ruby version is 2.7.8.225." --- .devcontainer/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 0f1e587..548edfa 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,4 +1,4 @@ -FROM mcr.microsoft.com/vscode/devcontainers/ruby:0-2 +FROM mcr.microsoft.com/devcontainers/ruby:3.1 # ENV Variables required by Jekyll ENV LANG=en_US.UTF-8 \ From a3e6c61911f4bd14ea9234f8d93e1c3e5426fa8b Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 8 Nov 2025 15:17:12 +0000 Subject: [PATCH 7/8] Fix devcontainer post-create: Make script executable and add logging The post-create script wasn't executable, preventing automatic gem installation on codespace creation. Changes: - Made script executable (chmod +x) - Switched from sh to bash with set -e for better error handling - Added verbose logging to show installation progress - This ensures gems are installed automatically when the codespace is created Fixes the "bundler: command not found: jekyll" error in codespace tasks. --- .devcontainer/post-create.sh | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) mode change 100644 => 100755 .devcontainer/post-create.sh diff --git a/.devcontainer/post-create.sh b/.devcontainer/post-create.sh old mode 100644 new mode 100755 index 440a9cd..7cd7996 --- a/.devcontainer/post-create.sh +++ b/.devcontainer/post-create.sh @@ -1,10 +1,19 @@ -#!/bin/sh +#!/bin/bash +set -e + +echo "Running post-create setup..." # If there's a Gemfile, then run `bundle install` # It's assumed that the Gemfile will install Jekyll too if [ -f Gemfile ]; then + echo "Installing gems from Gemfile..." bundle install + echo "Gems installed successfully!" else # If there's no Gemfile, install Jekyll + echo "No Gemfile found, installing Jekyll directly..." sudo gem install jekyll + echo "Jekyll installed successfully!" fi + +echo "Post-create setup completed!" From afbf3ac107a55859cfa532453c2380d2adb96d4f Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 8 Nov 2025 15:27:33 +0000 Subject: [PATCH 8/8] Fix bundler permissions: Use local vendor/bundle path The vscode user doesn't have write permissions to the RVM system gem directory. Configured bundler to install gems locally to vendor/bundle instead. Changes: - Updated post-create.sh to configure bundler with local path - Created .bundle/config to persist the setting - Added vendor/bundle to .gitignore - Added vendor/ to Jekyll's exclude list in _config.yml This fixes the "Bundler::PermissionError" when trying to install gems in codespaces. --- .bundle/config | 2 ++ .devcontainer/post-create.sh | 3 +++ .gitignore | 1 + _config.yml | 1 + 4 files changed, 7 insertions(+) create mode 100644 .bundle/config diff --git a/.bundle/config b/.bundle/config new file mode 100644 index 0000000..2369228 --- /dev/null +++ b/.bundle/config @@ -0,0 +1,2 @@ +--- +BUNDLE_PATH: "vendor/bundle" diff --git a/.devcontainer/post-create.sh b/.devcontainer/post-create.sh index 7cd7996..3e536e8 100755 --- a/.devcontainer/post-create.sh +++ b/.devcontainer/post-create.sh @@ -6,6 +6,9 @@ echo "Running post-create setup..." # If there's a Gemfile, then run `bundle install` # It's assumed that the Gemfile will install Jekyll too if [ -f Gemfile ]; then + echo "Configuring bundler to use local path..." + bundle config set --local path 'vendor/bundle' + echo "Installing gems from Gemfile..." bundle install echo "Gems installed successfully!" diff --git a/.gitignore b/.gitignore index e065359..0545b63 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ _site .sass-cache .vagrant +vendor/bundle # general .DS_Store diff --git a/_config.yml b/_config.yml index a6ddc14..c0242f2 100644 --- a/_config.yml +++ b/_config.yml @@ -225,6 +225,7 @@ exclude: - README.md - screenshot.png - docs/ + - vendor/ plugins: - jekyll-paginate