When upgrading Clearance, pay attention whether the password hashing strategy might have changed. Old clearance versions (< 1.0) used SHA1-encrypted...

You can share a state in Ruby with global variables. Even if you should avoid them whenever possible, for debugging...

When an AJAX request raises an exception on the server, Rails will show a minimal error page with only basic...

makandra dev

webpack is a very powerful asset bundler written in node.js to bundle (ES6) JavaScript modules, stylesheets, images, and other assets...

github.com

From Ubuntu 17, rbenv fails to install Ruby below 2.4 because of a mismatching OpenSSL dependency: it needs libssl1.0-dev for...

RubyMine comes with a nice way to grep through your project's files: The finder (ctrl + shift + f). Don't...

If your Ruby project includes a gem like Spreewald that comes with some external step definition, RubyMine does not know...

If rspec hangs with no output and you dont get a backtrace neither with --backtrace nor by just killing it...

In Ruby on Rails, all objects have a useful blank? method. It returns true for nil but also for empty...

The gem json fails to install for Ruby 2.5 if you use a version equal or below 1.8.3.

When installing a gem you can use version comparators like >= or ~>. That way it is possible to fetch the latest...

Cucumber up to version 2 had a neat feature called Step Argument Transforms which was dropped in favor of Cucumber...

If you get requests with values for formats like this: {:locale=>[:de], :formats=>["../../../../../../../../../../etc/services{{"], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby...

Until Capybara 2, node finders that accept a text option were able to find nodes based on rendered text, even...

Download buttons can be difficult to test, especially with Selenium. Depending on browser, user settings and response headers, one of...

An alternative of using a multiple assignment for a Regex are named groups. Especially when your Regex becomes more complicates...

makandra dev
thoughtbot.com

Along with a number of other cool new features and performance improvements, Ruby 2.6 added function composition to the Proc...

Tod is a gem for working with daytimes. That's a tuple of (hour, minute second) without a day, month...

When doing some meta-programming magic and you want to do something for all attributes of a class, you may...

This is a short overview of things that are required to upgrade a project from the Asset Pipeline to Webpacker...

Many mail clients do not support external style sheets. Some even require all styling inline, which means you'll have...

While deploying an Ruby update to an old application these days, we encountered the following misleading error: *** [err :: some-host.makandra.de] You...

Rails' ActiveSupport::TimeWithZone objects have both a timezone code and offset, e.g. Thu, 28 Mar 2019 16:00:00 CET...

We forked trusty memoizer to make two changes: Memoized methods now preserve their arity. Previously all memoized methods had an...