Ruby/RoR News Digest 2-8.11

Rails 6.0.1 release, active storage changes in Rails 6, persisted queries in GraphQL and many other interesting things
08 November 2019   608

Greetings! I hope your week went great! Here's new "gemmy" programming news digest.

Get familiar with programms, that write themself, how Ruby uses memory exactly, the hide cost of Ruby 2.7 dot-colon method reference usage and many more interesting things.

Guides

  • Persisted queries in GraphQL:Slim down Apollo requests to your Ruby application

Persisted queries are designed for reducing request size by only sending a query ID that is stored on the backend, which is then retrieved and executed; guide covers this topic fully.

  • Writing a program that writes itself

Tutorial about quines in Ruby

Articles

  • How Ruby Really Uses Memory: On the Web and Beyond

New articel by Schneems, totally must-read about the Ruby memory allocation algorithm and what it does when you add thread

  • The hidden cost of the Ruby 2.7 dot-colon method reference usage

Another fee you will be paying for not so "free" Ruby's syntax sugar

  • Rails 6 - Active Storage changes

Detailed look on the changes that was made to one of the main Ruby on Rails gems in version 6

  • Use GitHub Actions for Rails CI with Postgres

This guide gives you the look on the beta version of GitHub's Actions which gives you an opportunaity to run arbitrary workflows, including tests, after certain things happen within your git repository.

Updates

  • Prism

Allows you to build frontend web apps with Ruby and WebAssembly

  • Rails 6.0.1 released

Some bugs are fixed; get more details by clicking on the link above.

  • Tabulo

A terminal table generator for Ruby that may be used, for example, in a live coding session.

Video

  • Episode #214 - Plugging in AnyCable

Git 2.26 to be Released

Git is one of the most popular source code management system and new version brings a lot of changes and updates
23 March 2020   264

Git 2.26.0 distributed source code management system is available. Git is one of the most popular, reliable and high-performance version control systems, providing flexible non-linear development tools based on branch branching and merging. To ensure the integrity of the story and resistance to changes in hindsight, implicit hashing of the entire previous history in each commit is used, and it is also possible to digitally sign the developers of individual tags and commits.

Compared to the previous release, the new version adopted 504 changes prepared with the participation of 64 developers, of which 12 took part in the development for the first time. Key innovations:

  • The default transition to the second version of the Git communication protocol, which is used when remotely connecting the client to the Git server, has been completed.
  • Added option "--show-scope" to the "git config" command, which makes it easier to identify the place in which certain settings are defined
  • The credential binding settings allow the use of masks in the URL.
  • The extension of experimental support for partial clones was continued, which allows transferring only part of the data and working with an incomplete copy of the repository.
  • The performance of the "git grep" command, which is used to search both in the current contents of the repository and in historical revisions, is noticeably increased.
  • Added support for autocompletion of input of subcommands, paths, links, and other arguments of the "git worktree" command, which allows working with several working copies of the repository.
  • Added support for vivid colors for which there are ANSI escape sequences.
  • A new version of the fsmonitor-watchman script has been added, which provides integration with the Facebook Watchman mechanism to speed up tracking of file changes and the appearance of new files.
  • Optimizations have been added to speed up partial clones operations related to the use of bitmap machinery to avoid full enumeration of all objects during recoil filtering.
  • The git rebase command has been moved to another backend using the default 'merge' mechanism (previously used for rebase -i) instead of 'patch + apply'.
  • An example of the authentication parameter handler specified through .netrc is brought to a form suitable for use out of the box.
  • Added gpg.minTrustLevel setting to set the minimum level of trust for various elements that perform digital signature verification.
  • Added "--pathspec-from-file" option to "git rm" and "git stash".
  • Continued improvement of test sets in preparation for the transition to the SHA-2 hash algorithm instead of SHA-1.

Get more at the official mailing and the  Github blog and the Github.