runger_release_assistant 0.13.0 → 1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: df8da28aa47615ce43376bab40ce4a4e2b8049c8849eb53ba828993752ba26db
4
- data.tar.gz: b6bda4cb35c82550fdc594380ba628fb8eb8b2a59d994be33a6c8833c0653951
3
+ metadata.gz: fb84a2deca6ff838d1daae768c394bc0bb90e720f78852689ed1915714eb4d3b
4
+ data.tar.gz: 6db7e0ebc1ed0239584f5ea89ddefa9c9b051b169005a079033d6a34ab221c4b
5
5
  SHA512:
6
- metadata.gz: 38ff2fa41c99f9e50303e128e1575d832c71c21662413e2a74e378734926b48611581a9a2f0bff06d4745f02d9b16cb5db202879713896f2d24676435fffb7db
7
- data.tar.gz: 763bb20929af7eaa34bb9b70fd93ed541b94942ed23f8eb036d2a14ffe7b63b918fc08170b400bb1b8df275ac03d3325a99f4ccd9cfbdacff247d021e9c1890e
6
+ metadata.gz: ef38b536bd49bfa2cf09cccf3217f9d4ffcbe661d598abeada58a2de273a91499e9bb605e50424132943ff399515e847e937dd9c2cccc514575bd4b6113a7061
7
+ data.tar.gz: 219343ffdd17e7c48882bf296bcfdf71f54ded9c32320e062eab534343db0dc331cd83a4475dd4b376102048a432ff3fc594c465ff9a5b2720e67cb4c0e31225
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.3.6
1
+ 3.4.1
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## v1.0.0 (2025-01-29)
2
+ - **BREAKING:** Run `main` (not `safe`) after releasing.
3
+
4
+ ## v0.14.0 (2024-12-31)
5
+ - Ensure we are on the primary branch when releasing
6
+
1
7
  ## v0.13.0 (2024-12-10)
2
8
  - Remove upper bounds on versions for all dependencies.
3
9
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- runger_release_assistant (0.13.0)
4
+ runger_release_assistant (1.0.0)
5
5
  activesupport (>= 6)
6
6
  memo_wise (>= 1.7)
7
7
  rainbow (>= 3.0)
@@ -10,7 +10,7 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activesupport (8.0.0)
13
+ activesupport (8.0.1)
14
14
  base64
15
15
  benchmark (>= 0.3)
16
16
  bigdecimal
@@ -26,26 +26,26 @@ GEM
26
26
  ast (2.4.2)
27
27
  base64 (0.2.0)
28
28
  benchmark (0.4.0)
29
- bigdecimal (3.1.8)
29
+ bigdecimal (3.1.9)
30
30
  byebug (11.1.3)
31
31
  coderay (1.1.3)
32
- concurrent-ruby (1.3.4)
33
- connection_pool (2.4.1)
32
+ concurrent-ruby (1.3.5)
33
+ connection_pool (2.5.0)
34
34
  diff-lcs (1.5.1)
35
35
  drb (2.2.1)
36
- i18n (1.14.6)
36
+ i18n (1.14.7)
37
37
  concurrent-ruby (~> 1.0)
38
- json (2.9.0)
39
- language_server-protocol (3.17.0.3)
40
- logger (1.6.2)
38
+ json (2.9.1)
39
+ language_server-protocol (3.17.0.4)
40
+ logger (1.6.5)
41
41
  memo_wise (1.10.0)
42
42
  method_source (1.1.0)
43
43
  minitest (5.25.4)
44
44
  parallel (1.26.3)
45
- parser (3.3.6.0)
45
+ parser (3.3.7.0)
46
46
  ast (~> 2.4.1)
47
47
  racc
48
- prism (1.2.0)
48
+ prism (1.3.0)
49
49
  pry (0.14.2)
50
50
  coderay (~> 1.1)
51
51
  method_source (~> 1.0)
@@ -55,7 +55,7 @@ GEM
55
55
  racc (1.8.1)
56
56
  rainbow (3.1.1)
57
57
  rake (13.2.1)
58
- regexp_parser (2.9.3)
58
+ regexp_parser (2.10.0)
59
59
  rspec (3.13.0)
60
60
  rspec-core (~> 3.13.0)
61
61
  rspec-expectations (~> 3.13.0)
@@ -69,32 +69,34 @@ GEM
69
69
  diff-lcs (>= 1.2.0, < 2.0)
70
70
  rspec-support (~> 3.13.0)
71
71
  rspec-support (3.13.1)
72
- rubocop (1.66.1)
72
+ rubocop (1.71.0)
73
73
  json (~> 2.3)
74
74
  language_server-protocol (>= 3.17.0)
75
75
  parallel (~> 1.10)
76
76
  parser (>= 3.3.0.2)
77
77
  rainbow (>= 2.2.2, < 4.0)
78
- regexp_parser (>= 2.4, < 3.0)
79
- rubocop-ast (>= 1.32.2, < 2.0)
78
+ regexp_parser (>= 2.9.3, < 3.0)
79
+ rubocop-ast (>= 1.36.2, < 2.0)
80
80
  ruby-progressbar (~> 1.7)
81
- unicode-display_width (>= 2.4.0, < 3.0)
82
- rubocop-ast (1.36.2)
81
+ unicode-display_width (>= 2.4.0, < 4.0)
82
+ rubocop-ast (1.38.0)
83
83
  parser (>= 3.3.1.0)
84
- rubocop-performance (1.23.0)
84
+ rubocop-performance (1.23.1)
85
85
  rubocop (>= 1.48.1, < 2.0)
86
86
  rubocop-ast (>= 1.31.1, < 2.0)
87
- rubocop-rspec (3.2.0)
87
+ rubocop-rspec (3.4.0)
88
88
  rubocop (~> 1.61)
89
89
  ruby-progressbar (1.13.0)
90
- runger_style (2.17.0)
90
+ runger_style (4.2.2)
91
91
  prism (>= 0.24.0)
92
- rubocop (>= 1.38.0, < 2)
93
- securerandom (0.4.0)
92
+ rubocop (>= 1.68.0)
93
+ securerandom (0.4.1)
94
94
  slop (4.10.1)
95
95
  tzinfo (2.0.6)
96
96
  concurrent-ruby (~> 1.0)
97
- unicode-display_width (2.6.0)
97
+ unicode-display_width (3.1.4)
98
+ unicode-emoji (~> 4.0, >= 4.0.4)
99
+ unicode-emoji (4.0.4)
98
100
  uri (1.0.2)
99
101
 
100
102
  PLATFORMS
@@ -112,8 +114,55 @@ DEPENDENCIES
112
114
  runger_release_assistant!
113
115
  runger_style
114
116
 
117
+ CHECKSUMS
118
+ activesupport (8.0.1) sha256=fd5bc74641c24ac3541055c2879789198ff42adee3e39c2933289ba008912e37
119
+ ast (2.4.2) sha256=1e280232e6a33754cde542bc5ef85520b74db2aac73ec14acef453784447cc12
120
+ base64 (0.2.0) sha256=0f25e9b21a02a0cc0cea8ef92b2041035d39350946e8789c562b2d1a3da01507
121
+ benchmark (0.4.0) sha256=0f12f8c495545e3710c3e4f0480f63f06b4c842cc94cec7f33a956f5180e874a
122
+ bigdecimal (3.1.9) sha256=2ffc742031521ad69c2dfc815a98e426a230a3d22aeac1995826a75dabfad8cc
123
+ byebug (11.1.3) sha256=2485944d2bb21283c593d562f9ae1019bf80002143cc3a255aaffd4e9cf4a35b
124
+ coderay (1.1.3) sha256=dc530018a4684512f8f38143cd2a096c9f02a1fc2459edcfe534787a7fc77d4b
125
+ concurrent-ruby (1.3.5) sha256=813b3e37aca6df2a21a3b9f1d497f8cbab24a2b94cab325bffe65ee0f6cbebc6
126
+ connection_pool (2.5.0) sha256=233b92f8d38e038c1349ccea65dd3772727d669d6d2e71f9897c8bf5cd53ebfc
127
+ diff-lcs (1.5.1) sha256=273223dfb40685548436d32b4733aa67351769c7dea621da7d9dd4813e63ddfe
128
+ drb (2.2.1) sha256=e9d472bf785f558b96b25358bae115646da0dbfd45107ad858b0bc0d935cb340
129
+ i18n (1.14.7) sha256=ceba573f8138ff2c0915427f1fc5bdf4aa3ab8ae88c8ce255eb3ecf0a11a5d0f
130
+ json (2.9.1) sha256=d2bdef4644052fad91c1785d48263756fe32fcac08b96a20bb15840e96550d11
131
+ language_server-protocol (3.17.0.4) sha256=c484626478664fd13482d8180947c50a8590484b1258b99b7aedb3b69df89669
132
+ logger (1.6.5) sha256=c3cfe56d01656490ddd103d38b8993d73d86296adebc5f58cefc9ec03741e56b
133
+ memo_wise (1.10.0) sha256=ae40ff8e7799697ff5d59d739b8766f76be22eba69c7c8468edb42ab83c94c3f
134
+ method_source (1.1.0) sha256=181301c9c45b731b4769bc81e8860e72f9161ad7d66dd99103c9ab84f560f5c5
135
+ minitest (5.25.4) sha256=9cf2cae25ac4dfc90c988ebc3b917f53c054978b673273da1bd20bcb0778f947
136
+ parallel (1.26.3) sha256=d86babb7a2b814be9f4b81587bf0b6ce2da7d45969fab24d8ae4bf2bb4d4c7ef
137
+ parser (3.3.7.0) sha256=7449011771e3e7881297859b849de26a6f4fccd515bece9520a87e7d2116119b
138
+ prism (1.3.0) sha256=b11620829831b1cb7e6c9b46c81ff8a6e36ccb3f888f164485eb7351f386273a
139
+ pry (0.14.2) sha256=c4fe54efedaca1d351280b45b8849af363184696fcac1c72e0415f9bdac4334d
140
+ pry-byebug (3.10.1) sha256=c8f975c32255bfdb29e151f5532130be64ff3d0042dc858d0907e849125581f8
141
+ racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f
142
+ rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a
143
+ rake (13.2.1) sha256=46cb38dae65d7d74b6020a4ac9d48afed8eb8149c040eccf0523bec91907059d
144
+ regexp_parser (2.10.0) sha256=cb6f0ddde88772cd64bff1dbbf68df66d376043fe2e66a9ef77fcb1b0c548c61
145
+ rspec (3.13.0) sha256=d490914ac1d5a5a64a0e1400c1d54ddd2a501324d703b8cfe83f458337bab993
146
+ rspec-core (3.13.2) sha256=94fbda6e4738e478f1c7532b7cc241272fcdc8b9eac03a97338b1122e4573300
147
+ rspec-expectations (3.13.3) sha256=0e6b5af59b900147698ea0ff80456c4f2e69cac4394fbd392fbd1ca561f66c58
148
+ rspec-mocks (3.13.2) sha256=2327335def0e1665325a9b617e3af9ae20272741d80ac550336309a7c59abdef
149
+ rspec-support (3.13.1) sha256=48877d4f15b772b7538f3693c22225f2eda490ba65a0515c4e7cf6f2f17de70f
150
+ rubocop (1.71.0) sha256=e19679efd447346ac476122313d3788ae23c38214790bcf660e984c747608bf0
151
+ rubocop-ast (1.38.0) sha256=4fdf6792fe443a9a18acb12dbc8225d0d64cd1654e41fedb30e79c18edbb26ae
152
+ rubocop-performance (1.23.1) sha256=f22f86a795f5e6a6180aac2c6fc172534b173a068d6ed3396d6460523e051b82
153
+ rubocop-rspec (3.4.0) sha256=8721c13b6a8c9530a7ac481cea9423022f946fcf72428bda8289f8b57e4d4885
154
+ ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
155
+ runger_release_assistant (1.0.0)
156
+ runger_style (4.2.2) sha256=23bb4c2b8875d79113f72179a7e4ad96bd5ecde8d7a54bd18f4e60c2ab65dd64
157
+ securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
158
+ slop (4.10.1) sha256=844322b5ffcf17ed4815fdb173b04a20dd82b4fd93e3744c88c8fafea696d9c7
159
+ tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b
160
+ unicode-display_width (3.1.4) sha256=8caf2af1c0f2f07ec89ef9e18c7d88c2790e217c482bfc78aaa65eadd5415ac1
161
+ unicode-emoji (4.0.4) sha256=2c2c4ef7f353e5809497126285a50b23056cc6e61b64433764a35eff6c36532a
162
+ uri (1.0.2) sha256=b303504ceb7e5905771fa7fa14b649652fa949df18b5880d69cfb12494791e27
163
+
115
164
  RUBY VERSION
116
- ruby 3.3.6p108
165
+ ruby 3.4.1p0
117
166
 
118
167
  BUNDLED WITH
119
- 2.5.23
168
+ 2.6.2
data/README.md CHANGED
@@ -32,8 +32,8 @@ versions via git/GitHub and (optionally) via RubyGems.
32
32
 
33
33
  This gem is somewhat customized and built specifically for my (David Runger's)
34
34
  custom and idiosyncratic workflow. For example, after releasing, this gem will
35
- automatically execute a `safe` command, if one is present on the machine. You
36
- might not want this behavior (if you have a `safe` command that you _don't_ want
35
+ automatically execute a `main` command, if one is present on the machine. You
36
+ might not want this behavior (if you have a `main` command that you _don't_ want
37
37
  to be invoked after a release).
38
38
 
39
39
  Realistically speaking, though, this gem actually probably could be used by
@@ -4,5 +4,6 @@ set -euo pipefail # exit on any error, don't allow undefined variables, pipes do
4
4
 
5
5
  lint gitleaks
6
6
 
7
+ background-and-notify lint newlines
7
8
  background-and-notify lint rubocop
8
9
  background-and-notify lint shellcheck
@@ -2,6 +2,6 @@
2
2
 
3
3
  # rubocop:disable Style/StaticClass
4
4
  class RungerReleaseAssistant
5
- VERSION = '0.13.0'
5
+ VERSION = '1.0.0'
6
6
  end
7
7
  # rubocop:enable Style/StaticClass
@@ -63,14 +63,15 @@ class RungerReleaseAssistant
63
63
  def logger
64
64
  Logger.new($stdout).tap do |logger|
65
65
  logger.formatter =
66
- ->(_severity, _datetime, _progname, msg) {
66
+ ->(_severity, _datetime, _progname, msg) do
67
67
  "[runger_release_assistant] #{msg}\n"
68
- }
68
+ end
69
69
  logger.level = @options[:debug] ? Logger::DEBUG : Logger::INFO
70
70
  end
71
71
  end
72
72
 
73
73
  def run_release
74
+ ensure_on_main_branch
74
75
  print_release_info
75
76
  confirm_release_looks_good
76
77
  verify_repository_cleanliness
@@ -97,7 +98,7 @@ class RungerReleaseAssistant
97
98
  ERROR_LOG
98
99
  restore_and_abort(exit_code: 1)
99
100
  else
100
- run_safe_command
101
+ run_main_command
101
102
  switch_to_initial_branch
102
103
  end
103
104
 
@@ -109,6 +110,12 @@ class RungerReleaseAssistant
109
110
  end
110
111
  end
111
112
 
113
+ def ensure_on_main_branch
114
+ if current_branch != primary_branch
115
+ fail('You must be on the primary branch to release!')
116
+ end
117
+ end
118
+
112
119
  def print_release_info
113
120
  logger.info("You are running the release process with options #{@options.to_h}.")
114
121
  logger.info("Current released version is #{current_released_version.blue}.")
@@ -221,9 +228,9 @@ class RungerReleaseAssistant
221
228
  execute_command('bundle exec rake release', show_system_output: true)
222
229
  end
223
230
 
224
- def run_safe_command
225
- if system('which safe')
226
- execute_command('safe', clear_bundler_context: true)
231
+ def run_main_command
232
+ if system('which main')
233
+ execute_command('main', clear_bundler_context: true)
227
234
  end
228
235
  end
229
236
 
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: runger_release_assistant
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Runger
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2024-12-11 00:00:00.000000000 Z
10
+ date: 2025-01-30 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activesupport
@@ -66,7 +65,6 @@ dependencies:
66
65
  - - "~>"
67
66
  - !ruby/object:Gem::Version
68
67
  version: '4.8'
69
- description:
70
68
  email:
71
69
  - davidjrunger@gmail.com
72
70
  executables:
@@ -111,7 +109,6 @@ metadata:
111
109
  homepage_uri: https://github.com/davidrunger/runger_release_assistant
112
110
  source_code_uri: https://github.com/davidrunger/runger_release_assistant
113
111
  changelog_uri: https://github.com/davidrunger/runger_release_assistant/blob/main/CHANGELOG.md
114
- post_install_message:
115
112
  rdoc_options: []
116
113
  require_paths:
117
114
  - lib
@@ -119,15 +116,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
119
116
  requirements:
120
117
  - - ">="
121
118
  - !ruby/object:Gem::Version
122
- version: 3.3.0
119
+ version: 3.4.0
123
120
  required_rubygems_version: !ruby/object:Gem::Requirement
124
121
  requirements:
125
122
  - - ">="
126
123
  - !ruby/object:Gem::Version
127
124
  version: '0'
128
125
  requirements: []
129
- rubygems_version: 3.5.23
130
- signing_key:
126
+ rubygems_version: 3.6.2
131
127
  specification_version: 4
132
128
  summary: A gem / CLI tool to automate the release process of other gems
133
129
  test_files: []