@StatelessCode
  @StatelessCode
Stateless Code | Create a RubyGem 100: Release Patch Versions and New Minor Version (0.5.0) of the Gem @StatelessCode | Uploaded March 2023 | Updated October 2024, 1 hour ago.
In this video we release five versions of our NerdDice RubyGem. We add the four patch releases that have current signing certificates and our other minor changes we backported in the previous video.

Unlike the last video where we counted down from the highest to lowest minor version, we will release our gems from lowest to highest, so that our new minor version 0.5.0 is the most recent chronological release.

It's kind of tedious to iterate through each of the versions, which is why we're deprecating everything below 0.5.0. Overall the lift for tagging, building, and publishing each gem version isn't too bad, especially compared to backporting the changes.

After we release each version, we check rubygems.org to ensure that everything looks good.

Then we generate checksums for each of the released versions and commit them to the repo. That way somebody can verify that what is published on RubyGems matches what is committed to GitHub.

We check out a legacy tracking branch for version 0.5.x and modify the CHANGELOG with our Princess is in Another Castle version.

We close our issue and milestones in GitHub. Then we iterate through each of the tags that we pushed and create a release in GitHub with the contents of our CHANGELOG for each version as release notes.

Finally we increment the minor version of the gem on the master branch. Now that the NerdDice gem is officially "un-neglected" we can do a retrospective.

This video covers:
00:00:12 Introduction
00:01:49 Check the git tags for previous versions and explain process
00:02:33 Checkout, tag, build, publish version 0.1.2
00:05:48 Checkout, tag, build, publish version 0.2.1
00:07:04 Checkout, tag, build, publish version 0.3.1
00:08:09 Checkout, tag, build, publish version 0.4.1
00:09:10 Validate patch versions on rubygems.org
00:09:57 Checkout master then tag, build, publish version 0.5.0
00:11:06 Move the built packages into the pkg directory and generate checksums for the releases
00:12:57 Check out version-0-5-x-stable branch and push to remote
00:13:47 Switch back to master and commit the checksum files
00:14:45 Push the checksum commit directly to master and close the GitHub issue, and milestones
00:16:48 Create GitHub releases off of each new tag and validate
00:22:00 Install 0.5.0 from RubyGems using HighSecurity
00:22:20 Checkout the version 0.5 stable branch and modify the CHANGELOG to point to master.
00:24:55 Increment the minor version on master, run bundle install, and commit
00:27:00 Double-check backlog and finish up

#ruby #rubygems #codecast #screencast #NerdDice #DnD #roleplaying #softwaredevelopment #github #opensource #dice #release #patchrelease #tlm

This video is CC0 - No rights reserved. (YouTube doesn't allow this option when publishing.) All code is released under the UNLICENSE. Stateless Code denies the concept of "intellectual property". Copying is not stealing.
Create a RubyGem 100: Release Patch Versions and New Minor Version (0.5.0) of the GemCodecast: Getting Started with Rails 7 19: Basic Auth Part 1Codecast: statelesscode.com WordPress 12: Adjust Brand Logo, Main Content, and TaglineAdd an End Screen to a YouTube VideoInstall Ruby and Rails with Databases on Ubuntu 24.04Upgrade to Ruby 3.2.1 and Rails 7.0.4.3Nerd Christmas 2022 - Ruby 3.2 Released!Codecast: statelesscode.com WordPress 07: Add Brand Colors with TailwindInstall Node.js (versions 18, 20, 22) with NVM on Ubuntu 24.04Codecast: Create a RubyGem 59: Add Ability Score Functionality to Benchmark SuiteMediocre Karaoke - Spinning Wheel by Blood, Sweat & TearsCodecast: Getting Started with Rails 7 17: Refactor Tests

Create a RubyGem 100: Release Patch Versions and New Minor Version (0.5.0) of the Gem @StatelessCode

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER