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...

selenium.dev

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

thegnar.com

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

ruby-doc.org

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

Both knapsack and parallel_tests have the option to split groups by historic execution time. The required logs for this...

The git doc states on the difference of these two commands: git-restore[1] is about restoring files in the...

makandra dev

There are multiple ways to redirect URLs to a different URL in Rails, and they differ in small but important...

Rails' url_for is useful for generating routes from a Hash, but can lead to an open redirect vulnerability.

Rails' Strong Parameters enable you to allow only specific values from request params to e.g. avoid mass assignment.

You can tell npm to install a package globally with npm -g install @puppeteer/browsers. However, it seems that its not...

Rails offers several methods to manage three types of different cookies along with a session storage for cookies. These...

makandra dev

We have a long-standing checklist for merge requests. However, it hardly matches the intricate requirements for design. This checklist...

Splitting up commits makes the process of reviewing often easier, since you can create several merge requests or review every...

Code splitting is a feature of esbuild that can keep huge libraries out of the main bundle. How code splitting...

makandra dev

As we are slowly switching from Cucumber scenarios to RSpec feature specs, you might be tempted to write assertions like...

makandra dev
gist.github.com

Context and further resources Even though you can get 90% of debugging done with up to 5 basic byebug commands...

I recently noticed that better_errors allows you to to open files from within your favorite editor. However it was...

When you allow file uploads in your app, a user might upload content that hurts other users. Our primary concern...

Rack::SteadyETag was a Rack middleware that generates the same default ETag for responses that only differ in XOR-masked...

Every Rails response has a default ETag header. In theory this would enable caching for multiple requests to the same...

tl;dr asdf allows you to manage multiple runtime versions with a single CLI tool and is backwards compatible by...

makandra dev
content-security-policy.com

tl;dr The strict-dynamic source list keyword allows you to simplify your CSP policy by favoring hashes and nonces...

Sidekiq 7 adds a new feature called capsules. Use cases: a chrome queue limited to 1 for e.g. PDF processing...