Postgres in Alpine docker container: sorting order might differ
String sort order can change when PostgreSQL runs in an Alpine-based Docker image because locale and collation defaults differ from Debian images.
davetron5000/methadone - GitHub
Ruby framework for building command-line apps with parameter handling, utility classes, and Cucumber support for CLI testing.
Upgrading Cucumber and Capybara to the latest versions available for Rails 2
Rails 2-compatible versions of Cucumber, Capybara, and related gems avoid breakage from newer dependencies and Capybara API changes.
git: find the version of a gem that releases a certain commit
Find the gem version that first contains a commit by using git name-rev --tags; it points to the next release tag after the change.
GitHub Actions: Retrying a failing step
Flaky commands in GitHub Actions can fail intermittently; nick-invision/retry reruns them with a timeout and limited attempts.
Implementing social media "like" buttons: Everything you never wanted to know
Embedding social widgets can expose cookies, trigger background tracking, and slow pages; privacy-friendly two-step buttons and async loading reduce the impact.
How to migrate CoffeeScript files from Sprockets to Webpack(er)
Migrating CoffeeScript from Sprockets to Webpacker can keep existing classes and dependencies working by adding coffee-loader and adjusting imports and global namespace exposure.
How to combine greps on log files opened with tail -f
Chaining grep with tail -f needs --line-buffered, otherwise matches may not appear immediately in a pipeline.
How to revert features for deployment, merge back, and how to stay sane
Feature reverts can block deployment when unfinished work must stay out of production; consolidating reverts into a few commits makes restoring them after release easier.
Linux: Create file of a given size
Create a file with an exact target size on Linux for testing or temp data, using dd or zero-filled writes.
HTTPie nice command line HTTP client
http is a simple command-line client for debugging and testing HTTP servers, REST APIs, and web services with readable defaults and colored output.
Geordi 1.2 released
Geordi 1.2 adds more flexible deploys, better Cucumber reruns and debugging, and reorganized Firefox and VNC command handling.
Making ZSH the default shell on Ubuntu 20.04
ZSH can replace Bash on Ubuntu 20.04 and adds command-line conveniences like completion, corrections, themes, and plugins.
Using local fonts with Webpack / Webpacker
Using self-hosted or purchased fonts with Webpack or Webpacker requires either bundling them from assets or packaging them locally for clean imports.
MongoMapper for Rails 2 on Ruby 1.9
MongoMapper support for Rails 2.3.x on Ruby 1.9 via a forked gem branch; compatible with Ruby 1.8.7, REE, and Ruby 1.9.3.
Ruby: Writing specs for (partially) memoized code
Memoized ActiveRecord values can stay stale in specs even after reload; re-finding the record or clearing memoization avoids false failures.
The new Modularity 2 syntax
Modularity 2 replaces does with include-based traits and new naming rules, with automatic migration support for existing Ruby projects.
rspec_candy 0.2.0 now comes with our most popular matchers
rspec_candy 0.2.0 adds matchers for tolerant number comparison, second-level time equality, and hash subset matching in RSpec.
Testing terminal output with RSpec
Verify Ruby code that writes to the terminal by capturing stdout or stderr with RSpec expectations; heredocs help with multi-line output.
Synchronize a Selenium-controlled browser with Capybara
Selenium actions can return before a page finishes loading, so Ruby updates may race with browser-side changes. A Capybara resynchronization step prevents flaky Cucumber features.
xdissent/ievms - GitHub
Run multiple Internet Explorer versions in separate VirtualBox VMs on Linux or OS X for website testing without Microsoft VirtualPC.
Running Rails 2 apps with modern MariaDB SQL server
Rails 2 apps can break on MySQL 5.7; MariaDB 10.x is a compatible replacement for old and new applications, with gem rebuilds sometimes needed after switching.
Structuring Rails applications: the Modular Monorepo Monolith
Monolithic Rails apps can stay maintainable by splitting code into a monorepo of Rails Engines and gems with explicit component dependencies.
Capistrano 2: How to deploy a single server
Deploy a single server from a multi-server Capistrano setup by using HOSTFILTER to target one host and skip irrelevant tasks.