Module: KeepUp::GemfileFilter

Defined in:
lib/keep_up/gemfile_filter.rb

Overview

Filter to update dependency information in a Gemfile.

Class Method Summary collapse

Class Method Details

.apply(contents, dependency) ⇒ Object



4
5
6
7
8
9
10
11
12
13
# File 'lib/keep_up/gemfile_filter.rb', line 4

def self.apply(contents, dependency)
  contents.each_line.map do |line|
    if line =~ /^(\s*gem\s+['"]#{dependency.name}['"],\s+['"](~> *)?)[^'"]*(['"].*)/m
      match = Regexp.last_match
      "#{match[1]}#{dependency.version}#{match[3]}"
    else
      line
    end
  end.join
end