---
title: "6 changes coming to Ruby 2.7"
publication: "Ruby Weekly"
issue: 457
published_at: "2019-07-04"
canonical_url: "https://rubyweekly.com/issues/457"
---

This week's Ruby news.       

#457 — July 4, 2019 

[Read on the Web](https://rubyweekly.com/issues/457)   

Happy Independence Day to those of you in the United States :-)  

Ruby Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/v1562195937/ct87wphkesygzncu51uv.jpg)](https://sourcediving.com/less-known-changes-in-ruby-2-7-8d5db660370f)  

[6 Changes You Might Have Missed Coming in Ruby 2.7](https://sourcediving.com/less-known-changes-in-ruby-2-7-8d5db660370f) — Things like `Module#const_source_location`, `FrozenError#receiver` and the deprecation of certain, special, Perl-inspired global variables. Also, if you press up in IRB, you’ll be able to bring up an entire method definition in one go, rather than line by line. 

Sebastian Sogamoso   

['Sorbetting' a Gem, or The Story of the First Adoption](https://dev.to/evilmartians/sorbetting-a-gem-or-the-story-of-the-first-adoption-3j3p) — Last week, we featured [the release of Sorbet](https://sorbet.org/blog/2019/06/20/open-sourcing-sorbet), a type checker for Ruby. This story covers the practicalities of integrating Sorbet type checking into a Ruby gem. Conclusion? _“it’s still far from bringing the development happiness..”_ 

Vladimir Dementyev   [![\](https://copm.s3.amazonaws.com/cd3f7192.png)](https://lp.codacy.com/code-review?utm_source=CooperPress&utm_medium=cpm&utm_campaign=CooperPress-RubyP) 

[Automated Code Reviews for 27 Languages](https://lp.codacy.com/code-review?utm_source=CooperPress&utm_medium=cpm&utm_campaign=CooperPress-RubyP) — Take the hassle out of code reviews - Codacy flags errors automatically, directly from your Git workflow. Customize standards on coverage, duplication, complexity & style violations. Use in the cloud or on private servers. Get started free. 

Codacy sponsor   

[Should Experimental Ruby Features Be Introduced Behind an Off-by-Default Flag?](https://bugs.ruby-lang.org/issues/15966) — An interesting proposal to expose new features, like the [pipeline operator](https://bugs.ruby-lang.org/issues/15799), behind a feature flag that is opt-in only (a little like how Node.js does it). The discussion here is worth the read. 

Ruby Issue Tracker   

[I Just Made the `++` Increment Operator for Ruby](https://www.xuuso.com/programming/ruby/2019/07/01/i-just-made-ruby-plusplus.html) — Implementing the `++` increment operator was more difficult than expected and required a dive into the parser to get it done (via [this patch](https://github.com/ruby/ruby/compare/trunk...Jesus:6ae534830d403d7423cea4565fa60fee043eac30)). 

Jesús Burgos Maciá  

💻 Jobs  

[Write Ruby. Save Lives](http://www.diploid.com/jobs/full-stack-developer) — Ruby/JS developers: help us build our genome analysis platform and save lives of critically ill children. 

Diploid   

[Senior Software Engineer (Santa Barbara or Remote)](https://grnh.se/2cce24422) — Join a team where everyone is striving to constantly improve their knowledge of software development tools, practices, and processes. 

Invoca   

[Land a New Dev Job on Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-rubyweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77583) — Vettery specializes in tech roles and is completely free for job seekers. 

Vettery  

📘 Articles & Tutorials  

[Brewing Our Own Template Lexer in Ruby](https://blog.appsignal.com/2019/07/02/ruby-magic-brewing-our-own-template-lexer-in-ruby.html) — A practical walkthrough of building a basic _lexer_ (the _parser_ part will come later) as a way to implement your own templating language (in this case a subset of [Mustache](https://github.com/mustache/mustache)). Not many of you will _need_ to do this, but it’s good to know how. 

Benedikt Deike   

[Rails 6 Adds Support for Multi Environment Credentials](https://blog.bigbinary.com/2019/07/03/rails-6-adds-support-for-multi-environment-credentials.html) — Credentials that belong to different environments can now be stored in separate files with their own encryption key. 

Berin Larson   

[A Rubyist Takes a Stroll in Elixir-Land...with Surprising Results](https://blog.honeybadger.io/elixir-module-names/?utm_source=rubyweekly&utm_medium=email&utm_campaign=ruby) — Get outside your comfort zone and join us as we compare & contrast resolving modules in Elixir vs Ruby. Let’s get weird. 

Honeybadger sponsor   

[Examples of Pointless Types of RSpec Tests](https://www.codewithjason.com/examples-pointless-rspec-tests/) — Some tests just don’t need to be written. 

Jason Swett   

[Danger On Rails: Make Robots Do Some Code Review for You!](https://dev.to/evilmartians/danger-on-rails-make-robots-do-some-code-review-for-you-5a3h) — [Danger](https://danger.systems/ruby/) runs “common code review chores” in your CI process, which is one more step to Automating All The Things™. 

Vladimir Dementyev   

▶[Creating an In-App Payments Backend Using Ruby and Roda](https://www.youtube.com/watch?v=gnyVOETIaEA) — We don’t see a ton of tutorials or videos with [Roda](http://roda.jeremyevans.net/), a simple routing-oriented framework for creating HTTP services. 

Square   

▶[How to Send SMS Text Messages in Rails with Twilio](https://gorails.com/episodes/how-to-send-sms-messages-with-rails-and-twilio) 

Go Rails   

[Ruby On Rails Optimization Techniques](https://www.dmitry-ishkov.com/2019/07/ruby-on-rails-optimization-techniques.html) — Lots of focus on database and query tweaks along with caching content and assets. 

Dmitry Ishkov   

[Rails 6 Adds `before?` and `after?` to `Date` and `Time`](https://blog.bigbinary.com/2019/06/26/rails-6-adds-before-and-after-to-date-and-time.html) — No more confusing `<` comparisons. 

Amit Choudhary  

🔧 Code & Tools  

[HTTP Toolkit: Capture, View, and Explore Your Ruby App's HTTP Traffic](https://httptoolkit.tech/view/ruby/) — There’s both an open source and “pro” version. 

HTTP Toolkit   

[Slop: Simple Lightweight Option Parsing](https://github.com/leejarvis/slop) — Not the most appealing name for a library, but a compelling choice for defining a command line app’s options and having them get parsed for you. 

Lee Jarvis   

[Cut Your Heroku Bill in Half, Autoscale Your Web and Worker Dynos](https://railsautoscale.com/ruby-weekly) 

Rails Autoscale sponsor   

[Scallop: An 'Ergonomic' Shell Wrapper for Ruby](https://github.com/fetlife/scallop) — Early days for this project, but it essentially provides a more idiomatically Ruby and object oriented way to run commands via the shell and access their output. 

FetLife   

[Black Candy: A Self Hosted Music Streaming Server](https://github.com/aidewoode/black_candy) — Build your own Spotify-a-like using Rails and Stimulus (Basecamp’s ‘just decorate your HTML’ JavaScript framework). 

aidewoode   

[Stripe::Rails: A Rails Engine for Integrating with Stripe](https://github.com/tansengming/stripe-rails) 

SengMing Tan         

Curated by [Glenn Goodrich](https://twitter.com/ruprict) and [Cooperpress](https://cooperpress.com/). 

[Change your email address](https://rubyweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://rubyweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
