lib/gemline.rb in gemline-0.2.0 vs lib/gemline.rb in gemline-0.3.0

- old
+ new

@@ -1,9 +1,9 @@ require 'json/pure' require 'net/https' +require 'clipboard' - class Gemline attr_accessor :gem, :gemline, :json, :response def self.query(gem_name) gem_name = sanitize_gem_name(gem_name) @@ -62,11 +62,11 @@ def self.gemfile_gemline(gem_name, version) %Q{gem "#{gem_name}", "~> #{version}"} end def self.gemspec_gemline(gem_name, version) - %Q{gem.add_dependency(%q<#{gem_name}>, ["~> #{version}"])} + %Q{gem.add_dependency "#{gem_name}", ">= #{version}"} end def self.check_input(gem_name) if (gem_name.empty? || ['-h','--help','help'].include?(gem_name)) @@ -81,16 +81,13 @@ # end end def self.copy_to_clipboard(gemline) begin - if clipboard = IO.popen('pbcopy', 'r+') - clipboard.puts gemline - $stderr.puts " Gem line copied to your clipboard. Ready to paste into your Gemfile" - end + Clipboard.copy gemline + $stderr.puts " Gem line copied to your clipboard. Ready to paste into your Gemfile" rescue - ## Yeah, I hate this too. But it does what I want -- silently fail if pbcopy isn't available. - ## TODO: Use something more reliable and cross-platform. + ## Yeah, I hate this too. But it does what I want -- silently fail if Clipboard fails. end end end