For performance improvements (and to remove the need for eager loading), the ActsAsTaggableOn gem supports caching your tag lists directly...

makandra dev

...is no longer established using sudo per default. Databases created for local development usually belong to the local user an therefore do not need to be accessed using sudo...

makandra dev
web.archive.org

When testing your command line application with Aruba, you might need to stub out other binaries you don't want...

...applications with forms (warp_params will do that for you). But maybe its a better idea to stick to a standard that client libraries know to handle. Tests

...really nice and we implemented it in a similar way like here. In the beginning we tried to remove any duplicated in the schema files. So when a booking had...

Use option:checked to find the currently selected option: select.querySelector('option:checked') Yes, :checked, not :selected. This is the same...

RSpec lets you define the arguments with which you expect a method to be invoked: subject.should_receive(:say).with('hello...

chrisboakes.com

Debouncing a method call delays its execution until after a specified time has passed. If it's called again before...

github.com

Looks simpler than inaction_mailer: gem install mailcatcher mailcatcher Setup Rails to send mails to 127.0.0.1:1025. Usually you want...

When accepting GIF images, you will also accept animated GIFs. Resizing them can be a time-consuming task and will...

Reacting on a class getting added can be done with a mutation observer. Example: const items = document.querySelectorAll('.item') const expectedClass...

When you use a belongs_to or has_many macro you might be surprised that the methods that it generates does not override a method with the same name. Take...

class Project < ActiveRecord::Base def user "foo" end belongs_to :user end Project.new.user still returns "foo". The reason for this is that what belongs_to does is actually...

Partials always define a local variable with the same name as themselves. E.g. when you are in _recent_users.html.erb, a local...

github.com

...spawns another process to run a browser, it will inherit the environment and also believe it lives in that zone. To do so, run the following code before your test...

Ruby methods which load from a Yaml file, like YAML.safe_load or YAML.safe_load_file, support passing freeze: true to...

selenium.dev

...Chrome for Testing if none is found on the system. I worked around this behavior by setting the path to the binary in the selenium initializer Capybara.register_driver :selenium do...

In case you want to use pry with an older version of Ruby, you can try the following configurations.

When you do a bitwise copy using the dd tool you will not see any output until it completes or...

Added: State machine can now use the :prefix-option to avoid name collision if you define multiple state machines on...

=> >> response.code => 422 FYI, the http gem is a great alternative to RestClient which behaves like that by default and has a well-designed API in general (much better than...

github.com

When a method has keyword arguments, Ruby offers implicit conversion of a Hash argument into keyword arguments. This conversion is...

If you want to move a complete commit from one repository to another (and you don't want to add...

The tree command will show you the contents of a directory and all its sub directories as a tree:

makandra dev

...its version number, it is considered a pre-release: 1.0.0.rc1 2.3.0.alpha2 3.0.0.beta3 4.0.0.pre.rc2 Even if a pre-release gem has the highest version number, it is...

...Semantic versioning Converted RubyGems version 1.0.0-rc1 1.0.0.pre.rc1 2.3.0-alpha2 2.3.0.pre.alpha2 3.0.0-beta3 3.0.0.pre.beta3 Note that npm packages force you to use Semantic Versioning's naming convention...

If a Cucumber run deletes your application directory, an integration fail between Capybara and Capybara Screenshot may be the cause...