gem_toys 0.2.0 → 0.6.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5f12dea34e3f97cd2d22bbe74577876988d63b14135f3881688adffb0aa1fe27
4
- data.tar.gz: 3e7133b5a0c2b082d8108b63fcc403b86c52360c32faf4764eb569ae07052aa4
3
+ metadata.gz: 4618c51d0060981f796f40c91b6e746f6cc9860adcdbae6b291e9740b4f617df
4
+ data.tar.gz: 42efd278a9c5821c85eb776dae8f1dde46ac957d1c98842c716f5f769de313f0
5
5
  SHA512:
6
- metadata.gz: 846247b5a5f1b69e4fde49feda00a66494a3ee4f6ca867dfd564723772749bcf25184560ae07e86c58f78a1b6beb07eb15562abfd925e8d58d5397a58c6916c5
7
- data.tar.gz: 2587c1b34d42976accf1ef5b63b53b35ca068f4d26a89620d9ed349f215e01630d072fc520ac484b199cb264045dfc067e3ec89d644c32bcb3adda6ed1d057bf
6
+ metadata.gz: 1a8a580cb0ec036fcd80c6c27ef1ecf289c9d87e5696d044b585bcf2ffe05c6ef22c96fee1f2836aa0f9e9f875545b2b3cb501b5d1d3b75fd4bca4edf78b5ac9
7
+ data.tar.gz: 0ae8062f7f01ed27afdf635dbc06a25495a6d6039470a469e6ea5213eecaa66301afce1a9561bc87bd3401822f98e5c6b2443a249926ca8d0eecf0bcf18f70cf
data/CHANGELOG.md CHANGED
@@ -2,6 +2,36 @@
2
2
 
3
3
  ## master (unreleased)
4
4
 
5
+ ## 0.6.1 (2021-02-10)
6
+
7
+ ## 0.6.0 (2021-02-10)
8
+
9
+ * Support Ruby 3.
10
+ * Fix error with undefined `FileUtils`.
11
+ * Fix error with `release` tool via updating `alt_memery` to a fixed version.
12
+ * Update development dependencies.
13
+
14
+ ## 0.5.0 (2020-11-29)
15
+
16
+ * Add `versions` tool with `releases` alias.
17
+ * Add `version` tool.
18
+ * Add an ability to release new `major`, `minor` or `patch` version.
19
+ Just specify keyword instead of number and it'll increase correctly.
20
+ * Print `git diff` for files which will be commited on `release`.
21
+ * Drop Ruby 2.4 support.
22
+ [Support of Ruby 2.4 has ended](https://www.ruby-lang.org/en/news/2020/04/05/support-of-ruby-2-4-has-ended/).
23
+ * Add and use `memery` dependency.
24
+ * Update `rubocop`, `remark`.
25
+
26
+ ## 0.4.0 (2020-09-21)
27
+
28
+ * Improve version update script, support files with other String constants.
29
+ * Update bundle.
30
+
31
+ ## 0.3.0 (2020-07-11)
32
+
33
+ * Add support for Ruby 2.4
34
+
5
35
  ## 0.2.0 (2020-07-09)
6
36
 
7
37
  * Add `:version_file_path` and `:unreleased_title` options
data/README.md CHANGED
@@ -1,11 +1,11 @@
1
1
  # Gem Toys
2
2
 
3
- ![Cirrus CI - Base Branch Build Status](https://img.shields.io/cirrus/github/AlexWayfer/gem_toys?style=flat-square)
3
+ [![Cirrus CI - Base Branch Build Status](https://img.shields.io/cirrus/github/AlexWayfer/gem_toys?style=flat-square)](https://cirrus-ci.com/github/AlexWayfer/gem_toys)
4
4
  [![Codecov branch](https://img.shields.io/codecov/c/github/AlexWayfer/gem_toys/master.svg?style=flat-square)](https://codecov.io/gh/AlexWayfer/gem_toys)
5
5
  [![Code Climate](https://img.shields.io/codeclimate/maintainability/AlexWayfer/gem_toys.svg?style=flat-square)](https://codeclimate.com/github/AlexWayfer/gem_toys)
6
- ![Depfu](https://img.shields.io/depfu/AlexWayfer/gem_toys?style=flat-square)
6
+ [![Depfu](https://img.shields.io/depfu/AlexWayfer/benchmark_toys?style=flat-square)](https://depfu.com/repos/github/AlexWayfer/gem_toys)
7
7
  [![Inline docs](https://inch-ci.org/github/AlexWayfer/gem_toys.svg?branch=master)](https://inch-ci.org/github/AlexWayfer/gem_toys)
8
- [![license](https://img.shields.io/github/license/AlexWayfer/gem_toys.svg?style=flat-square)](https://github.com/AlexWayfer/gem_toys/blob/master/LICENSE)
8
+ [![license](https://img.shields.io/github/license/AlexWayfer/gem_toys.svg?style=flat-square)](https://github.com/AlexWayfer/gem_toys/blob/master/LICENSE.txt)
9
9
  [![Gem](https://img.shields.io/gem/v/gem_toys.svg?style=flat-square)](https://rubygems.org/gems/gem_toys)
10
10
 
11
11
  [Toys](https://github.com/dazuma/toys) template for gems, like building, releasing, etc.
@@ -35,19 +35,30 @@ gem install gem_toys
35
35
  ```ruby
36
36
  # .toys.rb
37
37
  require 'gem_toys'
38
- expand GemToys::Template
38
+ expand GemToys::Template,
39
+ unreleased_title: '## Unreleased' ## default is `## master (unreleased)`
39
40
 
40
41
  # `gem` namespace created, aliases are optional, but handful
41
42
  alias_tool :g, :gem
42
43
  ```
43
44
 
44
- At invocation it will:
45
+ ### Build
46
+
47
+ `toys gem build` builds a gem with the current version and move it to the `pkg/` directory.
48
+
49
+ ### Install
50
+
51
+ `toys gem install` [builds](#build) a gem and install it locally.
52
+
53
+ ### Release
54
+
55
+ `toys gem release` does:
45
56
 
46
57
  1. Update `lib/*gem_name*/version.rb` file.
47
58
  Can be refined with `:version_file_path` option on `expand`.
48
59
  2. Insert Markdown title with changes from `## master (unreleased)` in a `CHANGELOG.md` file.
49
60
  Can be refined with `:unreleased_title` option on `expand`.
50
- 3. Execute `gem build`.
61
+ 3. [Builds](#build) a gem.
51
62
  4. Ask you for manual check, if you want (print anything of OK).
52
63
  You also can change manually a content of `CHANGELOG.md`, for example, before committing.
53
64
  5. Commit these files.
@@ -58,13 +69,12 @@ At invocation it will:
58
69
  ## Development
59
70
 
60
71
  After checking out the repo, run `bundle install` to install dependencies.
61
- Then, run `bundle exec rspec` to run the tests.
72
+
73
+ Then, run `toys rspec` to run the tests.
62
74
 
63
75
  To install this gem onto your local machine, run `toys gem install`.
64
- To release a new version, update the version number in `version.rb`,
65
- and then run `bundle exec rake release`, which will create a git tag
66
- for the version, push git commits and tags, and push the `.gem` file
67
- to [rubygems.org](https://rubygems.org).
76
+
77
+ To release a new version, run `toys gem release %version%`. See how it works [here](#release).
68
78
 
69
79
  ## Contributing
70
80
 
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'date'
4
3
  require 'toys-core'
5
4
 
6
5
  require_relative 'template/common_code'
@@ -32,6 +31,8 @@ module GemToys
32
31
  @template = template
33
32
 
34
33
  sh 'gem build'
34
+
35
+ require 'fileutils'
35
36
  FileUtils.mkdir_p pkg_directory
36
37
  FileUtils.mv "#{context_directory}/#{gem_file_name}", current_gem_file
37
38
  end
@@ -46,94 +47,26 @@ module GemToys
46
47
  end
47
48
  end
48
49
 
49
- tool :release do
50
- required_arg :version
51
-
50
+ tool :version do
52
51
  to_run do
53
52
  @template = template
54
53
 
55
- update_version_file
56
-
57
- ## Update CHANGELOG
58
- update_changelog_file
59
-
60
- ## Build new gem file
61
- exec_tool 'gem build'
62
-
63
- wait_for_manual_check
64
-
65
- ## Checkout to a new git branch, required for protected `master` with CI
66
- # sh "git switch -c v#{version}"
67
-
68
- commit_changes
69
-
70
- ## Tag commit
71
- puts 'Tagging the commit...'
72
- sh "git tag -a v#{version} -m 'Version #{version}'"
73
-
74
- ## Push commit
75
- puts 'Pushing commit...'
76
- sh 'git push'
77
-
78
- ## Push tags
79
- puts 'Pushing tags...'
80
- sh 'git push --tags'
81
-
82
- puts 'Pushing gem...'
83
- sh "gem push #{current_gem_file}"
84
- end
85
-
86
- private
87
-
88
- def update_version_file
89
- puts 'Updating version file...'
90
-
91
- File.write version_file_path, version_file_content.sub(/'.+'/, "'#{version}'")
92
- end
93
-
94
- TODAY = Date.today.to_s
95
-
96
- def update_changelog_file
97
- puts 'Updating changelog file...'
98
-
99
- @changelog_lines = File.readlines(changelog_file_path)
100
-
101
- existing_line = find_version_line_in_changelog_file
102
-
103
- if existing_line
104
- return if (existing_date = existing_line.match(/\((.*)\)/)[1]) == TODAY
105
-
106
- abort "There is already #{version} version with date #{existing_date}"
54
+ version = rubygems_versions.find(-> { current_version_hash }) do |rubygems_version|
55
+ rubygems_version[:number] == current_version
107
56
  end
108
57
 
109
- File.write changelog_file_path, new_changelog_content
110
- end
111
-
112
- def find_version_line_in_changelog_file
113
- @changelog_lines.find { |line| line.start_with? "## #{version} " }
58
+ puts_versions [version]
114
59
  end
60
+ end
115
61
 
116
- def new_changelog_content
117
- unreleased_title = @template.unreleased_title
118
- @changelog_lines.insert(
119
- @changelog_lines.index("#{unreleased_title}\n") + 2,
120
- '#' * unreleased_title.scan(/^#+/).first.size + " #{version} (#{TODAY})\n\n"
121
- ).join
122
- end
123
-
124
- def commit_changes
125
- puts 'Committing changes...'
126
-
127
- sh "git add #{version_file_path} #{changelog_file_path}"
128
-
129
- sh "git commit -m 'Update version to #{version}'"
130
- end
62
+ require_relative 'template/versions'
63
+ expand Template::Versions,
64
+ version_file_path: template.version_file_path
131
65
 
132
- def wait_for_manual_check
133
- STDOUT.puts 'Please, validate files and commits before pushing.'
134
- STDIN.gets
135
- end
136
- end
66
+ require_relative 'template/release'
67
+ expand Template::Release,
68
+ version_file_path: template.version_file_path,
69
+ unreleased_title: template.unreleased_title
137
70
  end
138
71
  end
139
72
  end
@@ -1,19 +1,22 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'memery'
4
+
3
5
  module GemToys
4
6
  ## Template with gem tools, should be expanded in toys file
5
7
  class Template
6
8
  ## Module for common code between nested tools
7
9
  module CommonCode
10
+ include Memery
11
+
8
12
  private
9
13
 
10
- def project_name
11
- @project_name ||= File.basename context_directory
14
+ memoize def project_name
15
+ File.basename context_directory
12
16
  end
13
17
 
14
- def version_file_path
15
- @version_file_path ||=
16
- @template.version_file_path ||
18
+ memoize def version_file_path
19
+ @template.version_file_path ||
17
20
  begin
18
21
  project_path = project_name.tr '-', '/'
19
22
  File.join context_directory, 'lib', project_path, 'version.rb'
@@ -24,25 +27,62 @@ module GemToys
24
27
  File.read version_file_path
25
28
  end
26
29
 
27
- def current_version
28
- @current_version ||= version_file_content.match(/VERSION = '(.+)'/)[1]
30
+ memoize def current_version
31
+ version_file_content.match(/VERSION = '(.+)'/)[1]
29
32
  end
30
33
 
31
- def changelog_file_path
32
- @changelog_file_path ||= File.join context_directory, 'CHANGELOG.md'
34
+ memoize def changelog_file_name
35
+ 'CHANGELOG.md'
33
36
  end
34
37
 
35
- def gem_file_name
36
- @gem_file_name ||= "#{project_name}-#{current_version}.gem"
38
+ memoize def changelog_file_path
39
+ File.join context_directory, changelog_file_name
37
40
  end
38
41
 
39
- def pkg_directory
40
- @pkg_directory ||= "#{context_directory}/pkg"
42
+ memoize def gem_file_name
43
+ "#{project_name}-#{current_version}.gem"
44
+ end
45
+
46
+ memoize def pkg_directory
47
+ "#{context_directory}/pkg"
41
48
  end
42
49
 
43
50
  def current_gem_file
44
51
  "#{pkg_directory}/#{gem_file_name}"
45
52
  end
53
+
54
+ memoize def rubygems_connection
55
+ require 'faraday'
56
+ require 'faraday_middleware'
57
+
58
+ Faraday.new 'https://rubygems.org/api/v1' do |conn|
59
+ conn.response :json, parser_options: { symbolize_names: true }
60
+ end
61
+ end
62
+
63
+ memoize def rubygems_versions
64
+ rubygems_connection.get("versions/#{project_name}.json").body
65
+ end
66
+
67
+ def current_version_hash
68
+ { number: current_version, created_at: 'unreleased' }
69
+ end
70
+
71
+ def puts_versions(versions)
72
+ require 'date'
73
+
74
+ longest_version_number = versions.map { |version| version[:number].length }.max
75
+
76
+ versions.each do |version|
77
+ created_at = begin
78
+ DateTime.parse(version[:created_at]).strftime('%b %e %Y %R')
79
+ rescue Date::Error
80
+ version[:created_at]
81
+ end
82
+
83
+ puts "#{version[:number].ljust(longest_version_number)} (#{created_at})"
84
+ end
85
+ end
46
86
  end
47
87
  end
48
88
  end
@@ -0,0 +1,159 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GemToys
4
+ class Template
5
+ ## Template with gem release tool, expanding internally
6
+ class Release
7
+ include Toys::Template
8
+
9
+ attr_reader :version_file_path, :unreleased_title
10
+
11
+ def initialize(version_file_path:, unreleased_title:)
12
+ @version_file_path = version_file_path
13
+ @unreleased_title = unreleased_title
14
+ end
15
+
16
+ on_expand do |template|
17
+ tool :release do
18
+ required_arg :new_version
19
+
20
+ to_run do
21
+ require 'date'
22
+
23
+ @template = template
24
+
25
+ @today = Date.today.to_s
26
+
27
+ handle_new_version
28
+
29
+ update_version_file
30
+
31
+ ## Update CHANGELOG
32
+ update_changelog_file
33
+
34
+ ## Build new gem file
35
+ exec_tool 'gem build'
36
+
37
+ wait_for_manual_check
38
+
39
+ ## Checkout to a new git branch, required for protected `master` with CI
40
+ # sh "git switch -c v#{@new_version}"
41
+
42
+ commit_changes
43
+
44
+ ## Tag commit
45
+ puts 'Tagging the commit...'
46
+ sh "git tag -a v#{@new_version} -m 'Version #{@new_version}'"
47
+
48
+ ## Push commit
49
+ puts 'Pushing commit...'
50
+ sh 'git push'
51
+
52
+ ## Push tags
53
+ puts 'Pushing tags...'
54
+ sh 'git push --tags'
55
+
56
+ puts 'Pushing gem...'
57
+ sh "gem push #{current_gem_file}"
58
+ end
59
+
60
+ private
61
+
62
+ self::VERSION_TYPES = %w[
63
+ major
64
+ minor
65
+ patch
66
+ ].freeze
67
+
68
+ def handle_new_version
69
+ ## https://github.com/dazuma/toys/issues/103
70
+ @new_version =
71
+ if (version_index = self.class::VERSION_TYPES.index(new_version))
72
+ current_version_parts =
73
+ current_version.split('.')[0..(self.class::VERSION_TYPES.count - 1)]
74
+ handle_keyword_in_new_version current_version_parts, version_index
75
+ else
76
+ new_version
77
+ end
78
+
79
+ clear_memery_cache! :current_version
80
+ end
81
+
82
+ def handle_keyword_in_new_version(current_version_parts, version_index)
83
+ current_version_parts.map.with_index do |version_part, index|
84
+ if index < version_index
85
+ version_part
86
+ elsif index == version_index
87
+ Integer(version_part) + 1
88
+ else
89
+ 0
90
+ end
91
+ end.join('.')
92
+ end
93
+
94
+ def update_version_file
95
+ puts 'Updating version file...'
96
+
97
+ File.write(
98
+ version_file_path,
99
+ version_file_content.sub(/(VERSION = )'.+'/, "\\1'#{@new_version}'")
100
+ )
101
+ end
102
+
103
+ def update_changelog_file
104
+ puts 'Updating changelog file...'
105
+
106
+ @changelog_lines = File.readlines(changelog_file_path)
107
+
108
+ existing_line = @changelog_lines.find { |line| line.start_with? "## #{@new_version} " }
109
+
110
+ if existing_line
111
+ return if (existing_date = existing_line.match(/\((.*)\)/)[1]) == @today
112
+
113
+ abort "There is already #{version} version with date #{existing_date}"
114
+ end
115
+
116
+ File.write changelog_file_path, new_changelog_content
117
+ end
118
+
119
+ def new_changelog_content
120
+ unreleased_title = @template.unreleased_title
121
+
122
+ unreleased_title_index = @changelog_lines.index("#{unreleased_title}\n")
123
+
124
+ abort_without_unreleased_title unless unreleased_title_index
125
+
126
+ @changelog_lines.insert(
127
+ unreleased_title_index + 2,
128
+ '#' * unreleased_title.scan(/^#+/).first.size + " #{@new_version} (#{@today})\n\n"
129
+ ).join
130
+ end
131
+
132
+ def abort_without_unreleased_title
133
+ abort <<~TEXT
134
+ `#{@template.unreleased_title}` not found in the `#{changelog_file_name}` as the title for unreleased changes.
135
+ Please, use `:unreleased_title` option if you have non-default one.
136
+ TEXT
137
+ end
138
+
139
+ def commit_changes
140
+ puts 'Committing changes...'
141
+
142
+ sh "git add #{version_file_path} #{changelog_file_path}"
143
+
144
+ sh "git commit -m 'Update version to #{@new_version}'"
145
+ end
146
+
147
+ def wait_for_manual_check
148
+ $stdout.puts
149
+ sh "git diff #{version_file_path} #{changelog_file_path}"
150
+ $stdout.puts
151
+ $stdout.puts 'Please, validate files before committing and pushing!'
152
+ $stdout.puts 'Press anything to continue, Ctrl+C to cancel.'
153
+ $stdin.gets
154
+ end
155
+ end
156
+ end
157
+ end
158
+ end
159
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GemToys
4
+ class Template
5
+ ## Template with gem versions tool, expanding internally
6
+ class Versions
7
+ include Toys::Template
8
+
9
+ attr_reader :version_file_path
10
+
11
+ def initialize(version_file_path:)
12
+ @version_file_path = version_file_path
13
+ end
14
+
15
+ on_expand do |template|
16
+ tool :versions do
17
+ to_run do
18
+ @template = template
19
+
20
+ versions = rubygems_versions
21
+
22
+ versions.unshift current_version_hash if current_version != versions.first[:number]
23
+
24
+ puts_versions versions
25
+ end
26
+ end
27
+ alias_tool :releases, :versions
28
+ end
29
+ end
30
+ end
31
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GemToys
4
- VERSION = '0.2.0'
4
+ VERSION = '0.6.1'
5
5
  end
metadata CHANGED
@@ -1,15 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gem_toys
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Popov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-08 00:00:00.000000000 Z
11
+ date: 2021-02-09 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: alt_memery
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: faraday
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: faraday_middleware
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.0'
13
55
  - !ruby/object:Gem::Dependency
14
56
  name: pry-byebug
15
57
  requirement: !ruby/object:Gem::Requirement
@@ -44,34 +86,28 @@ dependencies:
44
86
  requirements:
45
87
  - - "~>"
46
88
  - !ruby/object:Gem::Version
47
- version: 0.10.0
89
+ version: 0.11.0
48
90
  type: :development
49
91
  prerelease: false
50
92
  version_requirements: !ruby/object:Gem::Requirement
51
93
  requirements:
52
94
  - - "~>"
53
95
  - !ruby/object:Gem::Version
54
- version: 0.10.0
96
+ version: 0.11.0
55
97
  - !ruby/object:Gem::Dependency
56
98
  name: codecov
57
99
  requirement: !ruby/object:Gem::Requirement
58
100
  requirements:
59
101
  - - "~>"
60
102
  - !ruby/object:Gem::Version
61
- version: 0.1.0
62
- - - "<"
63
- - !ruby/object:Gem::Version
64
- version: 0.1.18
103
+ version: 0.4.2
65
104
  type: :development
66
105
  prerelease: false
67
106
  version_requirements: !ruby/object:Gem::Requirement
68
107
  requirements:
69
108
  - - "~>"
70
109
  - !ruby/object:Gem::Version
71
- version: 0.1.0
72
- - - "<"
73
- - !ruby/object:Gem::Version
74
- version: 0.1.18
110
+ version: 0.4.2
75
111
  - !ruby/object:Gem::Dependency
76
112
  name: rspec
77
113
  requirement: !ruby/object:Gem::Requirement
@@ -92,28 +128,28 @@ dependencies:
92
128
  requirements:
93
129
  - - "~>"
94
130
  - !ruby/object:Gem::Version
95
- version: 0.18.0
131
+ version: 0.21.2
96
132
  type: :development
97
133
  prerelease: false
98
134
  version_requirements: !ruby/object:Gem::Requirement
99
135
  requirements:
100
136
  - - "~>"
101
137
  - !ruby/object:Gem::Version
102
- version: 0.18.0
138
+ version: 0.21.2
103
139
  - !ruby/object:Gem::Dependency
104
140
  name: rubocop
105
141
  requirement: !ruby/object:Gem::Requirement
106
142
  requirements:
107
143
  - - "~>"
108
144
  - !ruby/object:Gem::Version
109
- version: 0.87.0
145
+ version: '1.2'
110
146
  type: :development
111
147
  prerelease: false
112
148
  version_requirements: !ruby/object:Gem::Requirement
113
149
  requirements:
114
150
  - - "~>"
115
151
  - !ruby/object:Gem::Version
116
- version: 0.87.0
152
+ version: '1.2'
117
153
  - !ruby/object:Gem::Dependency
118
154
  name: rubocop-performance
119
155
  requirement: !ruby/object:Gem::Requirement
@@ -134,14 +170,14 @@ dependencies:
134
170
  requirements:
135
171
  - - "~>"
136
172
  - !ruby/object:Gem::Version
137
- version: '1.0'
173
+ version: '2.0'
138
174
  type: :development
139
175
  prerelease: false
140
176
  version_requirements: !ruby/object:Gem::Requirement
141
177
  requirements:
142
178
  - - "~>"
143
179
  - !ruby/object:Gem::Version
144
- version: '1.0'
180
+ version: '2.0'
145
181
  description: 'Toys template for gems, like building, releasing, etc.
146
182
 
147
183
  '
@@ -157,6 +193,8 @@ files:
157
193
  - lib/gem_toys.rb
158
194
  - lib/gem_toys/template.rb
159
195
  - lib/gem_toys/template/common_code.rb
196
+ - lib/gem_toys/template/release.rb
197
+ - lib/gem_toys/template/versions.rb
160
198
  - lib/gem_toys/version.rb
161
199
  homepage: https://github.com/AlexWayfer/gem_toys
162
200
  licenses:
@@ -174,13 +212,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
174
212
  - - ">="
175
213
  - !ruby/object:Gem::Version
176
214
  version: '2.5'
215
+ - - "<"
216
+ - !ruby/object:Gem::Version
217
+ version: '4'
177
218
  required_rubygems_version: !ruby/object:Gem::Requirement
178
219
  requirements:
179
220
  - - ">="
180
221
  - !ruby/object:Gem::Version
181
222
  version: '0'
182
223
  requirements: []
183
- rubygems_version: 3.1.2
224
+ rubygems_version: 3.2.3
184
225
  signing_key:
185
226
  specification_version: 4
186
227
  summary: Toys template for gems