dev 1.0.9 → 1.0.10
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.
- data/lib/dev/Environment.rb +8 -2
- data/lib/dev/Project.rb +40 -5
- data/lib/dev/Tasks.rb +5 -0
- metadata +9 -9
data/lib/dev/Environment.rb
CHANGED
@@ -10,10 +10,17 @@ puts_debug "read " + __FILE__.foreground(:green)
|
|
10
10
|
module Dev
|
11
11
|
|
12
12
|
class Environment
|
13
|
+
def self.replace_text_in_glob(glob,search,replace)
|
14
|
+
Dir.glob(glob).each{ |f| replace_text_in_file(f,search,replace) }
|
15
|
+
end
|
16
|
+
|
13
17
|
def self.replace_text_in_file(filename,search,replace)
|
14
18
|
text1 = File.read(filename)
|
15
19
|
text2 = text1.gsub(search) { |str| str=replace }
|
16
|
-
|
20
|
+
unless text1==text2
|
21
|
+
File.open(filename,"w") { |f| f.puts text2 }
|
22
|
+
puts "replaced text in #{filename}"
|
23
|
+
end
|
17
24
|
end
|
18
25
|
|
19
26
|
def self.dev_root
|
@@ -21,7 +28,6 @@ class Environment
|
|
21
28
|
dir=ENV["HOME"] unless ENV["HOME"].nil?
|
22
29
|
dir=ENV["USERPROFILE"].gsub('\\','/') unless ENV["USERPROFILE"].nil?
|
23
30
|
dir=ENV["DEV_ROOT"].gsub('\\','/') unless ENV["DEV_ROOT"].nil?
|
24
|
-
|
25
31
|
return dir
|
26
32
|
end
|
27
33
|
|
data/lib/dev/Project.rb
CHANGED
@@ -26,7 +26,7 @@ class Project < Hash
|
|
26
26
|
# expand the command here....
|
27
27
|
command=expand_command(c)
|
28
28
|
if c.include?('<%') && c.include?('%>')
|
29
|
-
puts "Command: " + c
|
29
|
+
#puts "Command: " + c
|
30
30
|
eval(c.gsub("<%","").gsub("%>",""))
|
31
31
|
else
|
32
32
|
call=Dev::SystemCall.new(command)
|
@@ -77,6 +77,29 @@ class Project < Hash
|
|
77
77
|
"?"
|
78
78
|
end
|
79
79
|
|
80
|
+
def replace
|
81
|
+
hash=self[:replace]
|
82
|
+
unless hash.nil?
|
83
|
+
hash.each do |k,v|
|
84
|
+
unless v.nil?
|
85
|
+
# v[:file], v[:search], v[:replace],v[:glob]
|
86
|
+
file=v[:file]
|
87
|
+
search=v[:search]
|
88
|
+
replace=v[:replace]
|
89
|
+
glob=v[:glob]
|
90
|
+
unless search.nil? || replace.nil?
|
91
|
+
unless file.nil?
|
92
|
+
Dev::Environment.replace_text_in_file(file,search,replace)
|
93
|
+
end
|
94
|
+
unless glob.nil?
|
95
|
+
Dev::Environment.replace_text_in_glob(glob,search,replace)
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
102
|
+
|
80
103
|
def features
|
81
104
|
if self[:type]=="C#" && File.exists?("bin/x86/Release/#{self[:name]}.Features.dll")
|
82
105
|
call=Dev::SystemCall.new(expand_project_variables("<paths,nunit> /nologo bin/x86/Release/#{self[:name]}.Features.dll"))
|
@@ -117,16 +140,23 @@ class Project < Hash
|
|
117
140
|
value="C#" if key=="type"
|
118
141
|
|
119
142
|
|
120
|
-
|
143
|
+
value="**/*.{rb,feature,semver}" if key=="src_glob"
|
121
144
|
value="**/*.{cs,xaml,rb,resx,settings,feature,semver}" if key=="src_glob" && self[:type]=="C#"
|
145
|
+
value="**/*.{c,cpp,h,hpp,semver}" if key=="src_glob" && (self[:type]=="C++" || self[:type]=="c++" || self[:type]=="cpp")
|
122
146
|
value="**/*.{rb,feature,semver}" if key=="src_glob" && self[:type]=="ruby"
|
123
147
|
value="**/*.{rb,feature,gemspec,semver}" if key=="src_glob" && self[:type]=="gem"
|
124
|
-
value=Dir.glob(self[:src_glob]).length.to_s if key=="file_count"
|
148
|
+
#value=Dir.glob(self[:src_glob]).length.to_s if key=="file_count"
|
125
149
|
value=loc_total if key=="loc"
|
126
150
|
value="svn" if key=="scm_type" && File.exists?(".svn")
|
127
151
|
value="git" if key=="scm_type" && File.exists?(".git")
|
128
152
|
value="#{version.major}.#{version.minor}.#{version.patch}" if key=="version"
|
129
153
|
|
154
|
+
if key=="file_count"
|
155
|
+
unless Dir.glob(self[:src_glob]).nil?
|
156
|
+
value=Dir.glob(self[:src_glob]).length.to_s
|
157
|
+
end
|
158
|
+
end
|
159
|
+
|
130
160
|
hash=Hash.new
|
131
161
|
|
132
162
|
if(key=="paths")
|
@@ -211,8 +241,13 @@ class Project < Hash
|
|
211
241
|
def update_default_values
|
212
242
|
puts_debug "update_default_values"
|
213
243
|
|
214
|
-
[
|
215
|
-
|
244
|
+
self[:type]="C#" if self[:type].nil?
|
245
|
+
|
246
|
+
[ "version","dev_root","src_glob","file_count","loc","scm_type",
|
247
|
+
"paths","setup","compile","test","features","commit" ].each do |k|
|
248
|
+
puts_debug "set_default_value(#{k})"
|
249
|
+
set_default_value(k)
|
250
|
+
end
|
216
251
|
end
|
217
252
|
end
|
218
253
|
end # module Dev
|
data/lib/dev/Tasks.rb
CHANGED
@@ -44,6 +44,11 @@ task :commit do
|
|
44
44
|
PROJECT.commit # we want an exception raised here if PROJECT is undefined or nil
|
45
45
|
end
|
46
46
|
|
47
|
+
desc "replace text based on replace: hash entries"
|
48
|
+
task :replace do
|
49
|
+
PROJECT.replace
|
50
|
+
end
|
51
|
+
|
47
52
|
desc "count the lines of code"
|
48
53
|
task :loc do
|
49
54
|
PROJECT.loc
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dev
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.10
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-02-03 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &22112892 !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: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *22112892
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: semver
|
27
|
-
requirement: &
|
27
|
+
requirement: &22110456 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *22110456
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: countloc
|
38
|
-
requirement: &
|
38
|
+
requirement: &22142736 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *22142736
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rainbow
|
49
|
-
requirement: &
|
49
|
+
requirement: &22141956 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,7 +54,7 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *22141956
|
58
58
|
description: development tasks
|
59
59
|
email: lou.parslow@gmail.com
|
60
60
|
executables: []
|