aufgaben 0.8.2 → 0.9.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 +4 -4
- data/CHANGELOG.md +25 -1
- data/README.md +17 -4
- data/lib/aufgaben/base.rb +4 -0
- data/lib/aufgaben/bump/base.rb +2 -2
- data/lib/aufgaben/bump/ruby.rb +3 -0
- data/lib/aufgaben/release.rb +55 -14
- data/lib/aufgaben/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b4b6e4ec3c6598239fb54928583b75f4a8cdea94891a7356ef4852261ae064cb
|
4
|
+
data.tar.gz: e9e42da4265df2fb295f4d0d1f1035f68faabbf131fe5ea5c3d0cc1a3f46d036
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 95ab0e6a21c756e66ad5e39d673c086286b2fd1f4ebb387d4ca893d3d965e7dcae6030b70b23574ff81b5994f5c14a1213f891d61039d46cbb892ee0e62811ea
|
7
|
+
data.tar.gz: eb7d1ceda59ab6114e57fbbd61bbbf43247e709b0eb733247c6ad003c8340e4e705d20a1f862d2d8a2aa2110a1d1a7922070308f8091c04dbd7f4f4c4cf2b29e
|
data/CHANGELOG.md
CHANGED
@@ -4,7 +4,31 @@ All notable changes to this project will be documented in this file.
|
|
4
4
|
|
5
5
|
## Unreleased
|
6
6
|
|
7
|
-
[Full diff](https://github.com/ybiquitous/aufgaben/compare/0.
|
7
|
+
[Full diff](https://github.com/ybiquitous/aufgaben/compare/0.9.0...HEAD)
|
8
|
+
|
9
|
+
## 0.9.0
|
10
|
+
|
11
|
+
[Full diff](https://github.com/ybiquitous/aufgaben/compare/0.8.5...0.9.0)
|
12
|
+
|
13
|
+
- Support Ruby 3.0.3/2.7.5/2.6.9 for `bump:ruby` [#50](https://github.com/ybiquitous/aufgaben/pull/50)
|
14
|
+
|
15
|
+
## 0.8.5
|
16
|
+
|
17
|
+
[Full diff](https://github.com/ybiquitous/aufgaben/compare/0.8.4...0.8.5)
|
18
|
+
|
19
|
+
- Check committed files on `release` task [#49](https://github.com/ybiquitous/aufgaben/pull/49)
|
20
|
+
|
21
|
+
## 0.8.4
|
22
|
+
|
23
|
+
[Full diff](https://github.com/ybiquitous/aufgaben/compare/0.8.3...0.8.4)
|
24
|
+
|
25
|
+
- Check if specified files are updated on `release` task [#46](https://github.com/ybiquitous/aufgaben/pull/46)
|
26
|
+
|
27
|
+
## 0.8.3
|
28
|
+
|
29
|
+
[Full diff](https://github.com/ybiquitous/aufgaben/compare/0.8.2...0.8.3)
|
30
|
+
|
31
|
+
- Run `git show` on `release` task [#45](https://github.com/ybiquitous/aufgaben/pull/45)
|
8
32
|
|
9
33
|
## 0.8.2
|
10
34
|
|
data/README.md
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
[](https://badge.fury.io/rb/aufgaben)
|
2
|
+
|
1
3
|
# Aufgaben
|
2
4
|
|
3
5
|
The collection of useful Rake tasks.
|
@@ -7,8 +9,7 @@ The collection of useful Rake tasks.
|
|
7
9
|
Add this line to your `Gemfile`:
|
8
10
|
|
9
11
|
```ruby
|
10
|
-
gem "aufgaben",
|
11
|
-
|
12
|
+
gem "aufgaben", require: false
|
12
13
|
```
|
13
14
|
|
14
15
|
## Usage
|
@@ -112,9 +113,21 @@ $ rake bump:nodejs'[12.16.1]' [DRY_RUN=1]
|
|
112
113
|
|
113
114
|
## Development
|
114
115
|
|
115
|
-
|
116
|
+
To set up:
|
117
|
+
|
118
|
+
```console
|
119
|
+
bin/setup
|
120
|
+
```
|
121
|
+
|
122
|
+
To run an interactive prompt:
|
123
|
+
|
124
|
+
```console
|
125
|
+
bin/console
|
126
|
+
```
|
127
|
+
|
128
|
+
To release:
|
116
129
|
|
117
|
-
|
130
|
+
Run manually on the [Release workflow](https://github.com/ybiquitous/aufgaben/actions/workflows/release.yml).
|
118
131
|
|
119
132
|
## Contributing
|
120
133
|
|
data/lib/aufgaben/base.rb
CHANGED
data/lib/aufgaben/bump/base.rb
CHANGED
data/lib/aufgaben/bump/ruby.rb
CHANGED
@@ -9,14 +9,17 @@ module Aufgaben
|
|
9
9
|
|
10
10
|
DEFAULT_RELEASE_NOTE_URL = "https://www.ruby-lang.org/en/news".freeze
|
11
11
|
RELEASE_NOTE_URLS = {
|
12
|
+
"3.0.3": "https://www.ruby-lang.org/en/news/2021/11/24/ruby-3-0-3-released/",
|
12
13
|
"3.0.2": "https://www.ruby-lang.org/en/news/2021/07/07/ruby-3-0-2-released/",
|
13
14
|
"3.0.1": "https://www.ruby-lang.org/en/news/2021/04/05/ruby-3-0-1-released/",
|
14
15
|
"3.0.0": "https://www.ruby-lang.org/en/news/2020/12/25/ruby-3-0-0-released/",
|
16
|
+
"2.7.5": "https://www.ruby-lang.org/en/news/2021/11/24/ruby-2-7-5-released/",
|
15
17
|
"2.7.4": "https://www.ruby-lang.org/en/news/2021/07/07/ruby-2-7-4-released/",
|
16
18
|
"2.7.3": "https://www.ruby-lang.org/en/news/2021/04/05/ruby-2-7-3-released/",
|
17
19
|
"2.7.2": "https://www.ruby-lang.org/en/news/2020/10/02/ruby-2-7-2-released/",
|
18
20
|
"2.7.1": "https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-7-1-released/",
|
19
21
|
"2.7.0": "https://www.ruby-lang.org/en/news/2019/12/25/ruby-2-7-0-released/",
|
22
|
+
"2.6.9": "https://www.ruby-lang.org/en/news/2021/11/24/ruby-2-6-9-released/",
|
20
23
|
"2.6.8": "https://www.ruby-lang.org/en/news/2021/07/07/ruby-2-6-8-released/",
|
21
24
|
"2.6.7": "https://www.ruby-lang.org/en/news/2021/04/05/ruby-2-6-7-released/",
|
22
25
|
"2.6.6": "https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-6-6-released/",
|
data/lib/aufgaben/release.rb
CHANGED
@@ -34,8 +34,8 @@ module Aufgaben
|
|
34
34
|
|
35
35
|
msg "If you want to do this on dry-run mode, set 'DRY_RUN=1'." unless dry_run?
|
36
36
|
|
37
|
-
|
38
|
-
|
37
|
+
git "checkout", default_branch, "--quiet"
|
38
|
+
git "pull", "origin", default_branch, "--quiet"
|
39
39
|
sh "bundle", "install", "--quiet"
|
40
40
|
|
41
41
|
if current_version.empty?
|
@@ -47,7 +47,7 @@ module Aufgaben
|
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
50
|
-
|
50
|
+
git "diff", "--exit-code", "--quiet" do |ok|
|
51
51
|
abort "Uncommitted changes found!" unless ok
|
52
52
|
end
|
53
53
|
|
@@ -57,7 +57,11 @@ module Aufgaben
|
|
57
57
|
msg "Releasing a new version: #{current_version} -> #{colored_new_version}"
|
58
58
|
end
|
59
59
|
|
60
|
-
|
60
|
+
git "--no-pager", "log", "--format=%C(auto)%h %Creset%s", "#{current_version}..HEAD"
|
61
|
+
|
62
|
+
each_file do |file|
|
63
|
+
update_version_in file, write: false
|
64
|
+
end
|
61
65
|
|
62
66
|
if dry_run?
|
63
67
|
msg "This is a dry-run mode. No actual changes. Next, run this without `DRY_RUN=1`."
|
@@ -71,16 +75,21 @@ module Aufgaben
|
|
71
75
|
else
|
72
76
|
add_changelog with: new_version
|
73
77
|
end
|
74
|
-
|
78
|
+
git "add", changelog
|
75
79
|
|
76
|
-
|
80
|
+
each_file do |file|
|
77
81
|
update_version_in file
|
78
|
-
|
82
|
+
git "add", file
|
79
83
|
end
|
80
84
|
|
81
|
-
|
82
|
-
|
83
|
-
|
85
|
+
git "commit", "--quiet", "--message", "Version #{new_version}"
|
86
|
+
git "tag", "--annotate", "--message", "Version #{new_version}", new_version
|
87
|
+
git "show", "--pretty"
|
88
|
+
|
89
|
+
check_committed_files
|
90
|
+
|
91
|
+
git_push = Color.new("git push --follow-tags").green
|
92
|
+
msg "The tag '#{colored_new_version}' is added. Run '#{git_push}'."
|
84
93
|
end
|
85
94
|
end
|
86
95
|
end
|
@@ -151,12 +160,44 @@ module Aufgaben
|
|
151
160
|
msg "'#{changelog}' is added."
|
152
161
|
end
|
153
162
|
|
154
|
-
def
|
163
|
+
def check_committed_files
|
164
|
+
expected = [*expanded_files, changelog].sort
|
165
|
+
actual = `git diff --name-only HEAD^...HEAD`.lines(chomp: true).sort
|
166
|
+
|
167
|
+
if expected != actual
|
168
|
+
abort <<~MSG
|
169
|
+
The committed files are not what was expected.
|
170
|
+
Expected: #{expected}
|
171
|
+
Actual: #{actual}
|
172
|
+
MSG
|
173
|
+
end
|
174
|
+
end
|
175
|
+
|
176
|
+
def expanded_files
|
177
|
+
@expanded_files ||= Dir.glob(files, File::FNM_EXTGLOB)
|
178
|
+
end
|
179
|
+
|
180
|
+
def each_file(&block)
|
181
|
+
expanded_files.each(&block)
|
182
|
+
end
|
183
|
+
|
184
|
+
def update_version_in(file, write: true)
|
155
185
|
content = File.read(file)
|
156
|
-
content = content.gsub(Regexp.new('\b' + Regexp.escape(current_version) + '\b'), new_version)
|
157
|
-
File.write(file, content)
|
158
186
|
|
159
|
-
|
187
|
+
current_version_pattern = Regexp.new('\b' + Regexp.escape(current_version) + '\b')
|
188
|
+
unless current_version_pattern.match?(content)
|
189
|
+
abort "The current version '#{current_version}' is not found in '#{file}'!"
|
190
|
+
end
|
191
|
+
|
192
|
+
new_content = content.gsub(current_version_pattern, new_version)
|
193
|
+
if content == new_content
|
194
|
+
abort "No changes in '#{file}'"
|
195
|
+
end
|
196
|
+
|
197
|
+
if write
|
198
|
+
File.write(file, new_content)
|
199
|
+
msg "'#{file}' is updated."
|
200
|
+
end
|
160
201
|
end
|
161
202
|
|
162
203
|
def msg(text)
|
data/lib/aufgaben/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aufgaben
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Masafumi Koba
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-12-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -93,7 +93,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
93
93
|
- !ruby/object:Gem::Version
|
94
94
|
version: '0'
|
95
95
|
requirements: []
|
96
|
-
rubygems_version: 3.2.
|
96
|
+
rubygems_version: 3.2.32
|
97
97
|
signing_key:
|
98
98
|
specification_version: 4
|
99
99
|
summary: The collection of useful Rake tasks.
|