Postgres supports multiple built-in range datatypes: int4range int8range numrange tsrange (range with timestamp without timezone) tstzrange (range with timestamp...

TypeScript basically uses structural typing, which is conceptually quite similar to duck typing, but with static compile-time type checking...

In some projects we have issues with flaky tests. The best default is to fix them all. But in some...

I use the Gemini web chat interface quite extensively. One thing that is tedious is giving it all the context...

Knapsack allows you to rerun a specific job locally. This is helpful to run specs in the exactly same order...

The :test adapter doesn't respect limits_concurrency configuration. Switch to :solid_queue adapter in your test to verify blocking...

If you use the selenium-webdriver gem, it will sneakily phone home once every hour whenever you run a browser...

makandra dev

Most of our CI pipelines don't use the --retry flag for Cucumber and instead build their own retry via...

Short reference on how to quickly debug the vanilla Rails job adapters. Queue Adapters by Environment Environment Adapter

Finding changes When you're looking for a specific change in Git, there are multiple axes you can choose:

Mise is a tool that can manage your Ruby and Node.js versions. It replaces rbenv and nvm in that regard...

When your Rails application is using Redis as its cache store, this is how you can list existing keys:

Compatibility: Angular 20+ with Jasmine 5.x and Karma 6.x As a default Angular CLI auto-generates test bootstrap...

unpoly.com

Quick guide for frequently used compiler selector patterns of Unpoly. 1. BEM Component Pattern When: Reusable UI components with multiple...

When RSpec sets out to print any given object to the console, it will never print more than 200 characters...

prettier calls itself an opinionated code formatter. I recommend using it for your JavaScript and TypeScript code. prettier only concerns...

makandra dev

Rails log files rotate automatically when they reach approx. 100MB: $ ls -lh log/ -rw-r--r-- 1 user group 55M...

Coverage reports are rarely useful if you run only small parts of your test suite. Just do not load SimpleCov...

RSpec examples can get quite long, especially in feature specs. This makes them hard to read & understand. Also, when executing...

When RSpecs runs the first feature spec, you may see log output like this: Capybara starting Puma... * Version 6.5.0, codename...

ActiveRecord computes table names of model classes, and results are usually just like you'd expect. Adding a prefix for...

Currently we often use geordi to run cucumber and rspec tests. Geordi takes care of installing a matching chromedriver for...

api.rubyonrails.org

In Rails 7.2. the feature ActiveRecord.after_all_transactions_commit was added, for code that may run either inside or outside...

In Rails 7.2 the new default for config.action_dispatch.show_exceptions is rescuable. :rescuable: It will show a Rails error page in...