...the following processes to split up the changes into several commits in a logical order: #1 Splitting up the last n commits into m commits #2 Adding changes to a...
HTTP header values must only contain low-ASCII (7-bit) characters for safe transport. From RFC 7230: Historically, HTTP has...
...server. It likely won't work on Wayland. The script assumes that external display order is left to right. If displays are ordered e.g. 1, 3, 2, connect displays differently...
...responsible for gatekeeping in a projects, here is a guide, what to do. In order to reduce the number of rejects we get from clients, we want to review all...
...you to make the new method a bit more verbose and independent of argument order: Customer = Struct.new(:name, :address, keyword_init: true) Customer.new(name: "Dave", address: "123 Main") => #<struct Customer...
...e.g. application_record.rb def self.strips(*names) normalizes(*names, with: Normalizers::StripNormalizer) end Enforcing consistency In order to enforce a consistent interface we could also define a base class for all normalizers...
...manually define the charset of a CSS file: The value of the Unicode byte-order character placed at the beginning of the file (BOM). The value given by the charset...
...into binary data const arrayBuffer = await response.arrayBuffer() # convert array buffer to typed array in order to interact with the data # now we have the binary data represented as a typed...
...is not sufficient to trigger a retry, the callback must throw an error in order to retry the condition. Let's say we have an animation for a smoothly appearing...
...text. When removing background colors, chances are white text now stands on white. In order to keep legibility, browsers turn white text into gray (Chrome) or black (Firefox). However, white...
Note that Rubocop has some kind of caching, i.e. subsequent runs will be orders of magnitude faster than the first. Should you want to skip that pre-push hook...
...a given set of values. The list of allowed values must be retrievable in order to render boxes. Each value has a humanized label. Sometimes there is a default value...
...method that is called after :store within the uploader and removes these files. In order to check, if the files are still there, you need to explicitly call my_legacy_version.retrieve_from...
...When using zeitwerk (Rails 6) you might also need to add an inflection in order to make autoloading work for this file: ActiveSupport::Inflector.inflections(:en) do |inflect| inflect.acronym 'IO'
...T11:12:26.683106 #1094157] DEBUG -- : User Load (1.1ms) SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT $1 [["LIMIT", 1]] Many frameworks in Rails have their own logger...
...to_sort_atoms on non-strings so you can define your own natural sort order. There is also natural_sort_by which works like Ruby's sort_by(&block).
In order to have monitoring for Sidekiq (like queue sizes, last run of Sidekiq) your application should have a monitoring route which returns a json looking like this: { "sidekiq": {
...if page.find('.that-element') # Do something else # Never happens because #find raises end In order to simply check whether an element is present, without errors raised, you can use #has...
VCR lets you configure how it matches requests to recorded cassettes: In order to properly replay previously recorded requests, VCR must match new HTTP requests to a previously recorded one...
...are equivalent. Equivalency means: Whitespace is ignored Types of attribute quotes are irrelevant Attribute order is irrelevant Comments are ignored You use it like this: html = ... expect(html).to match...
# Options documented here: https://github.com/vkononov/compare-xml default_options = { collapse_whitespace: true, ignore_attr_order: true, ignore_comments: true, } options = default_options.merge(options).merge(verbose: true) diff = CompareXML.equivalent?(expected_doc, actual...
...to overwrite these methods or call the parent version with super depending in which order and in which way they were added to singleton class. Consider the following code:
...can tune the threshold: Closer to 1.0 = stricter match Closer to 0.0 = looser match Ordering by best match User .where("similarity(name, ?) > 0.3", "John") .order(Arel.sql("similarity(name, 'John') DESC...
track down warnings and to see failing specs immediately or to get an overview of the core functionalities, you can use RSpec's "nested" format. It looks...
...model and maker should find tools by serial number Call RSpec like this in order to use the nested format: spec spec -f documentation
-# record/_form.haml = form_for record do |form| -# ... .form-actions yield(form) In order to make your template record/_form.haml accept a block when you render it, you can render...