job_notifier 1.2.3 → 2.0.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 +5 -5
- data/.circleci/config.yml +104 -0
- data/.circleci/setup-rubygems.sh +3 -0
- data/.rubocop.yml +76 -605
- data/.ruby-version +1 -1
- data/CHANGELOG.md +31 -2
- data/Gemfile.lock +191 -127
- data/README.md +18 -6
- data/app/assets/javascripts/job_notifier/notifier.js +4 -0
- data/app/models/job_notifier/job.rb +3 -2
- data/job_notifier.gemspec +9 -5
- data/lib/generators/job_notifier/install/templates/initializer.rb +4 -0
- data/lib/job_notifier.rb +6 -1
- data/lib/job_notifier/engine.rb +10 -4
- data/lib/job_notifier/error.rb +5 -5
- data/lib/job_notifier/logger.rb +1 -0
- data/lib/job_notifier/notifier.rb +6 -6
- data/lib/job_notifier/version.rb +1 -1
- data/spec/dummy/Rakefile +1 -1
- data/spec/dummy/app/assets/config/manifest.js +3 -0
- data/spec/dummy/app/assets/stylesheets/application.css +3 -3
- data/spec/dummy/app/channels/application_cable/channel.rb +4 -0
- data/spec/dummy/app/channels/application_cable/connection.rb +4 -0
- data/spec/dummy/app/controllers/application_controller.rb +0 -3
- data/spec/dummy/app/javascript/packs/application.js +15 -0
- data/spec/dummy/app/jobs/application_job.rb +7 -0
- data/spec/dummy/app/mailers/application_mailer.rb +4 -0
- data/spec/dummy/app/models/application_record.rb +3 -0
- data/spec/dummy/app/views/layouts/application.html.erb +10 -9
- data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
- data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
- data/spec/dummy/bin/rails +3 -3
- data/spec/dummy/bin/rake +2 -2
- data/spec/dummy/bin/setup +18 -14
- data/spec/dummy/config.ru +3 -1
- data/spec/dummy/config/application.rb +12 -21
- data/spec/dummy/config/boot.rb +3 -3
- data/spec/dummy/config/cable.yml +10 -0
- data/spec/dummy/config/database.yml +2 -2
- data/spec/dummy/config/environment.rb +1 -1
- data/spec/dummy/config/environments/development.rb +49 -14
- data/spec/dummy/config/environments/production.rb +63 -22
- data/spec/dummy/config/environments/test.rb +29 -12
- data/spec/dummy/config/initializers/application_controller_renderer.rb +8 -0
- data/spec/dummy/config/initializers/assets.rb +4 -3
- data/spec/dummy/config/initializers/backtrace_silencers.rb +4 -3
- data/spec/dummy/config/initializers/content_security_policy.rb +28 -0
- data/spec/dummy/config/initializers/cookies_serializer.rb +2 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +3 -1
- data/spec/dummy/config/initializers/job_notifier.rb +4 -0
- data/spec/dummy/config/initializers/permissions_policy.rb +11 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +2 -2
- data/spec/dummy/config/locales/en.yml +11 -1
- data/spec/dummy/config/puma.rb +43 -0
- data/spec/dummy/config/routes.rb +0 -1
- data/spec/dummy/config/storage.yml +34 -0
- data/spec/dummy/public/404.html +6 -6
- data/spec/dummy/public/422.html +6 -6
- data/spec/dummy/public/500.html +6 -6
- data/spec/dummy/public/apple-touch-icon-precomposed.png +0 -0
- data/spec/dummy/public/apple-touch-icon.png +0 -0
- data/spec/factories/job_notifier_jobs.rb +4 -4
- data/spec/lib/job_notifier/notifier_spec.rb +24 -7
- data/spec/rails_helper.rb +2 -2
- data/spec/spec_helper.rb +2 -0
- metadata +98 -26
- data/.travis.yml +0 -14
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.7
|
data/CHANGELOG.md
CHANGED
@@ -1,12 +1,41 @@
|
|
1
1
|
# Change Log
|
2
2
|
All notable changes to this project will be documented in this file.
|
3
3
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
4
|
+
### v2.0.0
|
5
|
+
##### Changed
|
6
|
+
|
7
|
+
- Replace travis with CircleCI.
|
8
|
+
- Update Dependencies to play nice with Rails 6.
|
9
|
+
|
10
|
+
### v1.5.0
|
11
|
+
|
12
|
+
##### Added
|
13
|
+
|
14
|
+
- Allow jobs without owner.
|
15
|
+
|
16
|
+
### v1.4.0
|
17
|
+
|
18
|
+
##### Changed
|
19
|
+
|
20
|
+
- Use update_attributes instead of update_columns to change update_at attribute.
|
21
|
+
|
22
|
+
### v1.3.0
|
23
|
+
|
24
|
+
##### Added
|
25
|
+
|
26
|
+
- Add silenced_log config option to disable silencer gem.
|
27
|
+
|
28
|
+
### v1.2.4
|
29
|
+
|
30
|
+
##### Fixed
|
31
|
+
|
32
|
+
- Check if /jobs endpoint returns response root.
|
4
33
|
|
5
34
|
### v1.2.3
|
6
35
|
|
7
36
|
##### Changed
|
8
37
|
|
9
|
-
- Avoid raising error with undefined verify_authenticity_token method
|
38
|
+
- Avoid raising error with undefined verify_authenticity_token method.
|
10
39
|
|
11
40
|
### v1.2.2
|
12
41
|
|
@@ -67,4 +96,4 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
67
96
|
|
68
97
|
### v0.1.0
|
69
98
|
|
70
|
-
|
99
|
+
- Initial release.
|
data/Gemfile.lock
CHANGED
@@ -1,168 +1,232 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
job_notifier (
|
4
|
+
job_notifier (2.0.0)
|
5
5
|
colorize (>= 0.7.7)
|
6
6
|
enumerize (>= 1.0)
|
7
|
-
rails (>=
|
7
|
+
rails (>= 6.0)
|
8
8
|
silencer (= 1.0.0.rc3)
|
9
9
|
|
10
10
|
GEM
|
11
11
|
remote: https://rubygems.org/
|
12
12
|
specs:
|
13
|
-
|
14
|
-
actionpack (=
|
15
|
-
|
16
|
-
|
13
|
+
actioncable (6.1.3.2)
|
14
|
+
actionpack (= 6.1.3.2)
|
15
|
+
activesupport (= 6.1.3.2)
|
16
|
+
nio4r (~> 2.0)
|
17
|
+
websocket-driver (>= 0.6.1)
|
18
|
+
actionmailbox (6.1.3.2)
|
19
|
+
actionpack (= 6.1.3.2)
|
20
|
+
activejob (= 6.1.3.2)
|
21
|
+
activerecord (= 6.1.3.2)
|
22
|
+
activestorage (= 6.1.3.2)
|
23
|
+
activesupport (= 6.1.3.2)
|
24
|
+
mail (>= 2.7.1)
|
25
|
+
actionmailer (6.1.3.2)
|
26
|
+
actionpack (= 6.1.3.2)
|
27
|
+
actionview (= 6.1.3.2)
|
28
|
+
activejob (= 6.1.3.2)
|
29
|
+
activesupport (= 6.1.3.2)
|
17
30
|
mail (~> 2.5, >= 2.5.4)
|
18
|
-
rails-dom-testing (~>
|
19
|
-
actionpack (
|
20
|
-
actionview (=
|
21
|
-
activesupport (=
|
22
|
-
rack (~>
|
23
|
-
rack-test (
|
24
|
-
rails-dom-testing (~>
|
25
|
-
rails-html-sanitizer (~> 1.0, >= 1.0
|
26
|
-
|
27
|
-
|
31
|
+
rails-dom-testing (~> 2.0)
|
32
|
+
actionpack (6.1.3.2)
|
33
|
+
actionview (= 6.1.3.2)
|
34
|
+
activesupport (= 6.1.3.2)
|
35
|
+
rack (~> 2.0, >= 2.0.9)
|
36
|
+
rack-test (>= 0.6.3)
|
37
|
+
rails-dom-testing (~> 2.0)
|
38
|
+
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
39
|
+
actiontext (6.1.3.2)
|
40
|
+
actionpack (= 6.1.3.2)
|
41
|
+
activerecord (= 6.1.3.2)
|
42
|
+
activestorage (= 6.1.3.2)
|
43
|
+
activesupport (= 6.1.3.2)
|
44
|
+
nokogiri (>= 1.8.5)
|
45
|
+
actionview (6.1.3.2)
|
46
|
+
activesupport (= 6.1.3.2)
|
28
47
|
builder (~> 3.1)
|
29
|
-
|
30
|
-
rails-dom-testing (~>
|
31
|
-
rails-html-sanitizer (~> 1.
|
32
|
-
activejob (
|
33
|
-
activesupport (=
|
34
|
-
globalid (>= 0.3.
|
35
|
-
activemodel (
|
36
|
-
activesupport (=
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
48
|
+
erubi (~> 1.4)
|
49
|
+
rails-dom-testing (~> 2.0)
|
50
|
+
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
51
|
+
activejob (6.1.3.2)
|
52
|
+
activesupport (= 6.1.3.2)
|
53
|
+
globalid (>= 0.3.6)
|
54
|
+
activemodel (6.1.3.2)
|
55
|
+
activesupport (= 6.1.3.2)
|
56
|
+
activerecord (6.1.3.2)
|
57
|
+
activemodel (= 6.1.3.2)
|
58
|
+
activesupport (= 6.1.3.2)
|
59
|
+
activestorage (6.1.3.2)
|
60
|
+
actionpack (= 6.1.3.2)
|
61
|
+
activejob (= 6.1.3.2)
|
62
|
+
activerecord (= 6.1.3.2)
|
63
|
+
activesupport (= 6.1.3.2)
|
64
|
+
marcel (~> 1.0.0)
|
65
|
+
mini_mime (~> 1.0.2)
|
66
|
+
activesupport (6.1.3.2)
|
67
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
68
|
+
i18n (>= 1.6, < 2)
|
69
|
+
minitest (>= 5.1)
|
70
|
+
tzinfo (~> 2.0)
|
71
|
+
zeitwerk (~> 2.3)
|
72
|
+
ast (2.4.2)
|
73
|
+
builder (3.2.4)
|
74
|
+
coderay (1.1.3)
|
50
75
|
colorize (0.8.1)
|
51
|
-
concurrent-ruby (1.
|
52
|
-
coveralls (0.8.
|
76
|
+
concurrent-ruby (1.1.9)
|
77
|
+
coveralls (0.8.23)
|
53
78
|
json (>= 1.8, < 3)
|
54
|
-
simplecov (~> 0.
|
79
|
+
simplecov (~> 0.16.1)
|
55
80
|
term-ansicolor (~> 1.3)
|
56
|
-
thor (
|
81
|
+
thor (>= 0.19.4, < 2.0)
|
57
82
|
tins (~> 1.6)
|
58
|
-
|
59
|
-
|
60
|
-
|
83
|
+
crass (1.0.6)
|
84
|
+
diff-lcs (1.4.4)
|
85
|
+
docile (1.4.0)
|
86
|
+
enumerize (2.4.0)
|
61
87
|
activesupport (>= 3.2)
|
62
|
-
|
63
|
-
|
64
|
-
activesupport (>=
|
65
|
-
|
66
|
-
|
67
|
-
railties (>=
|
68
|
-
globalid (0.4.
|
88
|
+
erubi (1.10.0)
|
89
|
+
factory_bot (6.2.0)
|
90
|
+
activesupport (>= 5.0.0)
|
91
|
+
factory_bot_rails (6.2.0)
|
92
|
+
factory_bot (~> 6.2.0)
|
93
|
+
railties (>= 5.0.0)
|
94
|
+
globalid (0.4.2)
|
69
95
|
activesupport (>= 4.2.0)
|
70
|
-
i18n (
|
71
|
-
|
72
|
-
|
96
|
+
i18n (1.8.10)
|
97
|
+
concurrent-ruby (~> 1.0)
|
98
|
+
json (2.5.1)
|
99
|
+
loofah (2.10.0)
|
100
|
+
crass (~> 1.0.2)
|
73
101
|
nokogiri (>= 1.5.9)
|
74
|
-
mail (2.
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
102
|
+
mail (2.7.1)
|
103
|
+
mini_mime (>= 0.1.1)
|
104
|
+
marcel (1.0.1)
|
105
|
+
method_source (1.0.0)
|
106
|
+
mini_mime (1.0.3)
|
107
|
+
minitest (5.14.4)
|
108
|
+
nio4r (2.5.7)
|
109
|
+
nokogiri (1.11.7-x86_64-darwin)
|
110
|
+
racc (~> 1.4)
|
111
|
+
nokogiri (1.11.7-x86_64-linux)
|
112
|
+
racc (~> 1.4)
|
113
|
+
parallel (1.20.1)
|
114
|
+
parser (3.0.1.1)
|
115
|
+
ast (~> 2.4.1)
|
116
|
+
pry (0.14.1)
|
117
|
+
coderay (~> 1.1)
|
118
|
+
method_source (~> 1.0)
|
119
|
+
racc (1.5.2)
|
120
|
+
rack (2.2.3)
|
121
|
+
rack-test (1.1.0)
|
122
|
+
rack (>= 1.0, < 3)
|
123
|
+
rails (6.1.3.2)
|
124
|
+
actioncable (= 6.1.3.2)
|
125
|
+
actionmailbox (= 6.1.3.2)
|
126
|
+
actionmailer (= 6.1.3.2)
|
127
|
+
actionpack (= 6.1.3.2)
|
128
|
+
actiontext (= 6.1.3.2)
|
129
|
+
actionview (= 6.1.3.2)
|
130
|
+
activejob (= 6.1.3.2)
|
131
|
+
activemodel (= 6.1.3.2)
|
132
|
+
activerecord (= 6.1.3.2)
|
133
|
+
activestorage (= 6.1.3.2)
|
134
|
+
activesupport (= 6.1.3.2)
|
135
|
+
bundler (>= 1.15.0)
|
136
|
+
railties (= 6.1.3.2)
|
137
|
+
sprockets-rails (>= 2.0.0)
|
138
|
+
rails-dom-testing (2.0.3)
|
139
|
+
activesupport (>= 4.2.0)
|
140
|
+
nokogiri (>= 1.6)
|
141
|
+
rails-html-sanitizer (1.3.0)
|
142
|
+
loofah (~> 2.3)
|
143
|
+
railties (6.1.3.2)
|
144
|
+
actionpack (= 6.1.3.2)
|
145
|
+
activesupport (= 6.1.3.2)
|
146
|
+
method_source
|
113
147
|
rake (>= 0.8.7)
|
114
|
-
thor (
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
148
|
+
thor (~> 1.0)
|
149
|
+
rainbow (3.0.0)
|
150
|
+
rake (13.0.3)
|
151
|
+
regexp_parser (2.1.1)
|
152
|
+
rexml (3.2.5)
|
153
|
+
rspec-core (3.10.1)
|
154
|
+
rspec-support (~> 3.10.0)
|
155
|
+
rspec-expectations (3.10.1)
|
119
156
|
diff-lcs (>= 1.2.0, < 2.0)
|
120
|
-
rspec-support (~> 3.
|
121
|
-
rspec-mocks (3.
|
157
|
+
rspec-support (~> 3.10.0)
|
158
|
+
rspec-mocks (3.10.2)
|
122
159
|
diff-lcs (>= 1.2.0, < 2.0)
|
123
|
-
rspec-support (~> 3.
|
124
|
-
rspec-rails (
|
125
|
-
actionpack (>=
|
126
|
-
activesupport (>=
|
127
|
-
railties (>=
|
128
|
-
rspec-core (~> 3.
|
129
|
-
rspec-expectations (~> 3.
|
130
|
-
rspec-mocks (~> 3.
|
131
|
-
rspec-support (~> 3.
|
132
|
-
rspec-support (3.
|
160
|
+
rspec-support (~> 3.10.0)
|
161
|
+
rspec-rails (5.0.1)
|
162
|
+
actionpack (>= 5.2)
|
163
|
+
activesupport (>= 5.2)
|
164
|
+
railties (>= 5.2)
|
165
|
+
rspec-core (~> 3.10)
|
166
|
+
rspec-expectations (~> 3.10)
|
167
|
+
rspec-mocks (~> 3.10)
|
168
|
+
rspec-support (~> 3.10)
|
169
|
+
rspec-support (3.10.2)
|
170
|
+
rspec_junit_formatter (0.4.1)
|
171
|
+
rspec-core (>= 2, < 4, != 2.12.0)
|
172
|
+
rubocop (1.17.0)
|
173
|
+
parallel (~> 1.10)
|
174
|
+
parser (>= 3.0.0.0)
|
175
|
+
rainbow (>= 2.2.2, < 4.0)
|
176
|
+
regexp_parser (>= 1.8, < 3.0)
|
177
|
+
rexml
|
178
|
+
rubocop-ast (>= 1.7.0, < 2.0)
|
179
|
+
ruby-progressbar (~> 1.7)
|
180
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
181
|
+
rubocop-ast (1.7.0)
|
182
|
+
parser (>= 3.0.1.1)
|
183
|
+
rubocop-rails (2.10.1)
|
184
|
+
activesupport (>= 4.2.0)
|
185
|
+
rack (>= 1.1)
|
186
|
+
rubocop (>= 1.7.0, < 2.0)
|
187
|
+
ruby-progressbar (1.11.0)
|
133
188
|
silencer (1.0.0.rc3)
|
134
|
-
simplecov (0.
|
135
|
-
docile (~> 1.1
|
189
|
+
simplecov (0.16.1)
|
190
|
+
docile (~> 1.1)
|
136
191
|
json (>= 1.8, < 3)
|
137
192
|
simplecov-html (~> 0.10.0)
|
138
|
-
simplecov-html (0.10.
|
139
|
-
|
140
|
-
sprockets (3.7.1)
|
193
|
+
simplecov-html (0.10.2)
|
194
|
+
sprockets (4.0.2)
|
141
195
|
concurrent-ruby (~> 1.0)
|
142
196
|
rack (> 1, < 3)
|
143
|
-
sprockets-rails (3.2.
|
197
|
+
sprockets-rails (3.2.2)
|
144
198
|
actionpack (>= 4.0)
|
145
199
|
activesupport (>= 4.0)
|
146
200
|
sprockets (>= 3.0.0)
|
147
|
-
sqlite3 (1.
|
148
|
-
|
201
|
+
sqlite3 (1.4.2)
|
202
|
+
sync (0.5.0)
|
203
|
+
term-ansicolor (1.7.1)
|
149
204
|
tins (~> 1.0)
|
150
|
-
thor (
|
151
|
-
|
152
|
-
|
153
|
-
tzinfo (
|
154
|
-
|
205
|
+
thor (1.1.0)
|
206
|
+
tins (1.29.1)
|
207
|
+
sync
|
208
|
+
tzinfo (2.0.4)
|
209
|
+
concurrent-ruby (~> 1.0)
|
210
|
+
unicode-display_width (2.0.0)
|
211
|
+
websocket-driver (0.7.5)
|
212
|
+
websocket-extensions (>= 0.1.0)
|
213
|
+
websocket-extensions (0.1.5)
|
214
|
+
zeitwerk (2.4.2)
|
155
215
|
|
156
216
|
PLATFORMS
|
157
|
-
|
217
|
+
x86_64-darwin-20
|
218
|
+
x86_64-linux
|
158
219
|
|
159
220
|
DEPENDENCIES
|
160
221
|
coveralls
|
161
|
-
|
222
|
+
factory_bot_rails
|
162
223
|
job_notifier!
|
163
224
|
pry
|
164
|
-
rspec-rails
|
225
|
+
rspec-rails
|
226
|
+
rspec_junit_formatter
|
227
|
+
rubocop (~> 1.9)
|
228
|
+
rubocop-rails
|
165
229
|
sqlite3
|
166
230
|
|
167
231
|
BUNDLED WITH
|
168
|
-
|
232
|
+
2.2.15
|
data/README.md
CHANGED
@@ -1,18 +1,21 @@
|
|
1
|
-
# Job Notifier
|
1
|
+
# Job Notifier
|
2
|
+
[](https://badge.fury.io/rb/job_notifier)
|
3
|
+
[](https://travis-ci.org/platanus/paperclip_attributes)
|
4
|
+
[](https://coveralls.io/github/platanus/job_notifier)
|
2
5
|
|
3
6
|
It's a Rails engine built on top of [Active Job](https://github.com/rails/activejob) in order to **improve user experience related to background processes**. To achieve this goal, the gem allows us to:
|
4
7
|
|
5
|
-
|
8
|
+
- **Relate jobs with entities**
|
6
9
|
|
7
10
|
Using [Active Job](https://github.com/rails/activejob), you can perform background jobs but, you can not relate them with, for example, a logged user. Job Notifier allows you to connect an entity with a job easily.
|
8
11
|
|
9
|
-
|
12
|
+
- **Persist job results**
|
10
13
|
|
11
14
|
Using [Active Job](https://github.com/rails/activejob), you can run jobs in background but, you are not be able to store the result of those jobs. This is a desired behavior if you, for example, want to provide validation feedback to users.
|
12
15
|
|
13
|
-
|
16
|
+
- **Notify users when their jobs change state.**
|
14
17
|
|
15
|
-
Using [Active Job](https://github.com/rails/activejob), you can run jobs in background but, you lose a real time response. To bring a solution to this issue, Job Notifier, through polling technique,
|
18
|
+
Using [Active Job](https://github.com/rails/activejob), you can run jobs in background but, you lose a real time response. To bring a solution to this issue, Job Notifier, through polling technique, gives you a way to know what's happening with your jobs.
|
16
19
|
|
17
20
|
## Installation
|
18
21
|
|
@@ -93,7 +96,7 @@ JobNotifier.onNotify = function(data) {
|
|
93
96
|
Now, you are be able to get feedback of your jobs but, you don't have any! so, the **Third** step is to define a job.
|
94
97
|
|
95
98
|
```ruby
|
96
|
-
class MyJob <
|
99
|
+
class MyJob < ApplicationJob
|
97
100
|
def perform_with_feedback(param1, param2)
|
98
101
|
MyService.run(param1, param2)
|
99
102
|
end
|
@@ -144,6 +147,15 @@ If you are building an API or your client app is not part of the project you hav
|
|
144
147
|
You can get the identifier executing in server side something like this: `@current_user.job_identifier` (Remember, I'm assuming you have a `@current_user` instance of `User` class that includes the `JobNotifier::Identifier` mixin).
|
145
148
|
|
146
149
|
The root url is your server url (where Job Notifier gem was installed).
|
150
|
+
## Publishing
|
151
|
+
|
152
|
+
On master/main branch...
|
153
|
+
|
154
|
+
1. Change `VERSION` in `lib/job_notifier/version.rb`.
|
155
|
+
2. Change `Unreleased` title to current version in `CHANGELOG.md`.
|
156
|
+
3. Commit new release. For example: `Releasing v0.1.0`.
|
157
|
+
4. Create tag. For example: `git tag v0.1.0`.
|
158
|
+
5. Push tag. For example: `git push origin v0.1.0`.
|
147
159
|
|
148
160
|
## Contributing
|
149
161
|
|