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

BigDecimal 3.1 dependency brings excessive memory usage #907

Closed
broksonic21 opened this issue Dec 11, 2023 · 8 comments
Closed

BigDecimal 3.1 dependency brings excessive memory usage #907

broksonic21 opened this issue Dec 11, 2023 · 8 comments

Comments

@broksonic21
Copy link

oj 3.1.2 is a patch version, but takes on a new dependency on BigDecimal 3.1. That version has significant memory issues -> we are unable to get any builds done with it due to ruby/bigdecimal#222

Two things:

  • my belief is new dependencies shouldn't be introduced by patch versions
  • can the version be relaxed so you aren't dependant on a buggy version of BigDecimal?

Thanks!

@broksonic21
Copy link
Author

Second related ticket: ruby/bigdecimal#271

@ohler55
Copy link
Owner

ohler55 commented Dec 11, 2023

Oj has support BigDecimal since 2012 with version 1.2.10. Oj v3.1.2 was released in 2017. A change was made a few months ago to include the bigdecimal gem as a dependency as future version of ruby starting with v3.4 (I think) will be removed from the core. The current version of bigdecimal is 3.1.4 so Oj is dependent on the current version. Since Oj has been dependent on bigdecimal since 2012 spelling out that dependency explicitly in the gemspec did not seem like it warranted a minor version bump.

I'd be glad to relax the bigdecimal version dependency if that is needed. What version of the bigdecimal gem do you think is not buggy? v3.0 or further back to 2.x?

@broksonic21
Copy link
Author

On our end, we've had no issues with 3.0. 3.1 is where memory leaks and seg faults come in.

@ohler55
Copy link
Owner

ohler55 commented Dec 11, 2023

I can relax the requirement to

  s.add_runtime_dependency 'bigdecimal', '>= 3.0'

Does that work?

@broksonic21
Copy link
Author

on my end, yes - thanks!

@broksonic21
Copy link
Author

that lets everyone lock in on their own as needed with an appropriate 3.x version

@ohler55
Copy link
Owner

ohler55 commented Dec 11, 2023

I'll make a release tonight.

@ohler55
Copy link
Owner

ohler55 commented Dec 11, 2023

released

@ohler55 ohler55 closed this as completed Feb 3, 2024
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

No branches or pull requests

2 participants