Jasmine has long standing support for writing asynchronous specs. In days gone by we used the done callback to achieve...

With ActiveType 1.2 you can modify associations (has_many etc.) after they have been defined. One common use case for...

Not all versions of Node.js are compatible with each other. Also npm packages may require a minimum or maximum version...

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

jQuery has a function $.fn.trigger(). You can use it to dispatch an event on a jQuery object: let $element = $('.foo...

To keep JavaScript sources small, it can sometimes make sense to split your webpack bundles. For example, if your website...

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

We're always striving towards keeping our website's JavaScript as small as possible. If you're using webpack(er...

makandra dev

TL;DR Most web applications do not require action on this. SameSite=None (old browser default) will continue to work...

When delivering non-public uploaded files (images, documents etc), one has to decide whether and how to do authorization. The...

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

To avoid multiple versions of a package, you can manually maintain a resolutions section in your package.json. We recommend you...

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

In Rails, we usually have a mailer setup like this: class MyMailer < ActionMailer::Base def newsletter mail to: 'receiver@host.tld',

You can use .ids on an ActiveRecord 4+ scope to pluck all the ids of the relation User.where("users.name LIKE...

From at least Rails 4, the ActionView tag helper turns Array values of HTML options into a single space-separated...

RSpec >= 3.3 added aggregate_failures, which allows multiple failures in an example and list them all, rather than aborting on...

Today's cameras create huge images, some beyond 50MB. Unless you need to offer this large files, you should always...

makandra dev

Class-level process definitions are only applied to the original file Versions are generated based on the processed original file...

Spammers have started abusing other application to send their spam. This works like this: The application has some form that...

When restoring a PostgreSQL dump using pg_restore, you usually add the --clean flag to remove any existing data from...

When building an application that sends e-mails to users, you want to avoid those e-mails from being classified...

makandra dev
developer.mozilla.org

The standard way to abort async code is that your function takes a AbortSignal { signal } property. The caller can use...

makandra dev

To restart all tasks monitored by God, don't use god restart. This command is only meant to soft-restart...