l5m-tools 0.0.2.pre → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -10,6 +10,6 @@ group :development do
10
10
  gem "rdoc", "~> 3.12"
11
11
  gem "bundler", "~> 1.2.0"
12
12
  gem "jeweler", "~> 1.8.4"
13
- gem "etc"
13
+ #gem "etc"
14
14
  #gem "rcov", ">= 0"
15
15
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2.pre
1
+ 0.0.2
data/bin/duplicate-app CHANGED
File without changes
data/bin/l5m CHANGED
@@ -1,3 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'l5m-tools'
3
- L5MTools.application.run(*ARGV)
3
+ if ARGV[0] == 'svn'
4
+ L5MTools.svn.run(*ARGV){|log| puts log}
5
+ else
6
+ L5MTools.application.run(*ARGV)
7
+ end
data/bin/make-app CHANGED
File without changes
data/bin/set_env.sh CHANGED
@@ -3,19 +3,17 @@ alias svn.log='svn.tool log'
3
3
  alias svn.status='svn.tool status'
4
4
  alias svn.update='svn.tool update'
5
5
  alias update.root='rm -rf $CATALINA_HOME/webapps/ROOT && rm -rf $CATALINA_HOME/webapps/ROOT.war && scp $DEV_HOST:/home/l5m/mytc/webapps/ROOT.war $CATALINA_HOME/webapps'
6
- export JAVA_HOME="C:/Program Files/Java/jdk1.5.0_14"
6
+ #export JAVA_HOME="C:/Program Files/Java/jdk1.5.0_14"
7
7
  function update.28(){
8
8
  ssh 28 "cd ~/project && ./make_wars.sh $@ && ./deploy_on_28.sh $@"
9
9
  }
10
10
  export WEBAPPS='$CATALINA_HOME/webapps'
11
- #export CLASS_PATH=$(find C:/eclipse/plugins/org.junit4_4.3.1/ "C:/Program Files/Java/jdk1.5.0_14/jre/lib/" "C:/Program Files/Java/jdk1.5.0_14/jre/lib/ext/" C:/Tomcat5.5/common/lib/ C:/Tomcat5.5/common/lib/ C:/Tomcat5.5/shared/lib/ C:/Tomcat5.5/shared/lib/ C:/Tomcat5.5/common/i18n/ -regex ".*\.\(jar\|zip\)" | xargs echo |tr ' ' ';')
12
- #export CLASSPATH=$CLASS_PATH
13
11
  function sync.package(){
14
12
  svn.tool.rb status $1 | awk '{print $2}' | sed '/^$/d' | sed -e 's/\\/\//g' | while read fi ; do echo $fi && cp $WORKSPACE/$1/src/$fi $WORKSPACE/$2/src/$fi; done
15
13
  }
16
- for d in $ECLIPSE_HOME/plugins/org.junit4_4.3.1/ $JAVA_HOME/jre/lib/ JAVA_HOME/jre/lib/ext/ $CATALINA_HOME/common/lib/ $CATALINA_HOME/common/lib/ $CATALINA_HOME/shared/lib/ $CATALINA_HOME/shared/lib/ $CATALINA_HOME/common/i18n/
14
+ for i in $CATALINA_HOME/common/lib/ $CATALINA_HOME/common/i18n/
17
15
  do
18
- export CLASS_PATH = $CLASS_PATH;$(find $i -regex ".*\.\(jar\|zip\)" | xargs echo |tr ' ' ';')
16
+ export CLASS_PATH=$CLASS_PATH;(find $i -regex ".*\.\(jar\|zip\)" | xargs echo |tr ' ' ';')
19
17
  done
20
18
 
21
19
  export CLASSPATH=$CLASS_PATH
data/bin/svn.tool CHANGED
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env ruby
2
- require 'l5m-tool.rb'
2
+ require 'l5m-tools'
3
+ L5MTools.svn.run(*ARGV){|log| puts log}
data/l5m-tools.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "l5m-tools"
8
- s.version = "0.0.2.pre"
8
+ s.version = "0.0.2"
9
9
 
10
- s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["RONGHAI"]
12
- s.date = "2013-02-05"
12
+ s.date = "2013-02-08"
13
13
  s.description = "A tool set for Lake5Media and QingheTech developer"
14
14
  s.email = "ronghai.wei@outlook.com"
15
15
  s.executables = ["duplicate-app", "l5m", "make-app", "set_env.sh", "svn.tool"]
@@ -35,7 +35,9 @@ Gem::Specification.new do |s|
35
35
  "l5m-tools.gemspec",
36
36
  "lib/l5m-tools.rb",
37
37
  "lib/l5m-tools/application.rb",
38
+ "lib/l5m-tools/array.rb",
38
39
  "lib/l5m-tools/env.rb",
40
+ "lib/l5m-tools/ignore/svn_ingore.yaml",
39
41
  "lib/l5m-tools/l5m-tools-module.rb",
40
42
  "lib/l5m-tools/string.rb",
41
43
  "lib/l5m-tools/svn.rb",
@@ -65,20 +67,17 @@ Gem::Specification.new do |s|
65
67
  s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
66
68
  s.add_development_dependency(%q<bundler>, ["~> 1.2.0"])
67
69
  s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
68
- s.add_development_dependency(%q<etc>, [">= 0"])
69
70
  else
70
71
  s.add_dependency(%q<shoulda>, [">= 0"])
71
72
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
72
73
  s.add_dependency(%q<bundler>, ["~> 1.2.0"])
73
74
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
74
- s.add_dependency(%q<etc>, [">= 0"])
75
75
  end
76
76
  else
77
77
  s.add_dependency(%q<shoulda>, [">= 0"])
78
78
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
79
79
  s.add_dependency(%q<bundler>, ["~> 1.2.0"])
80
80
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
81
- s.add_dependency(%q<etc>, [">= 0"])
82
81
  end
83
82
  end
84
83
 
@@ -0,0 +1,13 @@
1
+ class Array
2
+ ##
3
+ # This method will return the argument value.
4
+ # = Example
5
+ # ["svn", "--email", "ronghai@test.com"].option!('--email)' => "ronghai@test.com"
6
+ # And the list will be ["svn"]
7
+ # get option index --email index, delete --email, then delete value next to --email
8
+ def option!(opt)
9
+ if i = self.index(opt)
10
+ return self.delete_at(i) && self.delete_at(i)
11
+ end
12
+ end
13
+ end
data/lib/l5m-tools/env.rb CHANGED
@@ -3,6 +3,6 @@ module L5MTools
3
3
  raise "no CATALINA_HOME env" unless CATALINA_HOME = ENV["CATALINA_HOME"]
4
4
  raise "no SVN_USER env" unless SVN_USER = ENV["SVN_USER"]
5
5
  raise "no SENDER_EMAIL env" unless SENDER_EMAIL = ENV["SENDER_EMAIL"]
6
- PACKAGES = ENV["PACKAGES"].split(',') if ENV["PACKAGES"]
6
+ PACKAGES = ENV["PACKAGES"].split(/[,;:]/) if ENV["PACKAGES"]
7
7
  DEV_HOST = ENV["DEV_HOST"]
8
8
  end
@@ -0,0 +1,21 @@
1
+ ---
2
+ customtags:
3
+ - M com\l5m\customtags\tags\servlets\ContextInitListener.java
4
+ qhtcommon:
5
+ - M com\l5m\common\engine\DbHandler.java
6
+ - M com\l5m\common\bean\NavigationBean.java
7
+ - M com\l5m\common\bean\PackageFileBean.java
8
+ - M com\l5m\common\util\BASE64Encoder.java
9
+ - M com\l5m\common\util\AppLog.java
10
+ common:
11
+ - "? javascript\\timespan.js"
12
+ - "? javascript\\prototypeV7.js"
13
+ - "? javascript\\timespanlite.js"
14
+ - "? javascript\\timespanweekly.js"
15
+ - D javascript\prototype.js
16
+ - M jsp\TimeSpanNew.jsp
17
+ - M com\l5m\common\engine\DbHandler.java
18
+ - M com\l5m\common\l5m_util\module\DemoModule.java
19
+ - M com\l5m\common\util\NavigationAccessUtil.java
20
+ - "? com\\l5m\\common\\util\\view"
21
+ - "? com\\l5m\\common\\util\\db"
@@ -1,9 +1,12 @@
1
1
  require 'l5m-tools/application'
2
-
2
+ require 'l5m-tools/svn'
3
3
  module L5MTools
4
4
  class << self
5
5
  def application
6
6
  @application ||= L5MTools::Application.new
7
+ end
8
+ def svn
9
+ @svn ||= L5MTools::SVN.new
7
10
  end
8
11
  end
9
12
  end
data/lib/l5m-tools/svn.rb CHANGED
@@ -1,5 +1,20 @@
1
+ require 'l5m-tools/env'
2
+ require 'pathname'
3
+
1
4
  module L5MTools
2
5
  class SVN
6
+ require 'l5m-tools/tools'
7
+ include Tools
8
+ require 'l5m-tools/array'
9
+ require 'yaml'
10
+
11
+ class << self
12
+ require "fileutils"
13
+ include FileUtils
14
+ end
15
+ copy(Pathname.new(__FILE__).parent + 'ignore/svn_ingore.yaml', File.expand_path('~/svn_ingore.yaml')) unless File.exists? File.expand_path('~/svn_ingore.yaml')
16
+ IGNORE_FILES = YAML::load(File.open(File.expand_path('~/svn_ingore.yaml'), 'rb') { |f| f.read } )
17
+ SPERATE = "------------------------------------------------------------------------"
3
18
  class << self
4
19
  def method_missing(method_id, *arguments, &block)
5
20
  self.class_eval %{
@@ -10,30 +25,86 @@ module L5MTools
10
25
  end
11
26
  }, __FILE__, __LINE__
12
27
  send(method_id, *arguments, &block)
13
- end
28
+ end
29
+ end
30
+
31
+ def method_missing(method_id, *arguments, &block)
32
+ self.class.class_eval %{
33
+ def #{method_id}(packz, options={}, svn_options=[], &b)
34
+ rs = ''
35
+ packz.each{|pac|
36
+ next unless change_to_package_directory(pac)
37
+ rs << SVN.#{method_id}(*svn_options)
38
+ }
39
+ rs
40
+ end
41
+ }, __FILE__, __LINE__
42
+ puts
43
+ send(method_id, arguments[0], arguments[1], arguments[2], &block)
44
+ end
45
+
46
+ def change_to_package_directory package
47
+ change_directory "#{WORKSPACE}/#{package}"
14
48
  end
49
+
50
+
51
+ def log packages, options={}, svn_options=[]
52
+ log = ''
53
+ usr = options[:username] || ''
54
+ date = options[:date] || Date.today.strftime("%F")
55
+ reverse = options[:reverse]
56
+ packages.each{|pac|
57
+ next unless change_to_package_directory(pac)
58
+ commits = SVN.log("-q", "-r", "HEAD:{#{date}}") .split($/).delete_if{|c| c[0] == '-' || (usr != '' && c.split("|")[1].strip != usr)}.collect! {|c| c.split("|")[0].strip[1..-1]}.sort!
59
+ commits.reverse! if reverse
60
+ commits.each{|c|
61
+ log << SVN.log("-v", "-r", c).gsub!(/(#{$/}){2,}/m,$/+$/)
62
+ }
63
+ }
64
+ log.gsub!(/(#{SPERATE}#{$/}#{SPERATE})/m, SPERATE)
65
+ log
66
+ end
15
67
 
68
+ def status packages, options={}, svn_options=[]
69
+ status = ''
70
+ packages.each{|pac|
71
+ innert_dirs =(pac.include?("tag"))?["src", "WebContent"]:["src"];
72
+ lines = [];
73
+ innert_dirs.each{|d|
74
+ next unless change_to_package_directory("#{pac}/#{d}")
75
+ lines += (SVN.status).split($/)
76
+ }
77
+ lines -= IGNORE_FILES[pac] unless IGNORE_FILES[pac].nil?
78
+ status << "#{pac} #{$/}" << lines.join($/) << "#{$/}" unless lines.empty?
79
+ }
80
+ status
81
+ end
82
+
83
+ def update packages, options={}, svn_options=[]
84
+ log = ''
85
+ packages.each{|pac|
86
+ next unless change_to_package_directory(pac)
87
+ log << pac+"...#{$/}"
88
+ log << SVN.update
89
+ }
90
+ log
91
+ end
92
+ alias :st :status
16
93
  def run(*args, &block)
17
94
  cmd = args.shift
18
- args = args[0..(args.index '--')] if args.index '--'
19
- options = {}
20
- options[:username] = args.option! '--user'
21
- options[:reverse] = args.delete('-r')
22
- options[:date] = args.option!('--date')
23
- options[:mail] = args.delete('-e') || args.delete('--email');
24
- options[:username] ||= SVN_USER
95
+ cmd = args.shift if 'svn' == cmd
96
+ args , svn_args = args[0..(args.index '--')], args[((args.index '--')+1)..-1] if args.index '--'
97
+
98
+ options = {username:(args.option! '--user' || SVN_USER), reverse:(args.delete('-r')), date: (args.option!('--date')), mail:(args.delete('-e') || args.delete('--email')) }
99
+ options[:sendto] = args.option!('-s') || SENDER_EMAIL
100
+ options[:title] = args.option!('--title') || "svn #{cmd} @#{Time.now.strftime("%F %T")}"
101
+
25
102
  packages = args.empty? ? PACKAGES : args
26
- result = case cmd
27
- when 'status', 'st' then svn_status(packages)
28
- when 'update' then svn_update(packages)
29
- when 'log' then svn_log(packages, options[:date] , options[:username] , options[:reverse])
30
- else usage
31
- end
32
- #send_mail(SEND_TO, "svn #{cmd} @#{Time.now.strftime("%F %T")}" , result) if options[:mail] || (puts result) unless result.nil? || result.empty?
33
- end
34
- end
35
- class Application
36
-
37
-
103
+
104
+ result = send cmd, packages, options, svn_args
105
+ send_mail(options[:sendto], options[:title] , result) if options[:mail]
106
+ block.call(result) if block_given?
107
+ result
108
+ end
38
109
  end
39
- end
110
+ end
@@ -1,62 +1,69 @@
1
- module L5MTools
2
- module Tools
3
- def send_mail to, subject="", body=""
4
- outlook = WIN32OLE.new('Outlook.Application')
5
- mapi = outlook.GetNameSpace('MAPI')
6
- message = outlook.CreateItem(0)
7
- message.Subject = subject
8
- message.Body = body
9
- message.To = to
10
- message.Save
11
- message.Send
12
- mapi.SyncObjects
13
- end
14
-
15
- require "fileutils"
16
- include FileUtils
17
- require 'pathname'
18
-
19
- def replace(in_file, replacements)
20
- contents = IO.read(in_file)
21
- changed = false
22
- replacements.each do | key, value |
23
- if(contents.gsub!(key, value))
24
- changed = true;
25
- end
26
- end
27
- File.open(in_file, 'w') { | io | io.puts(contents) }
28
- return changed
29
- end
30
- def copy_silently(from, to, replacements)
31
- copy(from, to)
32
- replace(to, replacements)
33
- end
34
- def change_directory(dir, &operation)
35
- return Dir::chdir(dir, &operation) if File.exists?dir
36
- end
37
- def ask(default_answer, *question_lines)
38
- puts question_lines
39
- print "[#{default_answer}] => "
40
- answer = STDIN.readline.strip
41
- answer == '' ? default_answer.to_s : answer.to_s
42
- end
43
-
44
-
45
- def to_file(file, replacements = {})
46
- dirname = File.dirname(file)
47
- basename = File.basename(file)
48
- replacements.each do | key, value |
49
- basename.gsub!(key, value)
50
- end
51
- dirname + File::SEPARATOR + basename;
52
- end
53
-
54
- def duplicate_and_replace(file, replacements = {})
55
- to = to_file(file, replacements)
56
- yield to if block_given?
57
- copy_silently(file, to, replacements)
58
- end
59
-
60
- #module_function :send_mail, :replace, :copy_silently, :change_directory, :ask
61
- end
62
- end
1
+ module L5MTools
2
+ module Tools
3
+ def send_mail to, subject="", body=""
4
+ require 'win32ole'
5
+ outlook = WIN32OLE.new('Outlook.Application')
6
+ mapi = outlook.GetNameSpace('MAPI')
7
+ message = outlook.CreateItem(0)
8
+ message.Subject = subject
9
+ message.Body = body
10
+ message.To = to
11
+ message.Save
12
+ message.Send
13
+ mapi.SyncObjects
14
+ end
15
+
16
+ require "fileutils"
17
+ include FileUtils
18
+ require 'pathname'
19
+
20
+ def replace(in_file, replacements)
21
+ contents = IO.read(in_file)
22
+ changed = false
23
+ replacements.each do | key, value |
24
+ if(contents.gsub!(key, value))
25
+ changed = true;
26
+ end
27
+ end
28
+ File.open(in_file, 'w') { | io | io.puts(contents) }
29
+ return changed
30
+ end
31
+ def copy_silently(from, to, replacements)
32
+ copy(from, to)
33
+ replace(to, replacements)
34
+ end
35
+ def change_directory(dir, &operation)
36
+ return Dir::chdir(dir, &operation) if File.exists? dir
37
+ end
38
+ def ask(default_answer, *question_lines)
39
+ puts question_lines
40
+ print "[#{default_answer}] => "
41
+ answer = STDIN.readline.strip
42
+ answer == '' ? default_answer.to_s : answer.to_s
43
+ end
44
+
45
+
46
+ def to_file(file, replacements = {})
47
+ dirname = File.dirname(file)
48
+ basename = File.basename(file)
49
+ replacements.each do | key, value |
50
+ basename.gsub!(key, value)
51
+ end
52
+ dirname + File::SEPARATOR + basename;
53
+ end
54
+
55
+ def duplicate_and_replace(file, replacements = {})
56
+ to = to_file(file, replacements)
57
+ yield to if block_given?
58
+ copy_silently(file, to, replacements)
59
+ end
60
+
61
+
62
+ def user_home
63
+ require 'etc'
64
+ Etc.getpwuid.dir
65
+ end
66
+
67
+ #module_function :send_mail, :replace, :copy_silently, :change_directory, :ask
68
+ end
69
+ end
data/lib/l5m-tools.rb CHANGED
@@ -10,7 +10,7 @@ module L5MTools
10
10
  application = ask("","Please input application name")
11
11
  use_base_worker = ask("true","Use AbstractBaseWorker?").to_boolean
12
12
  old_make_app(package, application, use_base_worker, &block)
13
- end
13
+ end
14
14
  alias :make :make_app
15
15
  alias :dup :duplicate_app
16
16
  def run(*args, &block)
@@ -5,11 +5,30 @@ class TestL5mTools < Test::Unit::TestCase
5
5
  # flunk "hey buddy, you should probably rename this file and start testing for real"
6
6
  # end
7
7
 
8
- should "duplicate app test" do
9
- L5MTools.application.run('dup', 'c:/files.cvs', 'HelloWorld', 'Yahoo')
10
- end
8
+ #should "duplicate app test" do
9
+ # L5MTools.application.run('dup', 'c:/files.cvs', 'HelloWorld', 'Yahoo')
10
+ #end
11
11
  #should "make app test" do
12
12
  #L5MTools.application.make_app
13
13
  #end
14
+ #should "svn update test" do
15
+ # puts L5MTools.svn.run('update', 'rem')
16
+ # end
17
+ #should "svn info test" do
18
+ # puts L5MTools.svn.run('info', '-s' ,'ronghai@me.com', '--title','test case' , '-e' , 'rei')
19
+ #end
20
+ # should "svn info test" do
21
+ # puts L5MTools.svn.run('help', 'rei')
22
+ # end
23
+ # should "svn info test" do
24
+ # puts L5MTools.svn.run('info', 'rei' , '--','--xml')
25
+ # end
26
+
27
+ # should "svn log test" do
28
+ # puts L5MTools.svn.run('log', 'rei')
29
+ # end
14
30
 
31
+ # should "svn status test" do
32
+ # puts L5MTools.svn.run('st', 'rei')
33
+ # end
15
34
  end
metadata CHANGED
@@ -1,19 +1,19 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: l5m-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2.pre
5
- prerelease: 6
4
+ version: 0.0.2
5
+ prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - RONGHAI
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-05 00:00:00.000000000 Z
12
+ date: 2013-02-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: shoulda
16
- requirement: &70309971360060 !ruby/object:Gem::Requirement
16
+ requirement: &70164407208080 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70309971360060
24
+ version_requirements: *70164407208080
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rdoc
27
- requirement: &70309971358780 !ruby/object:Gem::Requirement
27
+ requirement: &70164407207460 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '3.12'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70309971358780
35
+ version_requirements: *70164407207460
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &70309971358160 !ruby/object:Gem::Requirement
38
+ requirement: &70164407206500 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.2.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70309971358160
46
+ version_requirements: *70164407206500
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &70309971357380 !ruby/object:Gem::Requirement
49
+ requirement: &70164407205840 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,18 +54,7 @@ dependencies:
54
54
  version: 1.8.4
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70309971357380
58
- - !ruby/object:Gem::Dependency
59
- name: etc
60
- requirement: &70309971356700 !ruby/object:Gem::Requirement
61
- none: false
62
- requirements:
63
- - - ! '>='
64
- - !ruby/object:Gem::Version
65
- version: '0'
66
- type: :development
67
- prerelease: false
68
- version_requirements: *70309971356700
57
+ version_requirements: *70164407205840
69
58
  description: A tool set for Lake5Media and QingheTech developer
70
59
  email: ronghai.wei@outlook.com
71
60
  executables:
@@ -96,7 +85,9 @@ files:
96
85
  - l5m-tools.gemspec
97
86
  - lib/l5m-tools.rb
98
87
  - lib/l5m-tools/application.rb
88
+ - lib/l5m-tools/array.rb
99
89
  - lib/l5m-tools/env.rb
90
+ - lib/l5m-tools/ignore/svn_ingore.yaml
100
91
  - lib/l5m-tools/l5m-tools-module.rb
101
92
  - lib/l5m-tools/string.rb
102
93
  - lib/l5m-tools/svn.rb
@@ -126,13 +117,13 @@ required_ruby_version: !ruby/object:Gem::Requirement
126
117
  version: '0'
127
118
  segments:
128
119
  - 0
129
- hash: 1132866967503484104
120
+ hash: 2150218937359629110
130
121
  required_rubygems_version: !ruby/object:Gem::Requirement
131
122
  none: false
132
123
  requirements:
133
- - - ! '>'
124
+ - - ! '>='
134
125
  - !ruby/object:Gem::Version
135
- version: 1.3.1
126
+ version: '0'
136
127
  requirements: []
137
128
  rubyforge_project:
138
129
  rubygems_version: 1.8.17