Skip to content

Ruby 3 modernization: fix legacy, HTTPS/watch, public_url, subfolder support, CI, tests#60

Draft
hennrunnel wants to merge 20 commits intoVoog:masterfrom
hennrunnel:feat/ruby3-modernization
Draft

Ruby 3 modernization: fix legacy, HTTPS/watch, public_url, subfolder support, CI, tests#60
hennrunnel wants to merge 20 commits intoVoog:masterfrom
hennrunnel:feat/ruby3-modernization

Conversation

@hennrunnel
Copy link

Ruby 3 modernization: fix legacy, HTTPS/watch, public_url, subfolder support, CI, tests

  • Upgrade voog-kit to Ruby 3.x (drop 2.7), modernize deps, and resolve longstanding issues. Add tests and manual CI matrix.

Changes

  • Require Ruby >= 3.0; update gemspec dependencies
  • CLI: subfolder root detection; no-color fallback; homepage link fix
  • Assets: download via public_url; text/binary handling; filename slash-safe mapping (with reverse on upload)
  • Manifest: singular asset kinds; preserve layout titles; auto-add missing files on push
  • Error layouts: infer content_type; auto-create 404 on first push if missing
  • Watch: HTTPS propagation verified; Windows note added (may use polling)
  • Docs: Ruby 3.x, HTTPS examples, subfolder note, updated links
  • CI: manual workflow_dispatch; matrix for Ubuntu/macOS/Windows; runs rspec + CLI smoke
  • Tests: RSpec suite included; all green locally

Fixed issues

Testing

  • RSpec: 70 examples passing locally
  • CI (manual): builds on Ubuntu/macOS/Windows; runs rspec and CLI smoke

Notes

  • Breaking: Ruby 3.x required. Proposed version: 0.6.0
  • Windows watch may fall back to polling if native adapters unavailable

hennrunnel added 20 commits August 10, 2025 17:21
…equire Ruby >= 3.0\n- Update dev/runtime deps to current, Ruby 3-compatible ranges\n- Drop rb-readline and old mime-types cap
…inds; preserve titles; default boilerplate via HTTPS; add subfolder-relative path handling
…enerate manifest and IDs accordingly; infer error_404/error_401 content types when creating layouts
…assets; use singular kind in local add_to_manifest
…-create error_404 layout on first push if missing
…and add update_check mention; chore: bump version to 0.6.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment