Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove dependencies on bigdecimal and base64 #2987

Merged
merged 2 commits into from
Feb 19, 2024
Merged

Conversation

alextwoods
Copy link
Contributor

Forcing dependencies on bigdecimal may break use cases where dev tools are not available which were previously working.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

  1. To make sure we include your contribution in the release notes, please make sure to add description entry for your changes in the "unreleased changes" section of the CHANGELOG.md file (at corresponding gem). For the description entry, please make sure it lives in one line and starts with Feature or Issue in the correct format.

  2. For generated code changes, please checkout below instructions first:
    https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md

Thank you for your contribution!

@jterapin
Copy link
Contributor

Should we add a changelog notifying this? Since we have one when we initially added this? https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sdk-core/CHANGELOG.md

@alextwoods alextwoods merged commit bd40e1e into version-3 Feb 19, 2024
26 checks passed
@mullermp mullermp deleted the revert_bundled_deps branch February 19, 2024 21:36
@VitaliySerov
Copy link

VitaliySerov commented Feb 22, 2024

Is this a good idea?

This this again cause warning on ruby-3.3 - even CI shows it:

warning: base64 was loaded from the standard library, but will no longer be part of the default gems since Ruby 3.4.0. Add base64 to your Gemfile or gemspec.

I think this dependency is required for future ruby-3.4

Right now if we run sdk code on ruby-head (which is not released, yeah)

it will cause

Failure/Error: require 'aws-sdk-s3'

LoadError:
  cannot load such file -- base64

Should this problem be solved little bit more sophisticated?

This change basically conflicts with previous one?

#2984

@mullermp
Copy link
Contributor

We reverted it because it (and bigdecimal) caused issues. We will strategize a plan for Ruby 3.4, but I think the plan unfortunately has to be "bring your own dependency" since we have no mechanism in the gemspec to add dependencies dependent on Ruby versions, unless Ruby 3.4 is the minimum we support.

@nathansamson
Copy link

I am a bitconfused what the error/problem was

"Forcing dependencies on bigdecimal may break use cases where dev tools are not available which were previously working."

I assume people install the gem with either "gem install" or indirectly with a "bundle install" in both cases the dependencies would be fetched and installed from the internet?

@mullermp
Copy link
Contributor

BigDecimal requires native extension tools on the machine (it is a native extension gem). The gem is fetched but fails to install.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants