dake 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 480b83fa04055fcf5d393da94b870bafdb901c5a39788d52dbee7d89244f5f1f
4
- data.tar.gz: a10e599b85562d3302997cd2500117357fbbacd2bae85cf7232452246afe5613
3
+ metadata.gz: 6015ab5226665506052c97193879c5747c726924fe1a0706ed68d26e6616e067
4
+ data.tar.gz: 9566fa629a716eede2f11277c7cdc40c009377e33ae84c05261ec28c433821e3
5
5
  SHA512:
6
- metadata.gz: 6c849058294a6c5daf084d19ba34d6cbecc53736863958cd064f1ab5f2f5d1cbe1a83c903fc137622ce02d2fa6547285a07882643b84d01c42b6a35b809bacb4
7
- data.tar.gz: c665db3ce2bafab077723497299735e5c9d455654385b8c1845e944454ec0140c5410bbf5b4b67410224eb27b39ac97d7798a284b47c9d3e6d77ff2ce4394cd4
6
+ metadata.gz: 3f53b15a4c8edf2f1559f1c45f573762393652f2fd924c61c834d76a092acb37dce1b22efef07f58b34eeb7f8e272d14a40997bd7b7b44b0e62a7cc7129bb1ef
7
+ data.tar.gz: d2516d0cf223c38b599ca96beb37fc3f4d87e68dd04772313255d669eb3ccfe6f3f97740a6910e1268259a6f3db1a73875998082bbdc5bdbb164b52e86e42c73
data/dake.gemspec CHANGED
@@ -14,6 +14,8 @@ Gem::Specification.new do |spec|
14
14
  spec.homepage = "https://github.com/minor6th/dake"
15
15
  spec.license = "MIT"
16
16
 
17
+ spec.required_ruby_version = '>= 2.4.0'
18
+
17
19
  # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
18
20
  # to allow pushing to a single host or delete this section to allow pushing to any host.
19
21
  # if spec.respond_to?(:metadata)
@@ -43,10 +45,10 @@ Gem::Specification.new do |spec|
43
45
  spec.add_development_dependency "awesome_print"
44
46
 
45
47
  spec.add_runtime_dependency "gli"
46
- spec.add_runtime_dependency "git"
48
+ #spec.add_runtime_dependency "git"
47
49
  #spec.add_runtime_dependency "sqlite3"
48
50
  spec.add_runtime_dependency "colorize"
49
- spec.add_runtime_dependency "sinatra"
51
+ #spec.add_runtime_dependency "sinatra"
50
52
  spec.add_runtime_dependency "parslet"
51
53
  spec.add_runtime_dependency "concurrent-ruby"
52
54
  end
data/lib/dake/database.rb CHANGED
@@ -1,4 +1,4 @@
1
- require 'git'
1
+ # require 'git'
2
2
  # require "sqlite3"
3
3
 
4
4
  class DakeDB
data/lib/dake/executor.rb CHANGED
@@ -47,50 +47,52 @@ class DakeExecutor
47
47
 
48
48
  while next_step = queue.deq
49
49
  @pool.post(next_step) do |step|
50
- lock.acquire_read_lock
51
- error_step = error_steps.include? step
52
- lock.release_read_lock
53
- if error_step
54
- line, column = @analyzer.step_line_and_column step
55
- msg = "Step(#{step.object_id}) defined in #{step.src_file} at #{line}:#{column} " +
56
- "skipped due to prerequisite step(s) error."
57
- error_queue << Exception.new(msg)
58
- else
59
- execute_step(step, dry_run, log)
60
- end
61
- lock.acquire_write_lock
62
- dep_map.delete step
63
- if dep_map.empty?
64
- queue.close
65
- else
66
- @dep_graph.succ_step[step].each do |succ|
67
- next unless dep_map[succ]
68
- dep_map[succ].delete step
69
- if dep_map[succ].empty?
70
- queue << succ
71
- elsif dep_map[succ].all? { |dep_step| error_steps.include? dep_step }
72
- error_steps << succ
73
- queue << succ
50
+ begin
51
+ lock.acquire_read_lock
52
+ error_step = error_steps.include? step
53
+ lock.release_read_lock
54
+ if error_step
55
+ line, column = @analyzer.step_line_and_column step
56
+ msg = "Step(#{step.object_id}) defined in #{step.src_file} at #{line}:#{column} " +
57
+ "skipped due to prerequisite step(s) error."
58
+ error_queue << Exception.new(msg)
59
+ else
60
+ execute_step(step, dry_run, log)
61
+ end
62
+ lock.acquire_write_lock
63
+ dep_map.delete step
64
+ if dep_map.empty?
65
+ queue.close
66
+ else
67
+ @dep_graph.succ_step[step].each do |succ|
68
+ next unless dep_map[succ]
69
+ dep_map[succ].delete step
70
+ if dep_map[succ].empty?
71
+ queue << succ
72
+ elsif dep_map[succ].all? { |dep_step| error_steps.include? dep_step }
73
+ error_steps << succ
74
+ queue << succ
75
+ end
74
76
  end
75
77
  end
76
- end
77
- lock.release_write_lock
78
- rescue Exception => e
79
- error_queue << e
80
- lock.acquire_write_lock
81
- error_steps << step
82
- dep_map.delete step
83
- if dep_map.empty?
84
- queue.close
85
- else
86
- @dep_graph.succ_step[step].each do |succ|
87
- if dep_map[succ].all? { |dep_step| error_steps.include? dep_step }
88
- error_steps << succ
89
- queue << succ
78
+ lock.release_write_lock
79
+ rescue Exception => e
80
+ error_queue << e
81
+ lock.acquire_write_lock
82
+ error_steps << step
83
+ dep_map.delete step
84
+ if dep_map.empty?
85
+ queue.close
86
+ else
87
+ @dep_graph.succ_step[step].each do |succ|
88
+ if dep_map[succ].all? { |dep_step| error_steps.include? dep_step }
89
+ error_steps << succ
90
+ queue << succ
91
+ end
90
92
  end
91
93
  end
94
+ lock.release_write_lock
92
95
  end
93
- lock.release_write_lock
94
96
  end
95
97
  end
96
98
  @pool.shutdown
data/lib/dake/scheme.rb CHANGED
@@ -36,7 +36,7 @@ module DakeScheme
36
36
  def initialize(scheme_part, path_part, step)
37
37
  if path_part.start_with? '/'
38
38
  @path = path_part
39
- @src = Pathname.new(path_part).relative_path_from(step.context['BASE'])
39
+ @src = Pathname.new(path_part).relative_path_from(Pathname.new(step.context['BASE']))
40
40
  else
41
41
  @path = File.expand_path(path_part, step.context['BASE'])
42
42
  @src = path_part
data/lib/dake/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Dake
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dake
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - minor6th
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-04-07 00:00:00.000000000 Z
11
+ date: 2019-04-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -94,20 +94,6 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: git
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :runtime
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
97
  - !ruby/object:Gem::Dependency
112
98
  name: colorize
113
99
  requirement: !ruby/object:Gem::Requirement
@@ -122,20 +108,6 @@ dependencies:
122
108
  - - ">="
123
109
  - !ruby/object:Gem::Version
124
110
  version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: sinatra
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- version: '0'
132
- type: :runtime
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- version: '0'
139
111
  - !ruby/object:Gem::Dependency
140
112
  name: parslet
141
113
  requirement: !ruby/object:Gem::Requirement
@@ -205,7 +177,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
205
177
  requirements:
206
178
  - - ">="
207
179
  - !ruby/object:Gem::Version
208
- version: '0'
180
+ version: 2.4.0
209
181
  required_rubygems_version: !ruby/object:Gem::Requirement
210
182
  requirements:
211
183
  - - ">="