Logo Rails Bling
Logo Inverted Logo
  • Posts
  • Blog Setup
    • How I Go
    • How I Go Again
    • My Git Hooks
  • Clojure Thoughts
    • Clojourner in a Foreign Land
  • Decentralized Git
    • Give Up Github
    • Put the D in DVCS
  • Development Process
    • How to Agile
  • Local Development Setup
    • Upgrade to El Capitan
    • Upgrade to Catalina
    • Catalina Fresh Install
  • Ruby Thoughts
    • Fix Nokogiri Warning
  • RubyGems
    • Current List
    • Repair Old Gem (Part 1)
    • Repair Bundler (Part 2)
    • Upgrade RSpec (Part 3)
    • Upgrade Autotest (Part 4)
    • Rakefile & RuboCop LTS (Part 5)
Hero Image
How to Repair an Old Gem (Part 5) - Rakefile & RuboCop LTS

Checkout Part 1, Part 2, Part 3, and Part 4 of the series first! In the early days of writing Ruby libraries there were many patterns, and it took time to discover problems with each, if any. By 2009 (well after the release of Ruby 1.8.7) it had become clear using the statement require "rubygems" from inside a rubygem library is problematic. So we’ll rip it out of the os source!

December 11, 2022 Read
Hero Image
How to Repair an Old Gem (Part 4) - Upgrade Autotest

Checkout Part 1, Part 2, and Part 3 of the series first! The ancient, venerable, and useful autotest gem died, but was reborn as rspec-autotest. Let’s migrate the library to use it! We still use the old .autotest hook file, but we replace the old contents: # autotest config for rspec # see: https://github.com/rspec/rspec/wiki/autotest Autotest.add_hook(:initialize) {|at| at.add_exception %r{^\.git} # ignore Version Control System at.add_exception %r{^pkg} # ignore gem pkg dir # at.

December 11, 2022 Read
Hero Image
How to Repair an Old Gem (Part 3) - Upgrade RSpec

Checkout Part 1, and Part 2 of the series first! Now that we can bundle install, and have a passing test suite with a very old version of RSpec, we need to upgrade RSpec. This is most easily done with a tool called transpec. Before we can setup transpec we need to upgrade to a minimum version of Ruby. Some generic requirements are: RSpec must be at least 2.14 or later.

December 11, 2022 Read
Hero Image
List of (Currently) Maintained RubyGems

I’m a Tidelift Maintainer What is Tidelift? Tidelift maximizes the health and security of the open source powering your applications. Provides the tools, data, and strategies that help organizations assess risk and improve the health, security, and resilience of the open source used in their applications. Tidelift partners directly with maintainers like me and pays them to ensure the open source software organizations rely on meets enterprise standards now and into the future.

November 27, 2022 Read
Hero Image
How to Repair an Old Gem (Part 2) - Bundler

Checkout Part 1 of the series first! When I started working on this os repair project a fresh checkout of the source code would not bundle install. I was able to fix the problem, but these issues are like peeling an onion. After fixing bundler the tests would not run, and how can you merge a PR if the test suite hasn’t been run? The critical change for bundler is removing the os gem from being a dependency of the os gem.

May 5, 2022 Read
Hero Image
How to Repair an Old Gem (Part 1)

I want to build out new features in my rspec-pending_for gem, and to do that I want to use the os gem, which is a de-facto standard. Unfortunately the os gem has been in a state of extreme disrepair for some time. The author does respond on the issue tracker, and merges pull requests, but is no longer actively working on the gem. As it stands the os gem has a number critical issues and I have documented them extensively.

May 5, 2022 Read
Navigation
  • About
  • Skills
  • Experience
  • Projects
Contact me:
  • peter.boling a@t gmail.com
  • +1-925-252-5351

Toha Theme Logo Toha (tweaked by @pboling)
© 2024 Peter Boling
CC BY-SA 4.0
Powered by Hugo Logo