Add Ruby 3.3 support.#419
Open
jackdpeterson wants to merge 1 commit intoaws:mainfrom
Open
Conversation
Author
|
Actually, I'm going to squash and re-push this because there are some other dependency issues -- versions are too loose leading to differing behavior depending on which ruby version is being used. |
47c5bd2 to
181efa3
Compare
- Add Ruby 3.3 support, drop Ruby < 2.7 (align with gemspec >= 2.7.0, < 3.4) - Update ruby_versions in bin/install and bin/codedeploy-agent to [3.3, 3.2, 3.1, 3.0, 2.7] - Update GitHub Actions workflow to test matrix across all supported Ruby versions - Fix minitar: update require path from 'archive/tar/minitar' to 'minitar', remove obsolete 'include Archive::Tar' - Fix rubyzip: replace removed Zip::File::CREATE with create: true, handle extract API differences between rubyzip 2.x and 3.x - Fix PKCS7 test assertions to handle OpenSSL error message variations across versions (nested asn1 error vs no start line) - Pin all dependencies to exact tested versions for deterministic builds - Add Makefile for local Docker-based testing across all Ruby versions Validated 449 tests passing with 0 failures across Ruby 2.7, 3.0, 3.1, 3.2, and 3.3.
181efa3 to
6da056b
Compare
Author
|
Validated against ruby 2.7, 3.0, 3.1, 3.2, 3.3 w/ Added Makefile command to validate against current tests. Squashed, ready for review. I'd also recommend retiring Ruby 2.7 from the compatibility matrix to align with what's shipping in current and previous LTS releases. 2.7 hasn't been shipped by default in most places and no longer receives security updates. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #418
Context: Ubuntu 26.04 ships with Ruby 3.3 as the default Ruby-Full installable and no longer Ruby 3.2.
Follow-up task: The .deb packaging appears to be performed outside of this repository. Requires AWS investigation to cross the finish line.
I confirmed that even without these changes and manually patching the .deb file I get successful code-deployment on Ubuntu 26.04. This just formalizes support and should allow re-builds to work as expected.
I took an opinionated approach here to dependency management (flexible constraints add unpredictability on a library that isn't really being pulled down by anything else but rather packaged to .deb or .rpm's fully baked).
This also fixes some deprecations in zip and variation on PKCS7 that kiro-cli identified when testing.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.