gbud 0.2.1 → 0.2.2
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/gbud/base.rb +5 -1
- data/lib/gbud/messages.rb +8 -0
- data/lib/gbud/project_builder.rb +13 -9
- data/lib/templates/base.rb.erb +1 -1
- data/lib/templates/cli.rb.erb +6 -1
- data/lib/templates/executable.rb.erb +1 -1
- data/lib/templates/gemspec.rb.erb +4 -3
- data/lib/templates/namespace.rb.erb +1 -1
- data/lib/templates/test_hello.rb.erb +1 -1
- data/lib/templates/version.rb.erb +15 -0
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4fbe8230a90317ee15eeab98f2a88d7b88b54c766b61a946f9aab584e7f91af5
|
4
|
+
data.tar.gz: bbb628fd9b087b628d5d9d84271c35c32db1a7bb65035fba4b71be0bffc284a4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b19dc18be1c04bab21c5aefbff5a57d49a3e29d401dd21886d76d1a51f90f91fb070f10c5ec4fc71cb9cc519046ee7518bad29c173317f28186c9a37b9dd9b6f
|
7
|
+
data.tar.gz: 5256c4b34eaf099f579b0612109a92e1ccf926a8d6e8fdf828cf02c0422de58231e77e8d3e3266fc6fd226e51b17cfe10db44fc66ff647028b8d41a1faf025c7
|
data/lib/gbud/base.rb
CHANGED
@@ -52,7 +52,7 @@ optparse = OptionParser.new do |opts|
|
|
52
52
|
options[:cli] = true
|
53
53
|
end
|
54
54
|
|
55
|
-
opts.on('--no-cli', 'Creates
|
55
|
+
opts.on('--no-cli', 'Creates a project without an executable') do
|
56
56
|
options[:cli] = false
|
57
57
|
end
|
58
58
|
|
@@ -64,6 +64,10 @@ optparse = OptionParser.new do |opts|
|
|
64
64
|
puts GBud::Messages.warranty
|
65
65
|
end
|
66
66
|
|
67
|
+
opts.on('-v', '--version', 'Displays the program version') do
|
68
|
+
puts GBud::Messages.version
|
69
|
+
end
|
70
|
+
|
67
71
|
opts.on_tail('-h', '--help', 'Displays the help screen') do
|
68
72
|
puts opts
|
69
73
|
exit
|
data/lib/gbud/messages.rb
CHANGED
@@ -27,6 +27,8 @@ module GBud
|
|
27
27
|
# Module containing methods used to prompt the user for program
|
28
28
|
# input.
|
29
29
|
module Messages
|
30
|
+
VERSION = '0.2.2'
|
31
|
+
|
30
32
|
##
|
31
33
|
# Returns the license message.
|
32
34
|
def self.license
|
@@ -44,5 +46,11 @@ module GBud
|
|
44
46
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
45
47
|
GNU General Public License for more details."
|
46
48
|
end
|
49
|
+
|
50
|
+
##
|
51
|
+
# Returns the version number.
|
52
|
+
def self.version
|
53
|
+
"gbud v#{VERSION}"
|
54
|
+
end
|
47
55
|
end
|
48
56
|
end
|
data/lib/gbud/project_builder.rb
CHANGED
@@ -47,26 +47,28 @@ module GBud
|
|
47
47
|
@cli = cli
|
48
48
|
@templates = {
|
49
49
|
'readme.md': 'README.md',
|
50
|
-
'gemspec.rb': "#{metadata[:name]}.gemspec",
|
50
|
+
'gemspec.rb': "#{snake_case(metadata[:name])}.gemspec",
|
51
51
|
'gemfile.rb': 'Gemfile',
|
52
52
|
'rakefile.rb': 'Rakefile',
|
53
53
|
'base.rb': 'base.rb',
|
54
54
|
'hello.rb': 'hello.rb',
|
55
55
|
'test_hello.rb': 'test_hello.rb',
|
56
|
-
'namespace.rb': "#{metadata[:name]
|
56
|
+
'namespace.rb': "#{snake_case(metadata[:name])}.rb",
|
57
|
+
'version.rb': 'version.rb'
|
57
58
|
}
|
58
59
|
@assets = {
|
59
60
|
license: 'LICENSE'
|
60
61
|
}
|
61
62
|
@paths = {
|
62
|
-
project_dir: "#{metadata[:name]}/",
|
63
|
-
project_lib_dir: "#{metadata[:name]}/lib/",
|
64
|
-
project_lib_project_dir: "#{metadata[:name]}/lib/#{metadata[:name]}/",
|
65
|
-
project_test_dir: "#{metadata[:name]}/test/"
|
63
|
+
project_dir: "#{snake_case(metadata[:name])}/",
|
64
|
+
project_lib_dir: "#{snake_case(metadata[:name])}/lib/",
|
65
|
+
project_lib_project_dir: "#{snake_case(metadata[:name])}/lib/#{snake_case(metadata[:name])}/",
|
66
|
+
project_test_dir: "#{snake_case(metadata[:name])}/test/"
|
66
67
|
}
|
67
|
-
|
68
|
-
|
69
|
-
|
68
|
+
if cli == true
|
69
|
+
@templates[:'executable.rb'] = snake_case(metadata[:name])
|
70
|
+
@paths[:project_bin_dir] = "#{snake_case(metadata[:name])}/bin/"
|
71
|
+
end
|
70
72
|
end
|
71
73
|
|
72
74
|
##
|
@@ -121,6 +123,8 @@ module GBud
|
|
121
123
|
@paths[:project_test_dir]
|
122
124
|
when :'namespace.rb'
|
123
125
|
@paths[:project_lib_dir]
|
126
|
+
when :'version.rb'
|
127
|
+
@paths[:project_lib_project_dir]
|
124
128
|
end
|
125
129
|
end
|
126
130
|
|
data/lib/templates/base.rb.erb
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
# License:: GNU Public License 3
|
10
10
|
#
|
11
11
|
# Main application file that loads other files.
|
12
|
-
require '<%= @metadata[:name] %>/hello'
|
12
|
+
require '<%= snake_case(@metadata[:name]) %>/hello'
|
13
13
|
|
14
14
|
<%= render 'cli.rb' if @cli == true %>
|
15
15
|
# NOTE: You should replace the greet functionality with some of your own code.
|
data/lib/templates/cli.rb.erb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require '<%= snake_case(@metadata[:name]) %>/version'
|
1
2
|
require 'optparse'
|
2
3
|
require 'English'
|
3
4
|
|
@@ -9,7 +10,7 @@ end
|
|
9
10
|
options = {}
|
10
11
|
|
11
12
|
optparse = OptionParser.new do |opts|
|
12
|
-
opts.banner = 'Usage: <%= @metadata[:name] %> [options]'
|
13
|
+
opts.banner = 'Usage: <%= snake_case(@metadata[:name]) %> [options]'
|
13
14
|
|
14
15
|
opts.on('-g', '--greet NAME', 'Provides a greeting given a name.') do |name|
|
15
16
|
options[:greet] = name
|
@@ -31,6 +32,10 @@ GNU General Public License for more details.
|
|
31
32
|
"
|
32
33
|
end
|
33
34
|
|
35
|
+
opts.on('-v', '--version', 'Displays the program version') do
|
36
|
+
puts "<%= snake_case(metadata[:name]) %> v<%= '#{' + camel_case(metadata[:name]) + '::VERSION' + '}' %>"
|
37
|
+
end
|
38
|
+
|
34
39
|
opts.on_tail('-h', '--help', 'Displays the help screen') do
|
35
40
|
puts opts
|
36
41
|
exit
|
@@ -4,7 +4,7 @@
|
|
4
4
|
<%= render 'copyright_snippet.rb' %>
|
5
5
|
|
6
6
|
##
|
7
|
-
# = /bin/<%= @metadata[:name] %>
|
7
|
+
# = /bin/<%= snake_case(@metadata[:name]) %>
|
8
8
|
# Author:: <%= listify(@metadata[:authors]) %>
|
9
9
|
# Copyright:: Copyright <%= Date.today.year %> <%= listify(@metadata[:authors]) %>
|
10
10
|
# License:: GNU Public License 3
|
@@ -4,10 +4,11 @@
|
|
4
4
|
|
5
5
|
lib = File.expand_path('../lib', __dir__)
|
6
6
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
7
|
+
require File.expand_path('../lib/<%= snake_case(@metadata[:name]) %>/version', __FILE__)
|
7
8
|
|
8
9
|
Gem::Specification.new do |s|
|
9
|
-
s.name = '<%= @metadata[:name] %>'
|
10
|
-
s.version =
|
10
|
+
s.name = '<%= snake_case(@metadata[:name]) %>'
|
11
|
+
s.version = <%= camel_case(@metadata[:name]) %>::VERSION
|
11
12
|
s.platform = Gem::Platform::RUBY
|
12
13
|
s.authors = <%= @metadata[:authors].to_s.tr('"', "'") %>
|
13
14
|
s.email = '<%= @metadata[:email] %>'
|
@@ -19,7 +20,7 @@ Gem::Specification.new do |s|
|
|
19
20
|
s.license = '<%= @metadata[:license] %>'
|
20
21
|
s.files = Dir['lib/**/*']
|
21
22
|
<% if @cli == true %>
|
22
|
-
s.executables = ['<%= @metadata[:name] %>']
|
23
|
+
s.executables = ['<%= snake_case(@metadata[:name]) %>']
|
23
24
|
<% end %>
|
24
25
|
s.test_files = Dir['test/**/*']
|
25
26
|
s.require_path = ['lib']
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
<%= render 'copyright_snippet.rb' %>
|
4
|
+
|
5
|
+
##
|
6
|
+
# = version.rb
|
7
|
+
# Author:: <%= listify(@metadata[:authors]) %>
|
8
|
+
# Copyright:: Copyright <%= Date.today.year %> <%= listify(@metadata[:authors]) %>
|
9
|
+
# License:: GNU Public License 3
|
10
|
+
#
|
11
|
+
# Module for namespacing application classes.
|
12
|
+
module <%= camel_case(@metadata[:name]) %>
|
13
|
+
# Program version number
|
14
|
+
VERSION = '<%= @metadata[:version] %>'
|
15
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gbud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Richard Davis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-12-24 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: |
|
14
14
|
This project aims to make starting a new gem project simple by automating
|
@@ -38,9 +38,10 @@ files:
|
|
38
38
|
- lib/templates/rakefile.rb.erb
|
39
39
|
- lib/templates/readme.md.erb
|
40
40
|
- lib/templates/test_hello.rb.erb
|
41
|
+
- lib/templates/version.rb.erb
|
41
42
|
- test/test_project_builder.rb
|
42
43
|
- test/test_project_metadata.rb
|
43
|
-
homepage: http://www.
|
44
|
+
homepage: http://www.gitlab.com/d3d1rty/gbud
|
44
45
|
licenses:
|
45
46
|
- GPL-3.0
|
46
47
|
metadata: {}
|