gemsmith 5.2.0 → 5.3.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1b9362b831f576eeda7beeec62b265099931e58a
4
- data.tar.gz: bb61c0e3cf0a04a410cd9a28c8c24a10b70328aa
3
+ metadata.gz: 4e6492cee97fb77e9c3e7200512a746c31d04d0a
4
+ data.tar.gz: db448eb8883cbeac936da5a443bfa625f623695e
5
5
  SHA512:
6
- metadata.gz: 63d1b36d1beb184c5ac8ceee8c7334ee145d3efc7e676401711029915caecb9d7a9a01d884c57815502edc1889f7739299fb66afcd58da1239e9314aa74d8ab0
7
- data.tar.gz: 29d706b50cf572466addec3ba0cba13d5152908fb72d392efdd53db78d9014e3313a3429a59bee901adcc3348f0314ccf42f09f30766aae7b4303b9495e218a2
6
+ metadata.gz: cdabea344ce173819a595e8b4d5685cb0e6a336ca5a415b1ee13a2e8013c4ad0a100fdc35ff8ab29fa4d1ec61fe70736d8273ab03f29af2d457d85566b6e228d
7
+ data.tar.gz: d035b0e6c5729477081a3664ebd393ab7eced5363c1c37bdb1e988555299d53030164f24c62ed1bcb26f7d42f34b23d55ed1b042eadb91985aa1a638a1b0405f
Binary file
data.tar.gz.sig CHANGED
Binary file
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Overview
1
+ # Gemsmith
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/gemsmith.png)](http://badge.fury.io/rb/gemsmith)
4
4
  [![Code Climate GPA](https://codeclimate.com/github/bkuhlmann/gemsmith.png)](https://codeclimate.com/github/bkuhlmann/gemsmith)
@@ -9,6 +9,28 @@
9
9
 
10
10
  Gemsmith allows you to easily craft new gems via the command line with custom settings (if desired).
11
11
 
12
+ <!-- START doctoc generated TOC please keep comment here to allow auto update -->
13
+ <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
14
+ # Table of Contents
15
+
16
+ - [Features](#features)
17
+ - [Requirements](#requirements)
18
+ - [Setup](#setup)
19
+ - [Usage](#usage)
20
+ - [Tests](#tests)
21
+ - [Security](#security)
22
+ - [Best Practices](#best-practices)
23
+ - [Documentation](#documentation)
24
+ - [Promotion](#promotion)
25
+ - [Versioning](#versioning)
26
+ - [Code of Conduct](#code-of-conduct)
27
+ - [Contributions](#contributions)
28
+ - [License](#license)
29
+ - [History](#history)
30
+ - [Credits](#credits)
31
+
32
+ <!-- END doctoc generated TOC please keep comment here to allow auto update -->
33
+
12
34
  # Features
13
35
 
14
36
  - Builds a gem skeleton with Bundler functionality in mind.
@@ -5,6 +5,7 @@ require "thor_plus/actions"
5
5
  require "gemsmith/cli_options"
6
6
  require "gemsmith/cli_helpers"
7
7
  require "gemsmith/skeletons/base_skeleton"
8
+ require "gemsmith/skeletons/bundler_skeleton"
8
9
  require "gemsmith/skeletons/cli_skeleton"
9
10
  require "gemsmith/skeletons/default_skeleton"
10
11
  require "gemsmith/skeletons/documentation_skeleton"
@@ -21,6 +22,8 @@ module Gemsmith
21
22
  include CLIOptions
22
23
  include CLIHelpers
23
24
 
25
+ package_name Gemsmith::Identity.label
26
+
24
27
  # Overwrites the Thor template source root.
25
28
  def self.source_root
26
29
  File.expand_path File.join(File.dirname(__FILE__), "templates")
@@ -57,6 +60,7 @@ module Gemsmith
57
60
  Skeletons::RspecSkeleton.run(self) if template_options[:rspec]
58
61
  Skeletons::GuardSkeleton.run(self) if template_options[:guard]
59
62
  Skeletons::TravisSkeleton.run(self) if template_options[:travis]
63
+ Skeletons::BundlerSkeleton.run self
60
64
  Skeletons::GitSkeleton.run self
61
65
 
62
66
  info "Gem created."
@@ -9,7 +9,7 @@ module Gemsmith
9
9
  end
10
10
 
11
11
  def self.version
12
- "5.2.0"
12
+ "5.3.0"
13
13
  end
14
14
 
15
15
  def self.label_version
@@ -0,0 +1,12 @@
1
+ module Gemsmith
2
+ module Skeletons
3
+ class BundlerSkeleton < BaseSkeleton
4
+ def create_gemfile_lock
5
+ Dir.chdir(File.join(destination_root, gem_name)) do
6
+ info "Installing gem dependencies..."
7
+ `bundle install`
8
+ end
9
+ end
10
+ end
11
+ end
12
+ end
@@ -2,7 +2,6 @@ module Gemsmith
2
2
  module Skeletons
3
3
  class DefaultSkeleton < BaseSkeleton
4
4
  def create_default_files
5
- template "%gem_name%/Gemfile.tt", template_options
6
5
  template "%gem_name%/Rakefile.tt", template_options
7
6
  template "%gem_name%/%gem_name%.gemspec.tt", template_options
8
7
  template "#{lib_root}/%gem_name%.rb.tt", template_options
@@ -4,6 +4,7 @@ module Gemsmith
4
4
  def create_files
5
5
  template "%gem_name%/README.md.tt", template_options
6
6
  template "%gem_name%/CONTRIBUTING.md.tt", template_options
7
+ template "%gem_name%/CODE_OF_CONDUCT.md.tt", template_options
7
8
  template "%gem_name%/LICENSE.md.tt", template_options
8
9
  template "%gem_name%/CHANGELOG.md.tt", template_options
9
10
  end
@@ -2,10 +2,14 @@ module Gemsmith
2
2
  module Skeletons
3
3
  class GitSkeleton < BaseSkeleton
4
4
  def create_files
5
+ template "%gem_name%/Gemfile.tt", template_options
6
+ end
7
+
8
+ def create_repository
5
9
  Dir.chdir(File.join(destination_root, gem_name)) do
6
10
  `git init`
7
11
  `git add .`
8
- `git commit -a -n -m "Added Gemsmith skeleton."`
12
+ `git commit --all --no-verify --message "Added Gemsmith skeleton."`
9
13
  end
10
14
  end
11
15
  end
@@ -36,6 +36,7 @@ Gem::Specification.new do |spec|
36
36
  <%- if config[:pry] -%>
37
37
  spec.add_development_dependency "pry"
38
38
  spec.add_development_dependency "pry-byebug"
39
+ spec.add_development_dependency "pry-state"
39
40
  spec.add_development_dependency "pry-stack_explorer"
40
41
  spec.add_development_dependency "pry-remote"
41
42
  spec.add_development_dependency "pry-rescue"
@@ -0,0 +1,33 @@
1
+ # Contributor Code of Conduct
2
+
3
+ As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we
4
+ pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation,
5
+ submitting pull requests or patches, and other activities.
6
+
7
+ We are committed to making participation in this project a harassment-free experience for everyone, regardless of level
8
+ of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size,
9
+ race, ethnicity, age, religion, or nationality.
10
+
11
+ Examples of unacceptable behavior by participants include:
12
+
13
+ * The use of sexualized language or imagery
14
+ * Personal attacks
15
+ * Trolling or insulting/derogatory comments
16
+ * Public or private harassment
17
+ * Publishing other's private information, such as physical or electronic addresses, without explicit permission
18
+ * Other unethical or unprofessional conduct.
19
+
20
+ Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits,
21
+ issues, and other contributions that are not aligned to this Code of Conduct. By adopting this Code of Conduct, project
22
+ maintainers commit themselves to fairly and consistently applying these principles to every aspect of managing this
23
+ project. Project maintainers who do not follow or enforce the Code of Conduct may be permanently removed from the
24
+ project team.
25
+
26
+ This code of conduct applies both within project spaces and in public spaces when an individual is representing the
27
+ project or its community.
28
+
29
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an issue or contacting
30
+ one or more of the project maintainers.
31
+
32
+ This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.2.0,
33
+ available at [http://contributor-covenant.org/version/1/2/0/](http://contributor-covenant.org/version/1/2/0/)
@@ -1,4 +1,4 @@
1
- # Overview
1
+ # <%= config[:gem_class] %>
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/<%= config[:gem_name] %>.png)](http://badge.fury.io/rb/<%= config[:gem_name] %>)
4
4
  <%- if config[:code_climate] -%>
@@ -12,6 +12,9 @@
12
12
  [![Travis CI Status](https://secure.travis-ci.org/<%= config[:github_user] %>/<%= config[:gem_name] %>.png)](http://travis-ci.org/<%= config[:github_user] %>/<%= config[:gem_name] %>)
13
13
  <%- end -%>
14
14
 
15
+ <!-- START doctoc - For use by DocToc (https://github.com/thlorenz/doctoc), autogenerates the table of contents -->
16
+ <!-- END doctoc -->
17
+
15
18
  # Features
16
19
 
17
20
  # Requirements
@@ -22,7 +25,8 @@
22
25
 
23
26
  # Setup
24
27
 
25
- For a secure install, type the following from the command line (recommended):
28
+ <%- if config[:security] -%>
29
+ For a secure install, type the following (recommended):
26
30
 
27
31
  gem cert --add <(curl -Ls http://www.my-website.com/gem-public.pem)
28
32
  gem install <%= config[:gem_name] %> --trust-policy MediumSecurity
@@ -33,6 +37,11 @@ allowing the installation of unsigned dependencies since they are beyond the sco
33
37
  For an insecure install, type the following (not recommended):
34
38
 
35
39
  gem install <%= config[:gem_name] %>
40
+ <%- else -%>
41
+ To install, type the following:
42
+
43
+ gem install <%= config[:gem_name] %>
44
+ <%- end -%>
36
45
 
37
46
  <%- if config[:rails] -%>
38
47
  Add the following to your Gemfile:
@@ -5,8 +5,10 @@ require "thor_plus/actions"
5
5
 
6
6
  module <%= config[:gem_class] %>
7
7
  class CLI < Thor
8
- include Thor::Actions
9
- include ThorPlus::Actions
8
+ include Thor::Actions
9
+ include ThorPlus::Actions
10
+
11
+ package_name <%= config[:gem_class] %>::Identity.label
10
12
 
11
13
  # Initialize.
12
14
  def initialize args = [], options = {}, config = {}
@@ -1,5 +1,5 @@
1
1
  require "spec_helper"
2
2
 
3
3
  describe "<%= config[:gem_class] %>" do
4
- it "should be tested"
5
- end
4
+ it "should be tested"
5
+ end
@@ -9,6 +9,7 @@ require "<%= config[:gem_name] %>"
9
9
  <%- if config[:pry] -%>
10
10
  require "pry"
11
11
  require "pry-byebug"
12
+ require "pry-state"
12
13
  require "pry-stack_explorer"
13
14
  require "pry-remote"
14
15
  require "pry-rescue"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gemsmith
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.2.0
4
+ version: 5.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -30,7 +30,7 @@ cert_chain:
30
30
  aSif+qBc6oHD7EQWPF5cZkzkIURuwNwPBngZGxIKaMAgRhjGFXzUMAaq++r59cS9
31
31
  xTfQ4k6fglKEgpnLAXiKdo2c8Ym+X4rIKFfedQ==
32
32
  -----END CERTIFICATE-----
33
- date: 2015-07-20 00:00:00.000000000 Z
33
+ date: 2015-08-03 00:00:00.000000000 Z
34
34
  dependencies:
35
35
  - !ruby/object:Gem::Dependency
36
36
  name: thor
@@ -116,6 +116,20 @@ dependencies:
116
116
  - - ">="
117
117
  - !ruby/object:Gem::Version
118
118
  version: '0'
119
+ - !ruby/object:Gem::Dependency
120
+ name: pry-state
121
+ requirement: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ type: :development
127
+ prerelease: false
128
+ version_requirements: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
119
133
  - !ruby/object:Gem::Dependency
120
134
  name: pry-stack_explorer
121
135
  requirement: !ruby/object:Gem::Requirement
@@ -263,6 +277,7 @@ files:
263
277
  - lib/gemsmith/identity.rb
264
278
  - lib/gemsmith/kit.rb
265
279
  - lib/gemsmith/skeletons/base_skeleton.rb
280
+ - lib/gemsmith/skeletons/bundler_skeleton.rb
266
281
  - lib/gemsmith/skeletons/cli_skeleton.rb
267
282
  - lib/gemsmith/skeletons/default_skeleton.rb
268
283
  - lib/gemsmith/skeletons/documentation_skeleton.rb
@@ -277,6 +292,7 @@ files:
277
292
  - lib/gemsmith/templates/%gem_name%/.ruby-version.tt
278
293
  - lib/gemsmith/templates/%gem_name%/.travis.yml.tt
279
294
  - lib/gemsmith/templates/%gem_name%/CHANGELOG.md.tt
295
+ - lib/gemsmith/templates/%gem_name%/CODE_OF_CONDUCT.md.tt
280
296
  - lib/gemsmith/templates/%gem_name%/CONTRIBUTING.md.tt
281
297
  - lib/gemsmith/templates/%gem_name%/Gemfile.tt
282
298
  - lib/gemsmith/templates/%gem_name%/Guardfile.tt
metadata.gz.sig CHANGED
Binary file