vls 0.3.3 → 0.3.4
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/README.md +99 -0
- data/bin/vls +45 -28
- data/lib/vls.rb +14 -39
- data/lib/vls/monkey_patch.rb +35 -0
- data/lib/vls/version.rb +4 -1
- data/vls.gemspec +1 -2
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ddf99496065f624a2b98d4bdf73233b619e3e42d
|
4
|
+
data.tar.gz: 8eecdac22d3507bfffd0364aa20ee96a17f9bbe2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 78608e23c2555a9f291c39a212868d8ff1eba1993064c5ccd8776b518826aea6aceff463d488c56fcbc66cce4e9e3b1143d8ac0e361daad174d805f7f4ec3b54
|
7
|
+
data.tar.gz: 503caa9869416aa4a34497ec745f026c2cd22e1379e05cece281689b1b76bfa298ae59158ce335a2b394ab8a8f1753a494e049a90f845f628bc1622dbb0a8530
|
data/README.md
CHANGED
@@ -71,6 +71,105 @@ Note that the vls method does not accept a list of modules to be required. It
|
|
71
71
|
is assumed that when embedded within an application, the needed facilities
|
72
72
|
would have already been loaded.
|
73
73
|
|
74
|
+
## The Rails Console
|
75
|
+
|
76
|
+
If the vls gem has been added to a rails project, its functionality is also
|
77
|
+
easily accessed via the rails console:
|
78
|
+
|
79
|
+
$ rails console
|
80
|
+
|
81
|
+
followed by
|
82
|
+
|
83
|
+
```ruby
|
84
|
+
VersionLS.ls
|
85
|
+
```
|
86
|
+
|
87
|
+
will create a formatted listing of the modules with version info of the module
|
88
|
+
load out of the web site. For example:
|
89
|
+
|
90
|
+
$ rails console
|
91
|
+
Loading development environment (Rails 4.2.6)
|
92
|
+
irb(main):001:0> VersionLS.ls
|
93
|
+
ActionDispatch::Journey::Router, 2.0.0
|
94
|
+
ActionMailer, 4.2.6
|
95
|
+
ActionPack, 4.2.6
|
96
|
+
ActionView, 4.2.6
|
97
|
+
ActiveJob, 4.2.6
|
98
|
+
ActiveModel, 4.2.6
|
99
|
+
ActiveRecord, 4.2.6
|
100
|
+
ActiveSupport, 4.2.6
|
101
|
+
ActiveSupport::Logger, 1.2.7
|
102
|
+
Arel, 6.0.3
|
103
|
+
Bundler, 1.11.2
|
104
|
+
Coffee::Rails, 4.1.1
|
105
|
+
Concurrent, 1.0.1
|
106
|
+
Erubis, 2.7.0
|
107
|
+
ExecJS, 2.6.0
|
108
|
+
Gem, 2.2.2
|
109
|
+
I18n, 0.7.0
|
110
|
+
IRB::ReadlineInputMethod, 5.2
|
111
|
+
JSON, 1.8.3
|
112
|
+
Jquery::Rails, 4.1.1
|
113
|
+
Logger, 1.2.7
|
114
|
+
Loofah, 2.0.3
|
115
|
+
MIME::Type, 2.99.1
|
116
|
+
MIME::Types, 2.99.1
|
117
|
+
MIME::Types::WarnLogger, 1.2.7
|
118
|
+
Mail, 2.6.3
|
119
|
+
MultiJson, 1.11.2
|
120
|
+
Nokogiri, 1.6.7.2
|
121
|
+
OpenSSL, 1.1.0
|
122
|
+
PG, 0.18.4
|
123
|
+
Psych, 2.0.5
|
124
|
+
Rack, 1.3
|
125
|
+
Rack::Test, 0.6.3
|
126
|
+
Rails, 4.2.6
|
127
|
+
Rails::Html::FullSanitizer, 1.0.3
|
128
|
+
Rails::Html::LinkSanitizer, 1.0.3
|
129
|
+
Rails::Html::Sanitizer, 1.0.3
|
130
|
+
Rails::Html::WhiteListSanitizer, 1.0.3
|
131
|
+
Readline, 5.2
|
132
|
+
Sass, 3.4.21 (Selective Steve)
|
133
|
+
Sass::Rails, 5.0.4
|
134
|
+
Sprockets, 3.5.2
|
135
|
+
Sprockets::Cache, 3.0
|
136
|
+
Sprockets::ClosureCompressor, 1
|
137
|
+
Sprockets::CoffeeScriptProcessor, 1
|
138
|
+
Sprockets::DirectiveProcessor, 1
|
139
|
+
Sprockets::EcoProcessor, 1
|
140
|
+
Sprockets::EjsProcessor, 1
|
141
|
+
Sprockets::Rails, 3.0.4
|
142
|
+
Sprockets::SassCompressor, 1
|
143
|
+
Sprockets::UglifierCompressor, 1
|
144
|
+
Sprockets::YUICompressor, 1
|
145
|
+
TZInfo::Data, 1.2016.2
|
146
|
+
ThreadSafe, 0.3.5
|
147
|
+
Tilt, 2.0.2
|
148
|
+
Turbolinks, 2.5.3
|
149
|
+
URI, 0.9.11
|
150
|
+
URI::FTP, 0.9.11
|
151
|
+
URI::GID, 0.9.11
|
152
|
+
URI::Generic, 0.9.11
|
153
|
+
URI::HTTP, 0.9.11
|
154
|
+
URI::HTTPS, 0.9.11
|
155
|
+
URI::LDAP, 0.9.11
|
156
|
+
URI::LDAPS, 0.9.11
|
157
|
+
URI::MailTo, 0.9.11
|
158
|
+
Uglifier, 2.7.2
|
159
|
+
Zlib, 0.6.0
|
160
|
+
=> nil
|
161
|
+
irb(main):002:0>
|
162
|
+
|
163
|
+
## Usage in Rails Views
|
164
|
+
|
165
|
+
It is also possible to incorporate vls data into a view using the vls method
|
166
|
+
in a controller and passing the resultant array of data to a view for
|
167
|
+
rendering in a web page. This may be useful for a diagnostic or informational
|
168
|
+
page in the web site.
|
169
|
+
|
170
|
+
A detailed examination of this task is beyond the scope of this document and
|
171
|
+
readers are advised to consult Ruby on Rails tutorials for more information.
|
172
|
+
|
74
173
|
## Contributing
|
75
174
|
|
76
175
|
#### Plan A
|
data/bin/vls
CHANGED
@@ -1,39 +1,56 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
#
|
3
|
-
# The vls command line utility script.
|
4
|
-
#
|
2
|
+
#The vls command line utility script.
|
5
3
|
|
6
|
-
|
4
|
+
require_relative '../lib/vls'
|
7
5
|
|
8
|
-
|
9
|
-
puts
|
6
|
+
def vls_show_header
|
7
|
+
puts "vls (VersionLS): #{VersionLS::VERSION}"
|
8
|
+
puts
|
9
|
+
end
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
puts
|
14
|
-
puts " <names> are gems/files to be required before modules are listed."
|
11
|
+
def vls_show_help
|
12
|
+
vls_show_header
|
13
|
+
puts VersionLS::DESCRIPTION
|
15
14
|
puts
|
16
|
-
puts "
|
15
|
+
puts "Usage template:"
|
16
|
+
puts "$ vls <options> <names>"
|
17
|
+
puts "\n<options>"
|
18
|
+
puts " --help, -h, -? = Display this text and exit."
|
19
|
+
puts " --raw, -r = Display results with no header text."
|
20
|
+
puts "\n<names> are gems/files to be required before modules are listed."
|
21
|
+
puts "\nNote:"
|
17
22
|
puts " To specify a file instead of a gem, a '.rb' extension is required."
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
end
|
23
|
+
exit
|
24
|
+
end
|
25
|
+
|
26
|
+
load_list, no_header = [], false
|
27
|
+
|
28
|
+
ARGV.each do |arg|
|
29
|
+
case arg
|
30
|
+
when "--help", "-h", "-?"
|
31
|
+
vls_show_help
|
32
|
+
when "--raw", "-r"
|
33
|
+
no_header = true
|
34
|
+
else
|
35
|
+
load_list << arg
|
32
36
|
end
|
37
|
+
end
|
33
38
|
|
34
|
-
|
39
|
+
vls_show_help if load_list.empty?
|
40
|
+
vls_show_header unless no_header
|
41
|
+
errors_found = false
|
35
42
|
|
36
|
-
|
37
|
-
|
43
|
+
load_list.each do |pkg|
|
44
|
+
begin
|
45
|
+
if pkg.downcase.end_with?('.rb')
|
46
|
+
require Dir.getwd + '/' + pkg
|
47
|
+
else
|
48
|
+
require pkg
|
49
|
+
end
|
50
|
+
rescue LoadError, StandardError => error
|
51
|
+
puts "Error loading #{pkg}, #{error.message}"
|
52
|
+
errors_found = true
|
38
53
|
end
|
39
54
|
end
|
55
|
+
|
56
|
+
VersionLS.ls unless errors_found
|
data/lib/vls.rb
CHANGED
@@ -1,43 +1,16 @@
|
|
1
1
|
# coding: utf-8
|
2
2
|
|
3
|
+
require_relative "vls/monkey_patch"
|
3
4
|
require_relative "vls/version"
|
4
5
|
|
5
|
-
#An addition to the Object class for vls support.
|
6
|
-
class Object
|
7
|
-
#Get the vls version string from this module.
|
8
|
-
def to_vls_version_string
|
9
|
-
"version #{self.class} ???"
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
#An addition to the String class for vls support.
|
14
|
-
class String
|
15
|
-
#Get this string as a vls version string.
|
16
|
-
def to_vls_version_string
|
17
|
-
self
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
#An addition to the Module class for vls support.
|
22
|
-
class Module
|
23
|
-
#Get the vls version string from this module.
|
24
|
-
def to_vls_version_string
|
25
|
-
self::STRING
|
26
|
-
rescue
|
27
|
-
"version #{self} ???"
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
#An addition to the Array class for vls support.
|
32
|
-
class Array
|
33
|
-
#Get the vls version string from this array.
|
34
|
-
def to_vls_version_string
|
35
|
-
(1..5) === self.length ? self.join('.') : super
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
6
|
# The Version LiSt utility module.
|
40
7
|
module VersionLS
|
8
|
+
#Perform a Versioned LiSt to the console.
|
9
|
+
def self.ls
|
10
|
+
vls.each{|mod| puts "#{mod[0]}, #{mod[1]}"}
|
11
|
+
nil
|
12
|
+
end
|
13
|
+
|
41
14
|
#Execute the core of the vls command and return an array of
|
42
15
|
#[module, version] arrays.
|
43
16
|
def self.vls
|
@@ -54,11 +27,13 @@ module VersionLS
|
|
54
27
|
|
55
28
|
#Get a list of modules that have VERSION info.
|
56
29
|
def self.modules
|
57
|
-
mods = ObjectSpace.each_object(Module).
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
30
|
+
mods = ObjectSpace.each_object(Module).
|
31
|
+
select do |mod|
|
32
|
+
mod.const_defined?("VERSION")
|
33
|
+
end.
|
34
|
+
sort do |first, second|
|
35
|
+
first.name <=> second.name
|
36
|
+
end
|
62
37
|
|
63
38
|
mods - [VersionLS]
|
64
39
|
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
#An addition to the Object class for vls support.
|
4
|
+
class Object
|
5
|
+
#Get the vls version string from this module.
|
6
|
+
def to_vls_version_string
|
7
|
+
"version #{self.class} ???"
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
#An addition to the String class for vls support.
|
12
|
+
class String
|
13
|
+
#Get this string as a vls version string.
|
14
|
+
def to_vls_version_string
|
15
|
+
self
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
#An addition to the Module class for vls support.
|
20
|
+
class Module
|
21
|
+
#Get the vls version string from this module.
|
22
|
+
def to_vls_version_string
|
23
|
+
self::STRING
|
24
|
+
rescue
|
25
|
+
"version #{self} ???"
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
#An addition to the Array class for vls support.
|
30
|
+
class Array
|
31
|
+
#Get the vls version string from this array.
|
32
|
+
def to_vls_version_string
|
33
|
+
(1..5) === self.length ? self.join('.') : super
|
34
|
+
end
|
35
|
+
end
|
data/lib/vls/version.rb
CHANGED
data/vls.gemspec
CHANGED
@@ -9,8 +9,7 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["Peter Camilleri"]
|
10
10
|
spec.email = ["peter.c.camilleri@gmail.com"]
|
11
11
|
|
12
|
-
spec.description =
|
13
|
-
"modules used by the specified gems/ruby files."
|
12
|
+
spec.description = VersionLS::DESCRIPTION
|
14
13
|
spec.summary = "A version listing utility"
|
15
14
|
spec.homepage = "http://teuthida-technologies.com/"
|
16
15
|
spec.license = "MIT"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vls
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Camilleri
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-06-
|
11
|
+
date: 2016-06-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -53,6 +53,7 @@ files:
|
|
53
53
|
- README.md
|
54
54
|
- bin/vls
|
55
55
|
- lib/vls.rb
|
56
|
+
- lib/vls/monkey_patch.rb
|
56
57
|
- lib/vls/version.rb
|
57
58
|
- rakefile.rb
|
58
59
|
- reek.txt
|