dev_tasks 0.0.33 → 0.0.34
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 +4 -4
- data/lib/artifacts.rb +8 -14
- data/lib/dependencies.rb +50 -68
- data/lib/dev_tasks.rb +1 -1
- data/lib/environment.rb +0 -1
- data/lib/publish.rb +3 -3
- data/lib/spec.json +1 -1
- data/lib/test.rb +1 -1
- data/lib/upgrade.rb +0 -3
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 23a98457c480a7ce7cef8540ac4f523297e9d4ba
|
4
|
+
data.tar.gz: 2d3cba361183a0bb22ac5a4126a55db863aa9b7c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8f3c65ef3d772edc925ca44a6415de4bbdfc000b625dc25ba2a7e55741e3ee8aedb6e07a1a892938bfdc98dbacad4792e7d6b0b1f0483c683b1cc70f3113d55b
|
7
|
+
data.tar.gz: 05f68fdd7f2b52e280581ff6b90d79b51270d3368325bf4b9dcf1036ce8e1c312d728a5daf1efce498dbe88364c83af32dd5f630b3fd3913b7e8c33f7c9525ae
|
data/lib/artifacts.rb
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
require_relative('./dependencies.rb')
|
2
2
|
|
3
|
-
class Artifacts <
|
3
|
+
class Artifacts < Array
|
4
4
|
def initialize
|
5
5
|
# gem, dev_tasks-0.0.7.gem
|
6
6
|
Dir.glob('*.gemspec') {|f|
|
7
7
|
spec=Gem::Specification.load(f)
|
8
|
-
|
8
|
+
artifact="#{spec.name}-#{spec.version.to_s}.gem"
|
9
|
+
self << artifact if(!self.include?(artifact))
|
9
10
|
}
|
10
11
|
|
11
12
|
# C# dll, bin/Net4.0/QcNet.dll
|
@@ -16,20 +17,13 @@ class Artifacts < Hash
|
|
16
17
|
outputPath=text[/Release[.\w\W]+<OutputPath>([\w\.\\]+)</,1]
|
17
18
|
if(!assemblyName.nil? && !outputPath.nil? && !assemblyName.include?("Test"))
|
18
19
|
cs_dll = "#{outputPath}\\#{assemblyName}.dll".gsub("\\\\","\\").gsub('/','\\').gsub('\\','/')
|
19
|
-
self
|
20
|
+
self << cs_dll if(!self.include?(cs_dll))
|
20
21
|
|
21
22
|
# add in file dependencies
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
# d include to directory from which it was referenced, Visual Studio copies this to
|
27
|
-
# the location of cs_dll
|
28
|
-
cs_dll_dep=d.gsub(File.dirname(d),File.dirname(cs_dll)).gsub('\\','/')
|
29
|
-
name=d.gsub('\\','/').split('/').last.gsub('.dll','')
|
30
|
-
self["#{assemblyName} #{name}"] = cs_dll_dep
|
31
|
-
}
|
32
|
-
end
|
23
|
+
Dependencies.csharp_file_dependencies(File.read(p)).each{|dep|
|
24
|
+
cs_dll_dep=d.gsub(File.dirname(dep),File.dirname(cs_dll)).gsub('\\','/')
|
25
|
+
self << cs_dll_dep if(!self.include?(cs_dll_dep))
|
26
|
+
}
|
33
27
|
end
|
34
28
|
}
|
35
29
|
end
|
data/lib/dependencies.rb
CHANGED
@@ -1,86 +1,68 @@
|
|
1
|
+
# The discover method defines the following keys as appropriate:
|
2
|
+
# :ruby a string array of discovered require statements
|
3
|
+
# for example,
|
4
|
+
# given rb file containing
|
5
|
+
# require 'json'
|
6
|
+
# require 'yaml'
|
7
|
+
# the resulting dependies would be
|
8
|
+
# dep[:ruby]=['json','yaml']
|
9
|
+
#
|
10
|
+
# C# dependencies are returned as a hash, as they are seperated into
|
11
|
+
# two groups, :system and :file
|
12
|
+
#
|
13
|
+
#
|
1
14
|
class Dependencies < Hash
|
2
15
|
|
3
16
|
def initialize
|
4
|
-
|
5
|
-
initialize_csharp_dependencies
|
17
|
+
discover
|
6
18
|
end
|
7
19
|
|
8
|
-
def
|
9
|
-
ruby_deps
|
20
|
+
def discover
|
21
|
+
ruby_deps=Array.new
|
22
|
+
cs_system_deps=Array.new
|
23
|
+
cs_file_deps=Array.new
|
10
24
|
Dir.glob("**/*.rb").each{|f|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
25
|
+
text=File.read(f)
|
26
|
+
ruby_deps.zip(Dependencies.ruby_dependencies(text)).flatten.compact
|
27
|
+
cs_system_deps.zip(Dependencies.csharp_system_dependencies(text)).flatten.compact
|
28
|
+
cs_file_deps.zip(Dependencies.csharp_file_dependencies(text)).flatten.compact
|
15
29
|
}
|
16
|
-
if
|
17
|
-
|
18
|
-
self["
|
30
|
+
self[:ruby]=ruby_deps.sort if(ruby_deps.length>0)
|
31
|
+
if(cs_system_deps.length > 0 || cs_file_deps.length > 0)
|
32
|
+
self["C#"]=Hash.new
|
33
|
+
self["C#"][:system]=cs_system_deps.sort if(cs_system_deps.length > 0)
|
34
|
+
self["C#"][:file]=cs_file_deps.sort if(cs_file_deps.length > 0)
|
19
35
|
end
|
20
36
|
end
|
21
37
|
|
22
|
-
def
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
text=File.read(f)
|
29
|
-
text.scan(/<Reference Include="([\w\.-]+)"/).each{|r|
|
30
|
-
cs_dep_hash[r.first.to_s]=r.first.to_s if !cs_dep_hash.has_key? r.first.to_s
|
31
|
-
}
|
32
|
-
text.scan(/<HintPath>([\w\.\\\s-]+)</).each{|r|
|
33
|
-
hint = r.first.to_s
|
34
|
-
include = hint.split('\\').last
|
35
|
-
cs_dep_hash.delete include.gsub(".dll","")
|
36
|
-
cs_dep_hash[include]=hint
|
37
|
-
}
|
38
|
+
def self.ruby_dependencies source
|
39
|
+
deps=Array.new
|
40
|
+
deps=Array.new
|
41
|
+
source.scan(/require '([\w\/]+)/).each{|m|
|
42
|
+
dep=m.first.to_s
|
43
|
+
deps << dep if(!deps.include?(dep))
|
38
44
|
}
|
39
|
-
|
40
|
-
cs_dep_hash.each do |include,hint|
|
41
|
-
if(include==hint)
|
42
|
-
cs_deps[:system]=Array.new if !cs_deps.has_key?(:system)
|
43
|
-
cs_deps[:system]<< hint
|
44
|
-
else
|
45
|
-
cs_deps[:file]=Array.new if !cs_deps.has_key?(:file)
|
46
|
-
cs_deps[:file] << hint
|
47
|
-
end
|
48
|
-
end
|
49
|
-
if cs_deps.length > 0
|
50
|
-
cs_deps[:system]=cs_deps[:system].sort# = cs_deps.sort
|
51
|
-
cs_deps[:file]=cs_deps[:file]
|
52
|
-
self["C#"]=cs_deps
|
53
|
-
end
|
45
|
+
deps
|
54
46
|
end
|
55
47
|
|
56
|
-
def self.
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
text.scan(/<HintPath>([\w\.\\\s-]+)</).each{|r|
|
63
|
-
hint = r.first.to_s
|
64
|
-
include = hint.split('\\').last
|
65
|
-
cs_dep_hash.delete include.gsub(".dll","")
|
66
|
-
cs_dep_hash[include]=hint
|
48
|
+
def self.csharp_system_dependencies source
|
49
|
+
deps=Array.new
|
50
|
+
deps=Array.new
|
51
|
+
source.scan(/<Reference Include="([\w\.-]+)"[\s]+\//).each{|m|
|
52
|
+
dep=m.first.to_s
|
53
|
+
deps << dep if(!deps.include?(dep))
|
67
54
|
}
|
55
|
+
deps
|
56
|
+
end
|
68
57
|
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
end
|
78
|
-
end
|
79
|
-
if cs_deps.length > 0
|
80
|
-
cs_deps[:system]=cs_deps[:system].sort
|
81
|
-
cs_deps[:file]=cs_deps[:file]
|
82
|
-
end
|
83
|
-
cs_deps
|
58
|
+
def self.csharp_file_dependencies source
|
59
|
+
deps=Array.new
|
60
|
+
deps=Array.new
|
61
|
+
source.scan(/<HintPath>([\w\.\\\s-]+)</).each{|m|
|
62
|
+
dep=m.first.to_s
|
63
|
+
deps << dep if(!deps.include?(dep))
|
64
|
+
}
|
65
|
+
deps
|
84
66
|
end
|
85
67
|
|
86
68
|
def show
|
data/lib/dev_tasks.rb
CHANGED
@@ -18,7 +18,7 @@ class DevTasks < Hash
|
|
18
18
|
#hash = JSON.parse File.read("#{File.dirname(__FILE__)}/spec.json")
|
19
19
|
#self[:dev_tasks_gem]=JSON.parse File.read("#{File.dirname(__FILE__)}/spec.json")
|
20
20
|
|
21
|
-
self[:name]=Rake.application.original_dir.split('/').last
|
21
|
+
self[:name]=pwd.split('/').last#Rake.application.original_dir.split('/').last
|
22
22
|
self[:scm]=Environment.scm
|
23
23
|
self[:branch]=Environment.branch
|
24
24
|
self[:relative_directory]=Environment.relative_directory
|
data/lib/environment.rb
CHANGED
data/lib/publish.rb
CHANGED
@@ -7,12 +7,12 @@ class Publish < Array
|
|
7
7
|
def initialize
|
8
8
|
if(Environment.scm=='git')
|
9
9
|
artifacts=Artifacts.new
|
10
|
-
artifacts.each {|
|
10
|
+
artifacts.each {|artifact|
|
11
11
|
dest_dir = Environment.dev_root + "/dep/" + Environment.relative_directory + '/' + Environment.branch
|
12
|
-
dest = dest_dir + "/" +
|
12
|
+
dest = dest_dir + "/" + artifact
|
13
13
|
dest_dir=File.dirname(dest)
|
14
14
|
self.add "<%FileUtils.mkdir_p('#{dest_dir}')%>" if (!Dir.exists?(dest_dir))
|
15
|
-
self.add "<%FileUtils.cp('#{
|
15
|
+
self.add "<%FileUtils.cp('#{artifact}','#{dest}')%>"
|
16
16
|
}
|
17
17
|
end
|
18
18
|
end
|
data/lib/spec.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"dev_tasks","version":"0.0.
|
1
|
+
{"name":"dev_tasks","version":"0.0.34"}
|
data/lib/test.rb
CHANGED
@@ -3,7 +3,7 @@ class Test < Array
|
|
3
3
|
def initialize
|
4
4
|
# rspec tests, 'rspec --pattern="**/*.spec"'
|
5
5
|
if(Dir.glob("**/*spec.rb").length > 0)
|
6
|
-
self.add 'rspec
|
6
|
+
self.add 'rspec'
|
7
7
|
end
|
8
8
|
# nunit tests, 'nunit-console.exe "C::\\Projects\\MyProjects\\bin\\Release\\MyLib.Test.dll"'
|
9
9
|
if File.exist? Test.nunit_console
|
data/lib/upgrade.rb
CHANGED
@@ -3,12 +3,9 @@ require_relative('./environment.rb')
|
|
3
3
|
class Upgrade < Array
|
4
4
|
|
5
5
|
def initialize
|
6
|
-
puts "Upgrade discovery"
|
7
6
|
if(Environment.scm=='git' && Environment.branch=='develop')
|
8
7
|
Dir.glob('dep/**/*.dll').each {|f|
|
9
8
|
src=Environment.dev_root + "/" + f
|
10
|
-
puts "source: " + src
|
11
|
-
puts " dest: " + f + " " + File.mtime(f).to_s
|
12
9
|
if(File.exist?(src) && File.mtime(src) > File.mtime(f))
|
13
10
|
self.add "<%FileUtils.cp('#{src}','#{f}')%>"
|
14
11
|
end
|