This Week in Open Source (June 9, 2023)

Sara Jackson

I should really start calling this “This Fortnight in Open Source.” Although, the numbers of changes in this fortnight may convince me that weekly is indeed better.

This fortnight we saw updates to Administrate, Shoulda Matchers, Suspenders, ClearanceI18n, Flightdeck, our dotfiles, our laptop script, and Terraform EKS CI/CD Pipeline.

Administrate

Administrate is a framework for creating flexible, powerful admin dashboards in Rails.

Chris Oliver (excid3) updated a broken documentation URL (0b7332b).

Francois (fbuys) fixed backward compatible Pundit include, ensuring that we remain compatible with Pundit < 2.2.0 (403d688).

Pablo Brasero (pablobm) set the selenium-webdriver gem version to fix a CI issue (95b201d).

Shoulda Matchers

Shoulda Matchers provides simple one-liner tests for common Rails functionality.

Matheus Sales (matsales28) implemented a validate_comparison_of matcher to allow for testing ComparisonValidators added in Rails 7 (95c3928).

Pedro Paiva (VSPPedro) updated the Ruby versions (d43fbb9).

Suspenders

Suspenders is a Rails template with our standard defaults, ready to deploy.

Connor McQuillan (cpjmcquillan) removed a redundant Capybara config (cc924a1).

ClearanceI18n

ClearanceI18n provides translations for Clearance.

Henning Jensen (henningjensen) added Norwegian translations (a242d84).

Valeria Graffeo (heyvaleria) added Italian translations (b1a8410).

dependabotbot bumped a number of gem versions including clearance (9b4a220), activerecord (4119209), activesupport (113aae9), actionpack (24bc6d3), globalid (a3142f9), rails-html-serializer (3e6b679), and rack (af22365).

Flightdeck

Flightdeck provides Terraform modules for rapidly building production-grade Kubernetes clusters following SRE practices.

Clarissa Borges (clarissalimab) allowed metrics with sli prefix to be recorded to federated Prometheus (96ad768).

Olamide (OlamideOl1) added a module to create AWS WAF (Web Application Firewall) resources (2e6ab6f), and a module for extracting CloudWatch logs (0154d5f).

Joe Ferris (jferris) increased timeouts for destroying namespaces to 15 minutes (cac8753), ensured a cluster is created before an ingress (4a96cf6), and added destroying CloudWatch log groups to the cleanup of acceptance test runs (3efab59). He also updated Istio metrics to sum by destination service namespace instead of source namespace (2a83714) and changed the Istio recording rules to include the aggregated bucket values so that they’ll be available for percentile calculations in a managed Prometheus instance (38f8ee3). Lastly, Joe added a trigger to run acceptance tests monthly, relieving the pain of manually running the several-hours-long workflow (83efb70).

dotfiles

thoughtbot dotfiles is a set of vim, zsh, git, and tmux configuration files.

Neil Carvalho (neilvcarvalho) removed the blocking of arrow keys for navigation in Vim to ease collaboration with folks unfamiliar with the Vim and its standard use of h, j, k and l (7eccfea).

Rami Taibah (rtaibah) and Sarah Lima (sarahraqueld) updated the README markdown and fixed a broken logo (a42aa93).

Rami Taibah and Daniel Nolan (danielnolan) added back agignore in order to have the vendor directory ignored by ag (thesilversearcher), since Rails 7 expects the vendor directory to be committed and not in gitignore (322fa4e). Rami and Daniel also updated the check for fzf installed via homebrew (e14f5a3).

Laptop

Laptop is a shell script to set up a macOS laptop for web and mobile development.

Remy Wang (remy727) fixed the check for arm64 architecture (ee1f594).

Joshua Steele (joshukraine) added interpolating HOMEBREW_PREFIX to the zsh path (cd9e43b).

Terraform EKS CI/CD Pipeline

Terraform EKS CI/CD Pipeline creates CI/CD pipelines to deploy applications to EKS clusters.

Joe Ferris (jferris) added the ability to create recording and alerting rules in Managed Prometheus instances during a deploy (167e53e).