github.com

For my computer science bachelor's thesis I programmed and evaluated a CLI Test Case Prioritization (TCP) tool for makandra...

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

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.

Capybara allows you to filter elements that are focused. page.find(:fillable_field, focused: true) # Filtering only fillable inputs for performance...

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

If you want to collapse/expand elements with dynamic content (and thus unknown height), you can not transition between height: 0...

When you write your next CarrierWave uploader, consider processing your images with libvips instead of ImageMagick. Reasons for libvips

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

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

Debugging your integration tests, that run a headless Chrome inside a docker image, is tricky. In many cases you can...

makandra dev

The rubocop binary has a few interesting flags: rubocop (using the --parallel default ) scans the current repository for linting issues...

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

content-security-policy.com

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

To navigate between test and test subject Rubymine requires you to set the test root sources as Test Sources Root...

If you're using a Redis cache in Rails (e.g. :redis_cache_store), it's possible to configure additional parameters...