create_github_release 1.3.3 → 1.3.4
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 +10 -0
- data/README.md +19 -24
- data/exe/create-github-release +29 -6
- data/lib/create_github_release/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: b1b06e7f2c3125675b3b74014f25ed8a3b959d72b4c8f5c0f3740ea233362922
|
4
|
+
data.tar.gz: f49f1146fa4e77186582c17cd792a69a3ec6336b438d1a4bbda24d3e6c2bae0c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 41c3df4e14cf923a32a6cb8848c219a81ce01a0f4ea766457517028e700e7bdeaa57bbca229313b964c810cded33fe2a036da6c1cdf0bf2821a8dc27e831047f
|
7
|
+
data.tar.gz: f7c60f95cfda504347bb13da17938b39a2844df6092e722880bb5b62fe6ec6c50cfe19d500eb5bb5162fbfd25aece3fe13eb27876cb3ade24c6301f97c235ba6
|
data/CHANGELOG.md
CHANGED
@@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file.
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
7
7
|
|
8
|
+
## v1.3.4 (2024-01-09)
|
9
|
+
|
10
|
+
[Full Changelog](https://github.com/main-branch/create_github_release/compare/v1.3.3..v1.3.4)
|
11
|
+
|
12
|
+
Changes since v1.3.3:
|
13
|
+
|
14
|
+
* 23a5db6 Document the revert-github-release script in the project README (#59)
|
15
|
+
* 0ed4549 Format the output so next steps are easier to read (#58)
|
16
|
+
* 5442745 Wait for some time between creating the release PR and searching for it (#56)
|
17
|
+
|
8
18
|
## v1.3.3 (2024-01-08)
|
9
19
|
|
10
20
|
[Full Changelog](https://github.com/main-branch/create_github_release/compare/v1.3.2..v1.3.3)
|
data/README.md
CHANGED
@@ -32,8 +32,8 @@ Tested on Ruby 3.0+
|
|
32
32
|
* [Changing the pre-release type](#changing-the-pre-release-type)
|
33
33
|
* [Creating the release after pre-releases](#creating-the-release-after-pre-releases)
|
34
34
|
* [After Running create-github-release](#after-running-create-github-release)
|
35
|
+
* [Reverting `create-github-release`](#reverting-create-github-release)
|
35
36
|
* [FAQ](#faq)
|
36
|
-
* [What if I want to reverse the changes made by this script?](#what-if-i-want-to-reverse-the-changes-made-by-this-script)
|
37
37
|
* [How is the changelog updated?](#how-is-the-changelog-updated)
|
38
38
|
* [Development](#development)
|
39
39
|
* [Contributing](#contributing)
|
@@ -320,33 +320,28 @@ Finally, publish your gem to rubygems.org with the command:
|
|
320
320
|
rake release:rubygem_push
|
321
321
|
```
|
322
322
|
|
323
|
-
|
323
|
+
### Reverting `create-github-release`
|
324
324
|
|
325
|
-
|
325
|
+
Should you decide that `create-github-release` was run in error, the `revert-github-release`
|
326
|
+
script is provided by this gem to revert the changes made.
|
326
327
|
|
327
|
-
|
328
|
+
This script must be run before the release PR is merged to the default branch.
|
328
329
|
|
329
|
-
|
330
|
+
This script must be run in the root directory of the work tree with the release
|
331
|
+
branch checked out. This is the state that the `create-github-release` script leaves
|
332
|
+
you in.
|
330
333
|
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
# Deleting the remote branch will automatically close the release PR
|
343
|
-
git push "${REMOTE}" --delete "${RELEASE_BRANCH}"
|
344
|
-
git push "${REMOTE}" --delete "${RELEASE_TAG}"
|
345
|
-
|
346
|
-
# Delete the local branch and tag
|
347
|
-
git branch -D "${RELEASE_BRANCH}"
|
348
|
-
git tag -d "${RELEASE_TAG}"
|
349
|
-
```
|
334
|
+
This script does the following:
|
335
|
+
|
336
|
+
* Adds a comment to the release PR noting that it will be reverted
|
337
|
+
* Switches the work tree to the default branch so the release branch can be deleted
|
338
|
+
* Deletes the local release branch and release tag
|
339
|
+
* Deletes the remote release branch and release tag
|
340
|
+
* Deletes the release object created in GitHub for this release
|
341
|
+
|
342
|
+
Deleting the release branch on the remote will automatically close the release PR.
|
343
|
+
|
344
|
+
## FAQ
|
350
345
|
|
351
346
|
### How is the changelog updated?
|
352
347
|
|
data/exe/create-github-release
CHANGED
@@ -3,6 +3,28 @@
|
|
3
3
|
|
4
4
|
require 'create_github_release'
|
5
5
|
|
6
|
+
# Call method up to max_attempts times until it returns a non-nil value
|
7
|
+
#
|
8
|
+
# @param method [Proc] the method to call
|
9
|
+
# @param max_attempts [Integer] the maximum number of attempts to make
|
10
|
+
# @param sleep_time [Float] the number of seconds to sleep between attempts
|
11
|
+
#
|
12
|
+
# @return [Object] the result of the method call or nil
|
13
|
+
#
|
14
|
+
# @api public
|
15
|
+
#
|
16
|
+
def wait_for_non_nil(method, max_attempts: 10, sleep_time: 0.5)
|
17
|
+
result = nil
|
18
|
+
|
19
|
+
max_attempts.times do |n|
|
20
|
+
sleep sleep_time unless n.zero?
|
21
|
+
|
22
|
+
break if (result = method.call)
|
23
|
+
end
|
24
|
+
|
25
|
+
result
|
26
|
+
end
|
27
|
+
|
6
28
|
options = CreateGithubRelease::CommandLine::Parser.new.parse(*ARGV)
|
7
29
|
pp options if options.verbose
|
8
30
|
|
@@ -13,28 +35,29 @@ puts unless options.quiet
|
|
13
35
|
CreateGithubRelease::ReleaseTasks.new(project).run
|
14
36
|
|
15
37
|
puts <<~MESSAGE unless project.quiet
|
38
|
+
|
16
39
|
SUCCESS: created release '#{project.next_release_tag}'
|
17
40
|
|
18
41
|
Next steps:
|
19
42
|
|
20
43
|
* Review the release notes:
|
21
44
|
|
22
|
-
|
45
|
+
#{project.release_url}
|
23
46
|
|
24
47
|
* Get someone to review and approve the release pull request:
|
25
48
|
|
26
|
-
|
49
|
+
#{wait_for_non_nil(-> { project.release_pr_url }, max_attempts: 10, sleep_time: 0.5)}
|
27
50
|
|
28
51
|
* Merge the pull request manually from the command line with the following
|
29
52
|
commands:
|
30
53
|
|
31
|
-
|
32
|
-
|
33
|
-
|
54
|
+
git checkout #{project.default_branch}
|
55
|
+
git merge --ff-only #{project.release_branch}
|
56
|
+
git push
|
34
57
|
|
35
58
|
* Wait for the CI build to pass on the default branch and then release the
|
36
59
|
gem with the following command:
|
37
60
|
|
38
|
-
|
61
|
+
rake release:rubygem_push
|
39
62
|
|
40
63
|
MESSAGE
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: create_github_release
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James
|
@@ -250,8 +250,8 @@ metadata:
|
|
250
250
|
allowed_push_host: https://rubygems.org
|
251
251
|
homepage_uri: https://github.com/main-branch/create_github_release
|
252
252
|
source_code_uri: https://github.com/main-branch/create_github_release
|
253
|
-
changelog_uri: https://rubydoc.info/gems/create_github_release/1.3.
|
254
|
-
documentation_uri: https://rubydoc.info/gems/create_github_release/1.3.
|
253
|
+
changelog_uri: https://rubydoc.info/gems/create_github_release/1.3.4/file/CHANGELOG.md
|
254
|
+
documentation_uri: https://rubydoc.info/gems/create_github_release/1.3.4
|
255
255
|
rubygems_mfa_required: 'true'
|
256
256
|
post_install_message:
|
257
257
|
rdoc_options: []
|