coderunner 0.17.3 → 0.17.4

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.17.3
1
+ 0.17.4
@@ -2,17 +2,14 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: coderunner 0.17.3 ruby lib
6
- # stub: ext/extconf.rb
7
5
 
8
6
  Gem::Specification.new do |s|
9
7
  s.name = "coderunner"
10
- s.version = "0.17.3"
8
+ s.version = "0.17.4"
11
9
 
12
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
13
- s.require_paths = ["lib"]
14
11
  s.authors = ["Edmund Highcock"]
15
- s.date = "2015-09-09"
12
+ s.date = "2015-09-10"
16
13
  s.description = "CodeRunner is a framework for the automated running and analysis of simulations. It automatically generates any necessary input files, organises the output data and analyses it. Because it is a modular system, it can easily be customised to work with any system and any simulation code. One of its greatest strengths is that it is independent of any one simulation code; thus it can easily plot and compare the data from different codes."
17
14
  s.email = "edmundhighcock@sourceforge.net"
18
15
  s.executables = ["coderunner", "coderunnerrepo"]
@@ -97,13 +94,14 @@ Gem::Specification.new do |s|
97
94
  ]
98
95
  s.homepage = "http://coderunner.sourceforge.net"
99
96
  s.licenses = ["GPLv3"]
97
+ s.require_paths = ["lib"]
100
98
  s.required_ruby_version = Gem::Requirement.new(">= 1.9.1")
101
99
  s.rubyforge_project = "coderunner"
102
- s.rubygems_version = "2.4.8"
100
+ s.rubygems_version = "1.8.23"
103
101
  s.summary = "A framework for the automated running and analysis of simulations."
104
102
 
105
103
  if s.respond_to? :specification_version then
106
- s.specification_version = 4
104
+ s.specification_version = 3
107
105
 
108
106
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
109
107
  s.add_runtime_dependency(%q<graphkit>, [">= 0.4.2"])
@@ -201,13 +201,13 @@ EOF
201
201
  COMMANDS_WITH_HELP = [
202
202
  ["available_modlets", "av", 0, 'List the available modlets for the code module.', [], [:C]],
203
203
  ["available_defaults_files", "avd", 0, 'List the defaults files for the code module.', [], [:C]],
204
- ["cancel", "can", 1, 'Cancel the specified job.', ['id'], [:U]],
204
+ ["cancel", "can", 0, 'Cancel the specified job.', [], [:j, :f, :U, :N]],
205
205
  ["code_command", "cc", 1, 'Call a class method of the run class. Effectively this will call run_class.class_eval(command). See documentation for whichever code module is in use.', ['command'], []],
206
206
  ["concat", "concat", 1, 'Concatenates NetCDF output files together. File is output in the CR root directory.', ['output file'], [:j, :f, :U, :N]],
207
207
  ["continue_in_new_folder", "cnf", 1, 'Make a new folder in the parent directory and copy all coderunner configuration files to that folder. If options j or f are specified, copy all matching runs to that new folder.', ['folder'], [:j, :f, :U, :N]],
208
208
  ["code_runner_execute", "crex", 1, 'Run (within the CodeRunner class) the fragment of Ruby code given.', ['Ruby fragment'], []],
209
209
  ["delete", "del", 0, 'Permanently erase all filtered runs.', [], [:j, :F, :U, :N]],
210
- ["differences_between", "diff", 0, 'Print a table of all the differences between the input parameters of the filtered ids.', [], [:j, :F, :U, :N]],
210
+ ["differences_between", "diff", 0, 'Print a table of all the differences between the input parameters of the filtered ids.', [], [:j, :f, :U, :N]],
211
211
  ["directory", "dir", 1, 'Print out the directory for the given run.', ['id'], []],
212
212
  ['dumb_film', "dfm", 0, 'Create a film of the specified graphkits using gnuplot "dumb" ASCII terminal.', [], [:F, :G, :g, :U, :N, :j, :f]],
213
213
  ["execute", "ex", 1, 'Run (at the top level) the fragment of Ruby code given.', ['Ruby fragment'], []],
@@ -62,9 +62,9 @@ class CodeRunner
62
62
  # Cancel the job with the given id. The user is asked interactively for
63
63
  # confirmation and whether they would like to delete the folder for that job
64
64
  # as well.
65
- def self.cancel(id, copts={})
65
+ def self.cancel(copts={})
66
66
  runner = fetch_runner(copts)
67
- runner.cancel_job(id.to_i)
67
+ runner.cancel_job(copts)
68
68
  end
69
69
 
70
70
  def self.continue_in_new_folder(folder, copts={})
@@ -1558,20 +1558,20 @@ EOF
1558
1558
  # Delete the folders of all runs for whom CodeRunner#filter(run) is true. This will permanently erase the runs. This is an interactive method which asks for confirmation.
1559
1559
 
1560
1560
  def destroy(options={})
1561
- ids = @ids.find_all{|id| filter @run_list[id]}
1562
- unless options[:no_confirm]
1563
- logf(:destroy)
1564
- puts "About to delete:"
1565
- ids.each{|id| eputs @run_list[id].run_name}
1566
- return unless Feedback.get_boolean("You are about to DESTROY #{ids.size} jobs. There is no way back. All data will be eliminated. Please confirm the delete.")
1567
- #gets
1568
- eputs "Please confirm again. Press Enter to confirm, Ctrl + C to cancel"
1569
- gets
1570
- end
1571
- ids.each{|id|
1572
- @run_list[id].clear_cache
1573
- FileUtils.rm_r @run_list[id].directory if @run_list[id].directory and not ["", ".", ".."].include? @run_list[id].directory
1574
- @run_list.delete(id); @ids.delete(id); generate_combined_ids}
1561
+ ids = @ids.find_all{|id| filter @run_list[id]}
1562
+ unless options[:no_confirm]
1563
+ logf(:destroy)
1564
+ puts "About to delete:"
1565
+ ids.each{|id| eputs @run_list[id].run_name}
1566
+ return unless Feedback.get_boolean("You are about to DESTROY #{ids.size} jobs. There is no way back. All data will be eliminated. Please confirm the delete.")
1567
+ eputs "Please confirm again. Press Enter to confirm, Ctrl + C to cancel"
1568
+ gets
1569
+ end
1570
+ ids.each{|id|
1571
+ @run_list[id].clear_cache
1572
+ FileUtils.rm_r @run_list[id].directory if @run_list[id].directory and not ["", ".", ".."].include? @run_list[id].directory
1573
+ @run_list.delete(id); @ids.delete(id); generate_combined_ids
1574
+ }
1575
1575
  if is_in_repo?
1576
1576
  repo = Repository.open_in_subfolder(@root_folder)
1577
1577
  Dir.chdir(@root_folder){
@@ -1579,36 +1579,35 @@ EOF
1579
1579
  }
1580
1580
  repo.autocommit("Deleted simulations with ids #{ids} in folder #{repo.relative_path(@root_folder)}")
1581
1581
  end
1582
- set_max_id(@ids.max || 0)
1583
- save_large_cache
1584
- generate_combined_ids
1582
+ set_max_id(@ids.max || 0)
1583
+ save_large_cache
1584
+ generate_combined_ids
1585
1585
  end
1586
1586
 
1587
1587
  # Cancel the job with the given ID. Options are:
1588
1588
  # :no_confirm ---> true or false, cancel without asking for confirmation if true
1589
1589
  # :delete ---> if (no_confirm and delete), delete cancelled run
1590
1590
 
1591
- def cancel_job(id, options={})
1592
- @run=@run_list[id]
1593
- raise "Run with id #{id} does not exist" unless @run
1594
- unless options[:no_confirm]
1595
- eputs "Cancelling job: #{@run.job_no}: #{@run.run_name}. \n Press enter to confirm"
1596
- # puts 'asfda'
1597
- gets
1598
- end
1599
- @run.cancel_job
1600
- if options[:no_confirm]
1601
- delete = options[:delete]
1602
- else
1603
- delete = Feedback.get_boolean("Do you want to delete the folder (#{@run.directory}) as well?")
1604
- end
1605
- FileUtils.rm_r(@run.directory) if delete and @run.directory and not @run.directory == ""
1606
- update
1607
- print_out
1591
+ def cancel_job(options={})
1592
+ ids = @ids.find_all{|id| filter @run_list[id]}
1593
+
1594
+ unless options[:no_confirm]
1595
+ puts "About to cancel:"
1596
+ ids.each{|id| eputs "#{@run_list[id].job_no}: #{@run_list[id].run_name}"}
1597
+ return unless Feedback.get_boolean("You are about to cancel "\
1598
+ "#{ids.size} jobs. Please confirm.")
1599
+ eputs "Please confirm again. Press Enter to confirm, Ctrl + C to cancel"
1600
+ gets
1601
+ end
1602
+
1603
+ ids.each do |id|
1604
+ @run_list[id].clear_cache
1605
+ @run_list[id].cancel_job
1606
+ generate_combined_ids
1607
+ end
1608
1608
  end
1609
1609
 
1610
1610
  # Needs to be fixed.
1611
-
1612
1611
  # def rename_variable(old, new)
1613
1612
  # puts "Please confirm complete renaming of #{old} to #{new}"
1614
1613
  # gets
@@ -1,91 +1,86 @@
1
1
  class CodeRunner
2
- require SCRIPT_FOLDER + '/system_modules/launcher.rb'
3
- module GenericLinux
4
- include Launcher
2
+ require SCRIPT_FOLDER + '/system_modules/launcher.rb'
3
+ module GenericLinux
4
+ include Launcher
5
5
 
6
+ # @@ruby_command = "ruby1.9"
6
7
 
7
- # @@ruby_command = "ruby1.9"
8
-
9
- def queue_status
10
- if use_launcher
11
- queue_status_launcher
12
- else
13
- if methods.include?(:rcp) and rcp.uses_mpi? and rcp.uses_mpi
14
- return %x[ps -e -U #{Process.uid} | grep mpi] + %x[ps -e -U #{Process.uid} | grep -G '\\bsh\\b'] + %x[ps -e -U #{Process.uid} -o pid,user,cmd | grep coderunner].grep(/launch/)
8
+ def queue_status
9
+ if use_launcher
10
+ queue_status_launcher
15
11
  else
16
- # ep executable_name
17
- return %x[ps -e -U #{Process.uid} | grep '#{executable_name}'] + %x[ps -e -U #{Process.uid} | grep -G '\\bsh\\b']
12
+ if methods.include?(:rcp) and rcp.uses_mpi? and rcp.uses_mpi
13
+ return %x[ps -e -U #{Process.uid} | grep mpi] + %x[ps -e -U #{Process.uid} | grep -G '\\bsh\\b'] + %x[ps -e -U #{Process.uid} -o pid,user,cmd | grep coderunner].grep(/launch/)
14
+ else
15
+ return %x[ps -e -U #{Process.uid} | grep '#{executable_name}'] + %x[ps -e -U #{Process.uid} | grep -G '\\bsh\\b']
16
+ end
18
17
  end
19
18
  end
20
- end
21
-
22
- def run_command
23
- crenv = @code_run_environment ? @code_run_environment + ";" : nil
24
- if rcp.uses_mpi
25
- raise "Number of processors (nprocs) not specified" unless @nprocs
26
- return %[#{crenv} time mpirun -np #{@nprocs} #{executable_location}/#{executable_name} #{parameter_string} > #{output_file} 2> #{error_file}]
27
- else
28
- return %[#{crenv} #{executable_location}/#{executable_name} #{parameter_string} > #{output_file} 2> #{error_file}]
29
- end
30
- end
31
19
 
32
- def execute
33
- log 'execute_submission'
34
- # ppipe = PPipe.new(2, false)
35
- # trap(0){}
36
- # ppipe.fork do
37
- # trap(0, 'IGNORE')
38
- # trap(2, 'IGNORE')
39
- # pid = system(run_command + " & ") # fork{exec run_command}
40
- # ppipe.w_send(:pid, pid, tp: 0)
41
- # Thread.new{Process.wait(pid)} # Need to pick up the dead process when it finishes
42
- # end
43
- # pid = ppipe.w_recv(:pid)
44
- # ppipe.die
45
- # eputs "HERE"
46
-
47
- # trap(0){}
48
- # trap(2, 'IGNORE')
49
- # pid = spawn("trap '' 2 && trap '' 0 && " + run_command + " & ")
50
- if prefix = ENV['CODE_RUNNER_LAUNCHER']
51
- launch_id = "#{Time.now.to_i}#{$$}"
52
- fname = CodeRunner.launcher_directory + "/#{launch_id}"
53
- File.open(fname + '.start', 'w'){|file| file.puts "cd '#{Dir.pwd}';#{run_command}"}
54
- sleep 1 until FileTest.exist? fname + '.pid'
55
- pid = File.read(fname + '.pid').to_i
56
- FileUtils.rm fname + '.pid'
57
- else
58
- #pid = Kernel.spawn(run_command + " ")
59
- system run_command
60
- pid = -1
61
- end
62
-
63
- # require 'rbconfig'
64
- # pid = spawn %[#{Config::CONFIG['bindir']}/#{Config::CONFIG['ruby_install_name']} -e 'puts fork{exec("#{run_command}")}' &]
65
-
66
- # eputs "THERE"
67
- # Thread.new{Process.wait(pid)}
68
- # sleep 0.2
69
- return pid
70
- end
20
+ def run_command
21
+ crenv = @code_run_environment ? @code_run_environment + ";" : nil
22
+ if rcp.uses_mpi
23
+ raise "Number of processors (nprocs) not specified" unless @nprocs
24
+ return %[#{crenv} time mpirun -np #{@nprocs} #{executable_location}/#{executable_name} #{parameter_string} > #{output_file} 2> #{error_file}]
25
+ else
26
+ return %[#{crenv} #{executable_location}/#{executable_name} #{parameter_string} > #{output_file} 2> #{error_file}]
27
+ end
28
+ end
71
29
 
72
- def cancel_job
73
- children = `ps --ppid #@job_no`.scan(/^\s*(\d+)/).map{|match| match[0].to_i}
74
- system "kill #{@job_no}"
75
- children.each do |pid|
76
- system "kill #{pid}"
77
- end
78
- # `kill #{@job_no}`
79
- end
80
-
81
- def error_file
82
- return "#{executable_name}.#{job_identifier}.e"
83
- end
30
+ def execute
31
+ log 'execute_submission'
32
+ # ppipe = PPipe.new(2, false)
33
+ # trap(0){}
34
+ # ppipe.fork do
35
+ # trap(0, 'IGNORE')
36
+ # trap(2, 'IGNORE')
37
+ # pid = system(run_command + " & ") # fork{exec run_command}
38
+ # ppipe.w_send(:pid, pid, tp: 0)
39
+ # Thread.new{Process.wait(pid)} # Need to pick up the dead process when it finishes
40
+ # end
41
+ # pid = ppipe.w_recv(:pid)
42
+ # ppipe.die
43
+ # eputs "HERE"
44
+
45
+ # trap(0){}
46
+ # trap(2, 'IGNORE')
47
+ # pid = spawn("trap '' 2 && trap '' 0 && " + run_command + " & ")
48
+ if prefix = ENV['CODE_RUNNER_LAUNCHER']
49
+ launch_id = "#{Time.now.to_i}#{$$}"
50
+ fname = CodeRunner.launcher_directory + "/#{launch_id}"
51
+ File.open(fname + '.start', 'w'){|file| file.puts "cd '#{Dir.pwd}';#{run_command}"}
52
+ sleep 1 until FileTest.exist? fname + '.pid'
53
+ pid = File.read(fname + '.pid').to_i
54
+ FileUtils.rm fname + '.pid'
55
+ else
56
+ #pid = Kernel.spawn(run_command + " ")
57
+ system run_command
58
+ pid = -1
59
+ end
60
+
61
+ # require 'rbconfig'
62
+ # pid = spawn %[#{Config::CONFIG['bindir']}/#{Config::CONFIG['ruby_install_name']} -e 'puts fork{exec("#{run_command}")}' &]
63
+
64
+ # eputs "THERE"
65
+ # Thread.new{Process.wait(pid)}
66
+ # sleep 0.2
67
+ return pid
68
+ end
84
69
 
85
- def output_file
86
- return "#{executable_name}.#{job_identifier}.o"
87
- end
70
+ def cancel_job
71
+ children = `ps --ppid #@job_no`.scan(/^\s*(\d+)/).map{|match| match[0].to_i}
72
+ system "kill #{@job_no}"
73
+ children.each do |pid|
74
+ system "kill #{pid}"
75
+ end
76
+ end
88
77
 
78
+ def error_file
79
+ return "#{executable_name}.#{job_identifier}.e"
80
+ end
89
81
 
90
- end
82
+ def output_file
83
+ return "#{executable_name}.#{job_identifier}.o"
84
+ end
85
+ end
91
86
  end
metadata CHANGED
@@ -1,181 +1,206 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coderunner
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.3
4
+ version: 0.17.4
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Edmund Highcock
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2015-09-09 00:00:00.000000000 Z
12
+ date: 2015-09-10 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: graphkit
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - ">="
19
+ - - ! '>='
18
20
  - !ruby/object:Gem::Version
19
21
  version: 0.4.2
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
- - - ">="
27
+ - - ! '>='
25
28
  - !ruby/object:Gem::Version
26
29
  version: 0.4.2
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: parallelpipes
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
- - - ">="
35
+ - - ! '>='
32
36
  - !ruby/object:Gem::Version
33
37
  version: 1.0.0
34
38
  type: :runtime
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
- - - ">="
43
+ - - ! '>='
39
44
  - !ruby/object:Gem::Version
40
45
  version: 1.0.0
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: rubyhacks
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
- - - ">="
51
+ - - ! '>='
46
52
  - !ruby/object:Gem::Version
47
53
  version: 0.1.4
48
54
  type: :runtime
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
- - - ">="
59
+ - - ! '>='
53
60
  - !ruby/object:Gem::Version
54
61
  version: 0.1.4
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: rb-gsl
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
- - - ">"
67
+ - - ! '>'
60
68
  - !ruby/object:Gem::Version
61
69
  version: 1.12.0
62
70
  type: :runtime
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
- - - ">"
75
+ - - ! '>'
67
76
  - !ruby/object:Gem::Version
68
77
  version: 1.12.0
69
78
  - !ruby/object:Gem::Dependency
70
79
  name: gsl_extras
71
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
72
82
  requirements:
73
- - - ">="
83
+ - - ! '>='
74
84
  - !ruby/object:Gem::Version
75
85
  version: 0.3.0
76
86
  type: :runtime
77
87
  prerelease: false
78
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
79
90
  requirements:
80
- - - ">="
91
+ - - ! '>='
81
92
  - !ruby/object:Gem::Version
82
93
  version: 0.3.0
83
94
  - !ruby/object:Gem::Dependency
84
95
  name: hostmanager
85
96
  requirement: !ruby/object:Gem::Requirement
97
+ none: false
86
98
  requirements:
87
- - - ">"
99
+ - - ! '>'
88
100
  - !ruby/object:Gem::Version
89
101
  version: 0.1.0
90
102
  type: :runtime
91
103
  prerelease: false
92
104
  version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
93
106
  requirements:
94
- - - ">"
107
+ - - ! '>'
95
108
  - !ruby/object:Gem::Version
96
109
  version: 0.1.0
97
110
  - !ruby/object:Gem::Dependency
98
111
  name: command-line-flunky
99
112
  requirement: !ruby/object:Gem::Requirement
113
+ none: false
100
114
  requirements:
101
- - - ">"
115
+ - - ! '>'
102
116
  - !ruby/object:Gem::Version
103
117
  version: 0.1.0
104
118
  type: :runtime
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
107
122
  requirements:
108
- - - ">"
123
+ - - ! '>'
109
124
  - !ruby/object:Gem::Version
110
125
  version: 0.1.0
111
126
  - !ruby/object:Gem::Dependency
112
127
  name: git
113
128
  requirement: !ruby/object:Gem::Requirement
129
+ none: false
114
130
  requirements:
115
- - - ">="
131
+ - - ! '>='
116
132
  - !ruby/object:Gem::Version
117
133
  version: 1.2.9
118
134
  type: :runtime
119
135
  prerelease: false
120
136
  version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
121
138
  requirements:
122
- - - ">="
139
+ - - ! '>='
123
140
  - !ruby/object:Gem::Version
124
141
  version: 1.2.9
125
142
  - !ruby/object:Gem::Dependency
126
143
  name: shoulda
127
144
  requirement: !ruby/object:Gem::Requirement
145
+ none: false
128
146
  requirements:
129
- - - ">="
147
+ - - ! '>='
130
148
  - !ruby/object:Gem::Version
131
149
  version: '0'
132
150
  type: :development
133
151
  prerelease: false
134
152
  version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
135
154
  requirements:
136
- - - ">="
155
+ - - ! '>='
137
156
  - !ruby/object:Gem::Version
138
157
  version: '0'
139
158
  - !ruby/object:Gem::Dependency
140
159
  name: rdoc
141
160
  requirement: !ruby/object:Gem::Requirement
161
+ none: false
142
162
  requirements:
143
- - - "~>"
163
+ - - ~>
144
164
  - !ruby/object:Gem::Version
145
165
  version: '3.12'
146
166
  type: :development
147
167
  prerelease: false
148
168
  version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
149
170
  requirements:
150
- - - "~>"
171
+ - - ~>
151
172
  - !ruby/object:Gem::Version
152
173
  version: '3.12'
153
174
  - !ruby/object:Gem::Dependency
154
175
  name: bundler
155
176
  requirement: !ruby/object:Gem::Requirement
177
+ none: false
156
178
  requirements:
157
- - - ">"
179
+ - - ! '>'
158
180
  - !ruby/object:Gem::Version
159
181
  version: 1.0.0
160
182
  type: :development
161
183
  prerelease: false
162
184
  version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
163
186
  requirements:
164
- - - ">"
187
+ - - ! '>'
165
188
  - !ruby/object:Gem::Version
166
189
  version: 1.0.0
167
190
  - !ruby/object:Gem::Dependency
168
191
  name: jeweler
169
192
  requirement: !ruby/object:Gem::Requirement
193
+ none: false
170
194
  requirements:
171
- - - ">="
195
+ - - ! '>='
172
196
  - !ruby/object:Gem::Version
173
197
  version: 2.0.0
174
198
  type: :development
175
199
  prerelease: false
176
200
  version_requirements: !ruby/object:Gem::Requirement
201
+ none: false
177
202
  requirements:
178
- - - ">="
203
+ - - ! '>='
179
204
  - !ruby/object:Gem::Version
180
205
  version: 2.0.0
181
206
  description: CodeRunner is a framework for the automated running and analysis of simulations.
@@ -195,7 +220,7 @@ extra_rdoc_files:
195
220
  - README.md
196
221
  - README.rdoc
197
222
  files:
198
- - ".document"
223
+ - .document
199
224
  - Gemfile
200
225
  - LICENSE.txt
201
226
  - README.md
@@ -269,25 +294,26 @@ files:
269
294
  homepage: http://coderunner.sourceforge.net
270
295
  licenses:
271
296
  - GPLv3
272
- metadata: {}
273
297
  post_install_message:
274
298
  rdoc_options: []
275
299
  require_paths:
276
300
  - lib
277
301
  required_ruby_version: !ruby/object:Gem::Requirement
302
+ none: false
278
303
  requirements:
279
- - - ">="
304
+ - - ! '>='
280
305
  - !ruby/object:Gem::Version
281
306
  version: 1.9.1
282
307
  required_rubygems_version: !ruby/object:Gem::Requirement
308
+ none: false
283
309
  requirements:
284
- - - ">="
310
+ - - ! '>='
285
311
  - !ruby/object:Gem::Version
286
312
  version: '0'
287
313
  requirements: []
288
314
  rubyforge_project: coderunner
289
- rubygems_version: 2.4.8
315
+ rubygems_version: 1.8.23
290
316
  signing_key:
291
- specification_version: 4
317
+ specification_version: 3
292
318
  summary: A framework for the automated running and analysis of simulations.
293
319
  test_files: []
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 554e5c730407b32651cda8ce43cd5453fad35132
4
- data.tar.gz: f34ed6190f5f242e748ecfbf24270ae60b92b9a0
5
- SHA512:
6
- metadata.gz: a1692edb1e21f67c49f4a720e52e2d7b1bf4738f41a9263d61714eec25c35b804ec8a9552d38f312e6400394dc804cfe5832d4ae5edad69501e740a1ca2c1a1d
7
- data.tar.gz: 67e773d77563e726b2d0f0f13573532c6a707d37ad76cce08c6ed9bec1ee7850e9783bc6943a9a49be35da6f4144c04eec2ee4828604b2fa99d0994ed492ba71