| Age | Commit message (Expand) | Author |
| 11 days | Fix safe_return_to being uncallable from controllers | erdgeist |
| 11 days | Add self-service event creation from nodes#show | erdgeist |
| 12 days | Add weekday abbreviation for open-today widget | erdgeist |
| 12 days | ascade-destroy occurrences; support events without a fixed start time | erdgeist |
| 12 days | Add 'open today' sidebar widget and open days in chapter lists | erdgeist |
| 12 days | Fix DST drift in occurrence generation | erdgeist |
| 13 days | Add direct edit link to nodes#index | erdgeist |
| 13 days | Rewrite chapter_detail template with humanized event schedule | erdgeist |
| 13 days | Add tagging support to Event model | erdgeist |
| 13 days | Clean up events views: return_to, subnav, remove custom_rrule | erdgeist |
| 14 days | Add RRULE humanizer and wire events into nodes#show | erdgeist |
| 14 days | Fix events CRUD for standalone events and add events to admin menu | erdgeist |
| 14 days | Add chapter_detail template with events and external URL rendering | erdgeist |
| 14 days | Phase 2: chapter nodes, aggregate partial, fixes | erdgeist |
| 14 days | Phase 1: standalone events, external_url on nodes | erdgeist |
| 14 days | Address brakeman security findings | erdgeist |
| 14 days | Permit :admin in params only for admins | erdgeist |
| 14 days | Remove recent_changes RSS feed. It leaks unpublished drafts and the basic auth was only symbolic | erdgeist |
| 14 days | Remove obsolete view | erdgeist |
| 14 days | Remove obsolete partial | erdgeist |
| 14 days | Prevent xss by not allowing return_to to point to javascript resources | erdgeist |
| 14 days | Replace Shadowbox with GLightbox, drop jQuery from public site | erdgeist |
| 14 days | Unify jQuery: serve public site jQuery via asset pipeline | erdgeist |
| 2026-06-30 | Improve admin search overlay layout and behaviour | erdgeist |
| 2026-06-29 | Restore and improve admin node search | erdgeist |
| 2026-06-28 | Fix tag list rendering in node editor | erdgeist |
| 2026-06-27 | rss: add per-tag Atom feed at /rss/tags/:tag/updates.xml | erdgeist |
| 2026-06-27 | rss: fix self link to include .xml suffix | erdgeist |
| 2026-06-27 | Stage 7 click-testing fixes (2) | erdgeist |
| 2026-06-27 | Stage 7 click-testing fixes | erdgeist |
| 2026-06-27 | Fix flash delete for empty flashes | erdgeist |
| 2026-06-27 | Stop forcing escaped HTML into the database just because XML Builder was used wrong | erdgeist |
| 2026-06-27 | Fix routes after removing the routing-filter | erdgeist |
| 2026-06-27 | Stage 7: Rails 7.2 → 8.1 on Ruby 3.2.11 | erdgeist |
| 2026-06-27 | Stage 6 click-testing fixes and production setup | erdgeist |
| 2026-06-27 | Fix I18n::InvalidLocale :root errors | erdgeist |
| 2026-06-26 | Enable full-text search via PostgreSQL tsvector on page_translations | erdgeist |
| 2026-06-26 | Fix ImageMagick 7: use 'magick' instead of deprecated 'convert' | erdgeist |
| 2026-06-26 | Fix RSS feeds, xmlparser initializer | erdgeist |
| 2026-06-26 | Stage 5 click-testing fixes | erdgeist |
| 2026-06-26 | Stage 5 fixes: RouteWithParams removal, Globalize fallbacks, search stub, to_s(:db) → to_fs(:db), LockedByAnotherUser autoload, test environment config | erdgeist |
| 2026-06-26 | Stage 5: Rails 6.1 → 7.2 on Ruby 3.2.11 | erdgeist |
| 2026-06-26 | Stage 4: Rails 5.2 -> 6.1 on Ruby 2.7.2 | erdgeist |
| 2026-06-25 | Rails 5.2 application fixes | erdgeist |
| 2026-06-25 | Rails 4.2 view fixes | erdgeist |
| 2026-06-25 | Rails 4.2 model and controller fixes | erdgeist |
| 2026-06-24 | Fix tagged content aggregator, assets path, and add regression tests | erdgeist |
| 2026-06-24 | Stage 1 complete: Rails 2.3.5 to Rails 3.2.22.5 upgrade | erdgeist |
| 2026-06-23 | Update deployed state to what's currently running | erdgeist |
| 2025-02-06 | Improve worklflow | erdgeist |