You can use the config.x configuration in combination with config_for to configure global settings for your Rails 4.2+ application...

edgeapi.rubyonrails.org

The linked article suggests an interesting way to speed up tests of Rails + Postgres apps: PostgreSQL allows the creation of...

Getting an entire test suite green can be a tedious task which involves frequent switches between the CLI that is...

This Capistrano task runs a command on all servers. bundle exec cap production app:run cmd='zgrep -P "..." RAILS_ROOT/log/production.log...

In the Gitlab settings the flag Auto-cancel redundant pipelines is enabled by default. This auto-cancels jobs that have...

makandracards.com

A general overview about why and how we migrate can be found under Migrating from Elasticsearch to Opensearch

OpenAI is currently limiting the Audio generating API endpoint to text bodies with a maximum of 4096 characters.

makandra dev

Getting CSS (and JS) live reloading to work in a esbuild / Rails project is a bit of a hassle, but...

tl;dr You can use ordered to ensure that messages are received in a specific order. Example expect(ClassA).to...

When you find similar groups of expect calls in your tests, you can improve readability by extracting the group into...

docs.ruby-lang.org

The sprintf method has a reference by name format option: sprintf("% d : % f", { :foo => 1, :bar => 2 }) # => 1 : 2.000000

ruby-doc.org

Ruby has the class Rational which allows you to store exact fractions. Any calculation on these variables will now use...

Every modern Rails app should have a Content Security Policy enabled. Very compatible default The following "default" is a minimal...

While upgrading CarrierWave from version 0.11.x to 3.x, we encountered some very nasty fails. Below are the basic...

All direct child directories of app are automatically added to the eager- and autoload paths. They do NOT create a...

On the Rails console, assigning an object to a variable can lead to this strange error (without stacktrace): irb > recipient...

In the discussion of the difference between include and extend in Ruby, there is a misconception that extend would add...

selenium.dev

I recently stumbled over a problem that my feature tests broke in CI because of a mismatching chromedriver version.

Given you have an array column like this: create_table "users", force: :cascade do |t| t.integer "movie_ids", default: [], array...

thegnar.com

View specs are a powerful tool to test several rendering paths by their cases instead of using a more costing...

The recommended additional setup of the spreewald gem, a useful set of cucumber steps, includes adding a file for defining...

rspec.info

Note Don't use reruns as a mean to work around flaky tests. You should always try to fix those...

ruby-doc.org

Do you remember finding where a method is defined? I recently learned from a senior colleague that Method objects are...

github.com

The linked rbenv plugin rbenv-each is very helpful to keep QoL gems up to date that are not part...