bundlegem 0.0.8 → 0.0.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +9 -9
  3. data/bin/bundlegem +7 -2
  4. data/changelog +48 -4
  5. data/config/config +1 -1
  6. data/lib/bundlegem.rb +5 -2
  7. data/lib/bundlegem/cli/gem.rb +3 -2
  8. data/lib/bundlegem/strings.rb +1 -0
  9. data/lib/bundlegem/templates/c_extension_gem/#{name}.gemspec.tt +2 -9
  10. data/lib/bundlegem/templates/c_extension_gem/Rakefile.tt +0 -12
  11. data/lib/bundlegem/templates/cli_gem/#{name}.gemspec.tt +4 -11
  12. data/lib/bundlegem/templates/cli_gem/Rakefile.tt +0 -19
  13. data/lib/bundlegem/templates/newgem/#{name}.gemspec.tt +3 -11
  14. data/lib/bundlegem/version.rb +1 -1
  15. data/spec/bundlegem_spec.rb +1 -1
  16. metadata +6 -22
  17. data/lib/bundlegem/templates/service/#{name}.gemspec.tt +0 -34
  18. data/lib/bundlegem/templates/service/.travis.yml.tt +0 -3
  19. data/lib/bundlegem/templates/service/Gemfile.tt +0 -4
  20. data/lib/bundlegem/templates/service/LICENSE.txt.tt +0 -21
  21. data/lib/bundlegem/templates/service/README.md +0 -5
  22. data/lib/bundlegem/templates/service/README.md.tt +0 -23
  23. data/lib/bundlegem/templates/service/Rakefile.tt +0 -25
  24. data/lib/bundlegem/templates/service/bin/#{name}.tt +0 -27
  25. data/lib/bundlegem/templates/service/changelog.tt +0 -6
  26. data/lib/bundlegem/templates/service/gitignore.tt +0 -10
  27. data/lib/bundlegem/templates/service/lib/#{name}.rb.tt +0 -26
  28. data/lib/bundlegem/templates/service/lib/#{name}/version.rb.tt +0 -7
  29. data/lib/bundlegem/templates/service/rspec.tt +0 -2
  30. data/lib/bundlegem/templates/service/spec/newgem_spec.rb.tt +0 -11
  31. data/lib/bundlegem/templates/service/spec/spec_helper.rb.tt +0 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 4e5e797b5856b222d593bf5b5e8916bd616f66f1
4
- data.tar.gz: 5839b9e9cd73a5252259e22b8049a8de2ba296b9
2
+ SHA256:
3
+ metadata.gz: e98962982dad9409fe6231e3f97bfb1957a96539f48f6476b8230f48faf60fdf
4
+ data.tar.gz: bdcfdd4d857319258605a6c31fcde3deeae48a2853bc7d1b7cd8946c963e9783
5
5
  SHA512:
6
- metadata.gz: f1ce5dc9007921c797c56d8717d1c4a97feb68ea56d420dfdd97cb09f598278945a61ed36fba122ab2fb62e722610d1a5c54d9ffb25c5d8bf05b1cc697702808
7
- data.tar.gz: d36b8764acd21cb34d9e5b2db1b6c690eeb75b33ed9383eea394577d07ac133d7eeec07c79b614e9a0b45c9763413e35b8f730a26b5f0a3a6040fa76adf4ad6d
6
+ metadata.gz: 6b47d5c96b0fc2fd99341e8940efb105939ba8df39c652a7a522d940b127c4d44d20c1a036685bf3660f5631bb2ad12b01ae7d3a30648927b2d79b84fb128f01
7
+ data.tar.gz: 0a4f4da996e298b5a00afcb317875d2fe73a08750c4e94fd67da2ac3402330084304bc082965ab4f8a996bc608ae45f37cfe1dfdf2de8e7bc874a964c43dbf29
data/README.md CHANGED
@@ -1,14 +1,14 @@
1
1
  # BundleGem: A Gem Project Generator with User Defined Templates
2
2
 
3
- I've more or less taken the code out of Bundler's `bundle gem` command, expanded on it and made it available as this repo (so credits to Bundler folks).
3
+ Alot of the code here was extracted from Bundler's `bundle gem` command, so credits to Bundler folks. Originally I planned to make the new features accessible to the Bundler team and so tried to keep the code as similar to their project as possible, but ultimately discovered that they don't want to feature to grow because good tools should do a single thing very well (manage dependencies), not many things (manage dependencies and also do random other helpful stuff).
4
4
 
5
5
  The goal of the project is to allow users to define templates in the most native form to all technologist: Directory Structures, short commands, and helpful commands which make the gem's usage completely visible!
6
6
 
7
- The benefits of using this repo to create gems rather than bundler is that you can choose to create 'classes' of gems. By classes, I mean that there are different typs of 'gems', there are basic library gems, that are just code and can only be used from other code, there are command line application gems, those are gems that are run on the command line and include a binary file, and there are also web interface gems, those are gems which spin up a simple web interface and request that the user connect to it's server on what ever port it has spun up on. Depending on your field of specialty, you may be able to imagine other classes of gems that will aid you in your work.
7
+ The benefits of using this repo to create gems rather than bundler is that you can choose to create 'classes' of gems. By classes, I mean that there are different typs of 'gems', there are basic library gems, that are just code and can only be used from other code, there are command line application gems, those are gems that are run on the command line and include a binary file, and there are also web interface gems, those are gems which spin up a simple web interface and request that the user connect to it's server on what ever port it has spun up on. Depending on your field of specialty, you may be able to imagine other classes of gems that will aid you in your work.
8
8
 
9
- All of these 'classes of gems' as I refer to them, start out with a different code base, consistent with all other gems of the same class. This 'class based' aproach to gem creation is different from the addative approach that other gem genorators are based on.
9
+ All of these 'classes of gems' as I refer to them, start out with a different code base, consistent with all other gems of the same class. This 'class based' aproach to gem creation is different from the addative approach that other gem genorators are based on.
10
10
 
11
- The most benificial aspect of this gem is that it allows users to specify exactly how they want their 'default starting gem' to look like, rather than rely on what someone else thought their default starting gem should look like.
11
+ The most benificial aspect of this gem is that it allows users to specify exactly how they want their 'default starting gem' to look like, rather than rely on what someone else thought their default starting gem should look like.
12
12
 
13
13
  ### Installation and usage
14
14
 
@@ -21,8 +21,8 @@ Then create a new template for a gem class you expect to use more than once:
21
21
  ```
22
22
  $ bundlegem --newtemplate
23
23
  Specify a name for your gem template: my_service
24
- Specify description:
25
- Specify template tag name [MISC]:
24
+ Specify description:
25
+ Specify template tag name [MISC]:
26
26
  Cloning base project structure into ~/.bundlegem/templates/my_service
27
27
  ...
28
28
  Complete!
@@ -43,7 +43,7 @@ EMBEDDED:
43
43
 
44
44
  ```
45
45
 
46
- You'll now find a project skeleton in ~/.bundlegem/templates/my_service that you can customize to your liking.
46
+ You'll now find a project skeleton in ~/.bundlegem/templates/my_service that you can customize to your liking.
47
47
 
48
48
 
49
49
  Finally, create a new gem using your new gem template:
@@ -66,5 +66,5 @@ You'll get a good idea as to the possibilities by inspecting the files in [templ
66
66
 
67
67
  ### Contributing
68
68
 
69
- Please feel free to speak up using the issue section if there's anything on your mind :)
70
- Do the usual fork routine and issue a pull request by all means.
69
+ Please feel free to speak up using the issue section if there's anything on your mind :)
70
+ Do the usual fork routine and issue a pull request by all means.
@@ -8,7 +8,7 @@ require 'bundlegem'
8
8
 
9
9
 
10
10
  if ARGV.length < 1
11
- puts "error: you need to specify a name for the project being created\n\n"
11
+ puts "Error: you need to specify a name for the project being created\n\n"
12
12
  puts Bundlegem::HELP_MSG
13
13
  exit 1
14
14
  end
@@ -23,6 +23,11 @@ if ARGV[0] == "--list" or ARGV[0] == "-l"
23
23
  exit 0
24
24
  end
25
25
 
26
+ if ARGV[0] == "--version" or ARGV[0] == "-v"
27
+ puts Bundlegem.version
28
+ exit 0
29
+ end
30
+
26
31
  if ARGV[0] == "--newtemplate"
27
32
  puts "Sorry, I haven't been implemented, I don't have a lot of free time atm :("
28
33
  exit 0
@@ -45,7 +50,7 @@ ARGV.each_with_index do |arg, i|
45
50
  options.merge!({"template" => ARGV[i+1]})
46
51
  skip_i = i+1
47
52
  next
48
- elsif !arg.include?("-") # this must be what they want as the gem_name
53
+ elsif !(arg =~ /^-/) # this must be what they want as the gem_name
49
54
  gem_name = arg
50
55
  end
51
56
  end
data/changelog CHANGED
@@ -1,17 +1,61 @@
1
1
  ** 0.0.x **
2
+ - Add prompt "Would you care to summarize your gem for documentation purposes? (y/[n])
3
+ - Add prompt for specifying java package org name
2
4
  - CMD: --newtemplate to start new template
3
5
  - I'll need to write a basic starter template that is educational
6
+ - Why have more than one built in template? Only one is needed for testing, the rest should
7
+ be pulled from the web and made easily customizable by the users.
8
+
9
+ Completed on Master:
10
+ - Nothing yet
11
+
12
+
13
+
14
+ ** 0.0.12 **
15
+ - Feature: File mode (permissions) is now cloned from source template file's permissions to dest
16
+ - Bugfix: project names may now contain hyphens
17
+ - Feature: java project template added to best templates
18
+ - Feature: python project template added to best templates
19
+
20
+
21
+
22
+ ** 0.0.11 **
23
+ - Bugfix: config[:bundler_version] was listing the version of bundlegem not bundler
24
+
25
+
26
+
27
+ ** 0.0.10 **
28
+ - Feature: tweaks built-in templates
29
+
30
+
31
+
32
+ ** 0.0.9 **
33
+ - Bugfix: there were misconfigurations with the Rakefiles for cli_gems and c_ect gems that were corrected
34
+ - Feature: `--version` option added
35
+
36
+
37
+
38
+ ** 0.0.8 **
39
+
40
+ - Bugfix: fixes bug where git clone was attempted even when the a clone
41
+ already took place in a prior run
42
+ - Bugfix: fixes bug where I thought I was using something cool like figaro
43
+ but was not
44
+ - Bugfix: fixes bug where configuration wasn't loaded before running
45
+ --install-best-templates
46
+ - Bugfix: fixes bug where require pry was left in
47
+
4
48
 
5
49
 
6
50
  ** 0.0.7 **
7
51
 
8
52
  - Feature: Ability to load templates from github via --install-best-templates
9
- - Feature: Make each user defined gem have a subfolder that is the exact
53
+ - Feature: Make each user defined gem have a subfolder that is the exact
10
54
  project structure, so the readme for the gem can exist without fear of it
11
55
  being copied into new projects
12
56
  - Feature: Gem's display names are based on what's specified in their
13
57
  respective root .bundlegem
14
- - Feature: Allow better CLI parsing so -t t_name can be the first couple
58
+ - Feature: Allow better CLI parsing so -t t_name can be the first couple
15
59
  arguments or at the end
16
60
  - Bugfix: cli_gem and c_ext_gem now show up in the list
17
61
  - Bugfix: cli_gem and c_ext_gem had typos fixed
@@ -24,7 +68,7 @@
24
68
  - BUG: Accidentally tracked in a test gem project and fixed tests to not
25
69
  change directory into a test area for creating new gems.
26
70
  - BUG: newgem template didn't have a dot in .gitignore.tt
27
-
71
+
28
72
 
29
73
 
30
74
  ** 0.0.5 **
@@ -46,7 +90,7 @@
46
90
  - Raises error if none of the files in the template directory end in .tt
47
91
  - Create even empty folders
48
92
 
49
-
93
+
50
94
  ** 0.0.2 **
51
95
  - Added default gem template 'service'
52
96
  - Better syntax of bundlegem gem_name -t template_name
@@ -1,4 +1,4 @@
1
1
  # Comments made to this file will not be preserved
2
2
  ---
3
3
  default_template: newgem
4
- best_templates: https://github.com/TheNotary/arduino.git https://github.com/TheNotary/raspberry_pi_c.git https://github.com/TheNotary/docker_repo.git https://github.com/TheNotary/simple_frontend.git
4
+ best_templates: https://github.com/TheNotary/arduino.git https://github.com/TheNotary/raspberry_pi_c.git https://github.com/TheNotary/docker_repo.git https://github.com/TheNotary/simple_frontend.git https://github.com/tymeart/node_cli https://github.com/TheNotary/java-cli-app https://github.com/TheNotary/java-gradle-cli-app https://github.com/TheNotary/python_library
@@ -11,14 +11,17 @@ module Bundlegem
11
11
 
12
12
  class << self
13
13
 
14
+ def version
15
+ Bundlegem::VERSION
16
+ end
17
+
14
18
  # lists available templates
15
19
  def list
16
20
  configurator = Configurator.new
17
21
  # search through builtin
18
22
  available_templates = [ { "predefined" => "newgem" },
19
23
  { "predefined" => "c_extension_gem" },
20
- { "predefined" => "cli_gem" },
21
- { "predefined" => "service" }]
24
+ { "predefined" => "cli_gem" }]
22
25
 
23
26
  # search through user downloaded
24
27
  available_templates += configurator.user_downloaded_templates
@@ -176,7 +176,7 @@ module Bundlegem
176
176
 
177
177
 
178
178
  def bundler_dependency_version
179
- v = Gem::Version.new(Bundlegem::VERSION)
179
+ v = Gem::Version.new(Bundler::VERSION)
180
180
  req = v.segments[0..1]
181
181
  req << 'a' if v.prerelease?
182
182
  req.join(".")
@@ -217,10 +217,11 @@ module Bundlegem
217
217
  content
218
218
  end
219
219
 
220
+ original_mode = File.stat(source).mode
221
+ File.chmod(original_mode, destination)
220
222
  end
221
223
 
222
224
 
223
-
224
225
  #
225
226
  # EDIT: Reworked from Thor to not rely on Thor (or do so much unneeded stuff)
226
227
  #
@@ -1,5 +1,6 @@
1
1
  module Bundlegem
2
2
  HELP_MSG = <<-HEREDOC
3
+ BundleGem version #{Bundlegem::VERSION}
3
4
  Use bundlegem to start a new project folder based on a predefined template.
4
5
 
5
6
  Usage Examples:
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = [<%=config[:email].inspect%>]
11
11
 
12
12
  spec.summary = %q{TODO: Write a short summary, because Rubygems requires one.}
13
- spec.description = %q{TODO: delete this line since you're in a hurry.}
13
+ # spec.description = %q{TODO: delete this line since you're in a hurry.}
14
14
  spec.homepage = "https://github.com/<%=config[:author]%>/<%=config[:name]%>"
15
15
  # spec.license = "MIT" # uncomment this line if MIT is the best license for your situation
16
16
 
@@ -18,18 +18,11 @@ Gem::Specification.new do |spec|
18
18
  spec.bindir = "exe"
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
- <%- if config[:ext] -%>
22
21
  spec.extensions = ["ext/<%=config[:underscored_name]%>/extconf.rb"]
23
- <%- end -%>
24
22
 
25
- if spec.respond_to?(:metadata)
26
- spec.metadata['allowed_push_host'] = "TODO: Set to 'http://mygemserver.com' to prevent pushes to rubygems.org, or delete to allow pushes to any server."
27
- end
28
23
 
29
- spec.add_development_dependency "bundler", "~> <%= config[:bundler_version] %>"
24
+ spec.add_development_dependency "bundler"
30
25
  spec.add_development_dependency "rake", "~> 10.0"
31
- <%- if config[:ext] -%>
32
26
  spec.add_development_dependency "rake-compiler"
33
- <%- end -%>
34
27
  spec.add_development_dependency "rspec"
35
28
  end
@@ -1,20 +1,9 @@
1
1
  require "bundler/gem_tasks"
2
- <% if config[:test] == 'minitest' -%>
3
- require "rake/testtask"
4
-
5
- Rake::TestTask.new(:test) do |t|
6
- t.libs << "test"
7
- end
8
-
9
- task :default => :test
10
- <% elsif config[:test] == 'rspec' -%>
11
2
  require "rspec/core/rake_task"
12
3
 
13
4
  RSpec::Core::RakeTask.new(:spec)
14
5
 
15
6
  task :default => :spec
16
- <% end -%>
17
- <% if config[:ext] -%>
18
7
  require "rake/extensiontask"
19
8
 
20
9
  task :build => :compile
@@ -22,4 +11,3 @@ task :build => :compile
22
11
  Rake::ExtensionTask.new("<%=config[:underscored_name]%>") do |ext|
23
12
  ext.lib_dir = "lib/<%=config[:namespaced_path]%>"
24
13
  end
25
- <% end -%>
@@ -10,26 +10,19 @@ Gem::Specification.new do |spec|
10
10
  spec.email = [<%=config[:email].inspect%>]
11
11
 
12
12
  spec.summary = %q{TODO: Write a short summary, because Rubygems requires one.}
13
- spec.description = %q{TODO: delete this line since you're in a hurry.}
13
+ # spec.description = %q{TODO: delete this line since you're in a hurry.}
14
14
  spec.homepage = "https://github.com/<%=config[:author]%>/<%=config[:name]%>"
15
- # spec.license = "MIT" # uncomment this line if MIT is the best license for your situation
15
+ # spec.license = "MIT" # uncomment and replace with GPLv3, etc.
16
16
 
17
17
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
18
  spec.bindir = "exe"
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
- <%- if config[:ext] -%>
22
- spec.extensions = ["ext/<%=config[:underscored_name]%>/extconf.rb"]
23
- <%- end -%>
24
21
 
25
- if spec.respond_to?(:metadata)
26
- spec.metadata['allowed_push_host'] = "TODO: Set to 'http://mygemserver.com' to prevent pushes to rubygems.org, or delete to allow pushes to any server."
27
- end
22
+ # spec.add_dependency "bundler", "~> <%= config[:bundler_version] %>"
28
23
 
29
24
  spec.add_development_dependency "bundler", "~> <%= config[:bundler_version] %>"
30
25
  spec.add_development_dependency "rake", "~> 10.0"
31
- <%- if config[:ext] -%>
32
- spec.add_development_dependency "rake-compiler"
33
- <%- end -%>
34
26
  spec.add_development_dependency "rspec"
27
+ spec.add_development_dependency "pry"
35
28
  end
@@ -1,25 +1,6 @@
1
1
  require "bundler/gem_tasks"
2
- <% if config[:test] == 'minitest' -%>
3
- require "rake/testtask"
4
-
5
- Rake::TestTask.new(:test) do |t|
6
- t.libs << "test"
7
- end
8
-
9
- task :default => :test
10
- <% elsif config[:test] == 'rspec' -%>
11
2
  require "rspec/core/rake_task"
12
3
 
13
4
  RSpec::Core::RakeTask.new(:spec)
14
5
 
15
6
  task :default => :spec
16
- <% end -%>
17
- <% if config[:ext] -%>
18
- require "rake/extensiontask"
19
-
20
- task :build => :compile
21
-
22
- Rake::ExtensionTask.new("<%=config[:underscored_name]%>") do |ext|
23
- ext.lib_dir = "lib/<%=config[:namespaced_path]%>"
24
- end
25
- <% end -%>
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = [<%=config[:email].inspect%>]
11
11
 
12
12
  spec.summary = %q{TODO: Write a short summary, because Rubygems requires one.}
13
- spec.description = %q{TODO: delete this line since you're in a hurry.}
13
+ # spec.description = %q{TODO: delete this line since you're in a hurry.}
14
14
  spec.homepage = "https://github.com/<%=config[:author]%>/<%=config[:name]%>"
15
15
  # spec.license = "MIT" # uncomment this line if MIT is the best license for your situation
16
16
 
@@ -18,18 +18,10 @@ Gem::Specification.new do |spec|
18
18
  spec.bindir = "exe"
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
- <%- if config[:ext] -%>
22
- spec.extensions = ["ext/<%=config[:underscored_name]%>/extconf.rb"]
23
- <%- end -%>
24
21
 
25
- if spec.respond_to?(:metadata)
26
- spec.metadata['allowed_push_host'] = "TODO: Set to 'http://mygemserver.com' to prevent pushes to rubygems.org, or delete to allow pushes to any server."
27
- end
28
22
 
29
- spec.add_development_dependency "bundler", "~> <%= config[:bundler_version] %>"
23
+ spec.add_development_dependency "bundler"
30
24
  spec.add_development_dependency "rake", "~> 10.0"
31
- <%- if config[:ext] -%>
32
- spec.add_development_dependency "rake-compiler"
33
- <%- end -%>
34
25
  spec.add_development_dependency "rspec"
26
+ spec.add_development_dependency "pry"
35
27
  end
@@ -1,3 +1,3 @@
1
1
  module Bundlegem
2
- VERSION = "0.0.8"
2
+ VERSION = "0.0.13"
3
3
  end
@@ -20,7 +20,7 @@ describe Bundlegem do
20
20
 
21
21
  list_output = Bundlegem.list
22
22
 
23
- expect(list_output).to eq " PREDEFINED:\n * newgem (default)\n c_extension_gem\n cli_gem\n service\n\n MISC:\n empty_template\n\n"
23
+ expect(list_output).to eq " PREDEFINED:\n * newgem (default)\n c_extension_gem\n cli_gem\n\n MISC:\n empty_template\n\n"
24
24
  expect(File.exists?("#{ENV['HOME']}/.bundlegem")).to be true
25
25
  end
26
26
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bundlegem
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - TheNotary
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-13 00:00:00.000000000 Z
11
+ date: 2020-09-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -164,21 +164,6 @@ files:
164
164
  - lib/bundlegem/templates/newgem/rspec.tt
165
165
  - lib/bundlegem/templates/newgem/spec/#{name}_spec.rb.tt
166
166
  - lib/bundlegem/templates/newgem/spec/spec_helper.rb.tt
167
- - lib/bundlegem/templates/service/#{name}.gemspec.tt
168
- - lib/bundlegem/templates/service/.travis.yml.tt
169
- - lib/bundlegem/templates/service/Gemfile.tt
170
- - lib/bundlegem/templates/service/LICENSE.txt.tt
171
- - lib/bundlegem/templates/service/README.md
172
- - lib/bundlegem/templates/service/README.md.tt
173
- - lib/bundlegem/templates/service/Rakefile.tt
174
- - lib/bundlegem/templates/service/bin/#{name}.tt
175
- - lib/bundlegem/templates/service/changelog.tt
176
- - lib/bundlegem/templates/service/gitignore.tt
177
- - lib/bundlegem/templates/service/lib/#{name}.rb.tt
178
- - lib/bundlegem/templates/service/lib/#{name}/version.rb.tt
179
- - lib/bundlegem/templates/service/rspec.tt
180
- - lib/bundlegem/templates/service/spec/newgem_spec.rb.tt
181
- - lib/bundlegem/templates/service/spec/spec_helper.rb.tt
182
167
  - lib/bundlegem/version.rb
183
168
  - spec/bundlegem_spec.rb
184
169
  - spec/spec_helper.rb
@@ -186,7 +171,7 @@ homepage: ''
186
171
  licenses:
187
172
  - MIT
188
173
  metadata: {}
189
- post_install_message:
174
+ post_install_message:
190
175
  rdoc_options: []
191
176
  require_paths:
192
177
  - lib
@@ -201,9 +186,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
201
186
  - !ruby/object:Gem::Version
202
187
  version: '0'
203
188
  requirements: []
204
- rubyforge_project:
205
- rubygems_version: 2.5.1
206
- signing_key:
189
+ rubygems_version: 3.0.8
190
+ signing_key:
207
191
  specification_version: 4
208
192
  summary: this gem makes more gems!
209
193
  test_files:
@@ -1,34 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require '<%=config[:namespaced_path]%>/version'
5
-
6
- Gem::Specification.new do |spec|
7
- spec.name = <%=config[:name].inspect%>
8
- spec.version = <%=config[:constant_name]%>::VERSION
9
- spec.authors = [<%=config[:author].inspect%>]
10
- spec.email = [<%=config[:email].inspect%>]
11
-
12
- spec.summary = %q{TODO: Write a short summary, because Rubygems requires one.}
13
- spec.description = %q{TODO: delete this line since you're in a hurry.}
14
- spec.homepage = "https://github.com/<%=config[:author]%>/<%=config[:name]%>"
15
- spec.license = "MIT"
16
-
17
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
- spec.bindir = "exe"
19
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
- spec.require_paths = ["lib"]
21
-
22
-
23
- if spec.respond_to?(:metadata)
24
- spec.metadata['allowed_push_host'] = "TODO: Set to 'http://mygemserver.com' to prevent pushes to rubygems.org, or delete to allow pushes to any server."
25
- end
26
-
27
- spec.add_dependency "thor"
28
- spec.add_dependency "service_installer"
29
-
30
- spec.add_development_dependency "bundler", "~> <%= config[:bundler_version] %>"
31
- spec.add_development_dependency "rake", "~> 10.0"
32
- spec.add_development_dependency "pry"
33
-
34
- end
@@ -1,3 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - <%= RUBY_VERSION %>
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in <%=config[:name]%>.gemspec
4
- gemspec
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) <%=Time.now.year%> <%=config[:author]%>
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
@@ -1,5 +0,0 @@
1
- == What's This?
2
-
3
- This is a gem skeleton template. Ideally you can define your own and place them into ~/.bundle/templates and specify to use that template instead of the default template defined in bundler.
4
-
5
- This skelton would be helpful if you needed to create a new ruby app that ran as a service on the installed machine. This skelton should include the base code required for building a daemon style ruby app, including an installation command, a start/stop/restart/status interface and of course a spot that says "# your daemon code goes here" where you could easily drop in, say, a write to a log file and a sleep 5000 instruction and you'd be pretty much set for rapidly spinning up a new gem of the daemon type.
@@ -1,23 +0,0 @@
1
- # <%=config[:constant_name]%>
2
-
3
- This is a service type gem! It runs as a daemon in the background!
4
-
5
- TODO: Describe specifically what the service does, and why people would want to.
6
-
7
- ## Installation
8
-
9
- Install the gem:
10
-
11
- $ gem install <%=config[:name]%>
12
-
13
- ## Usage
14
-
15
- TODO: Write usage instructions here
16
-
17
- ## Contributing
18
-
19
- 1. Fork it ( https://github.com/[my-github-username]/<%=config[:name]%>/fork )
20
- 2. Create your feature branch (`git checkout -b my-new-feature`)
21
- 3. Commit your changes (`git commit -am 'Add some feature'`)
22
- 4. Push to the branch (`git push origin my-new-feature`)
23
- 5. Create a new Pull Request
@@ -1,25 +0,0 @@
1
- require "bundler/gem_tasks"
2
- <% if config[:test] == 'minitest' -%>
3
- require "rake/testtask"
4
-
5
- Rake::TestTask.new(:test) do |t|
6
- t.libs << "test"
7
- end
8
-
9
- task :default => :test
10
- <% elsif config[:test] == 'rspec' -%>
11
- require "rspec/core/rake_task"
12
-
13
- RSpec::Core::RakeTask.new(:spec)
14
-
15
- task :default => :spec
16
- <% end -%>
17
- <% if config[:ext] -%>
18
- require "rake/extensiontask"
19
-
20
- task :build => :compile
21
-
22
- Rake::ExtensionTask.new("<%=config[:underscored_name]%>") do |ext|
23
- ext.lib_dir = "lib/<%=config[:namespaced_path]%>"
24
- end
25
- <% end -%>
@@ -1,27 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require 'thor'
4
- require '<%=config[:namespaced_path]%>'
5
-
6
- class BinRunner < Thor
7
-
8
- desc "about", "About this file"
9
- def about
10
- <%=config[:constant_name]%>.about
11
- end
12
-
13
- desc "install", "This command checks the OS you're on and installs the gem as a service"
14
- def install
15
- <%=config[:constant_name]%>.install
16
- end
17
-
18
- desc "uninstall", "This command uninstalls the service from the OS"
19
- def uninstall
20
- <%=config[:constant_name]%>.uninstall
21
- end
22
-
23
-
24
- end
25
-
26
-
27
- BinRunner.start
@@ -1,6 +0,0 @@
1
- ** 0.0.x **
2
- TODO: List off what features you'll be including at some point in the
3
- future.
4
-
5
- ** 0.0.1 **
6
- TODO: List off what features you'll be including in the first release
@@ -1,10 +0,0 @@
1
- /.bundle/
2
- /.yardoc
3
- /Gemfile.lock
4
- /_yardoc/
5
- /coverage/
6
- /doc/
7
- /pkg/
8
- /spec/reports/
9
- /tmp/
10
-
@@ -1,26 +0,0 @@
1
- require "service_installer"
2
-
3
- require "<%=config[:namespaced_path]%>/version"
4
-
5
- <%- config[:constant_array].each_with_index do |c,i| -%>
6
- <%= ' '*i %>module <%= c %>
7
- <%- end -%>
8
-
9
- <%= ' '*config[:constant_array].size %># Your code goes here...
10
-
11
- <%= ' '*config[:constant_array].size %>def self.About
12
- <%= ' '*config[:constant_array].size %>end
13
-
14
- <%= ' '*config[:constant_array].size %>def self.Install
15
- <%= ' '*config[:constant_array].size %> # s = ServiceInstaller.new
16
- <%= ' '*config[:constant_array].size %> # s.install
17
- <%= ' '*config[:constant_array].size %>end
18
-
19
- <%= ' '*config[:constant_array].size %>def self.Uninstall
20
- <%= ' '*config[:constant_array].size %>end
21
-
22
- <%- (config[:constant_array].size-1).downto(0) do |i| -%>
23
-
24
- <%= ' '*i %>end
25
-
26
- <%- end -%>
@@ -1,7 +0,0 @@
1
- <%- config[:constant_array].each_with_index do |c,i| -%>
2
- <%= ' '*i %>module <%= c %>
3
- <%- end -%>
4
- <%= ' '*config[:constant_array].size %>VERSION = "0.1.0"
5
- <%- (config[:constant_array].size-1).downto(0) do |i| -%>
6
- <%= ' '*i %>end
7
- <%- end -%>
@@ -1,2 +0,0 @@
1
- --format documentation
2
- --color
@@ -1,11 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe <%= config[:constant_name] %> do
4
- it 'has a version number' do
5
- expect(<%= config[:constant_name] %>::VERSION).not_to be nil
6
- end
7
-
8
- it 'does something useful' do
9
- expect(false).to eq(true)
10
- end
11
- end
@@ -1,2 +0,0 @@
1
- $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
- require '<%= config[:namespaced_path] %>'