Issue Description
Faraday 2.0 was released with major changes: https://github.com/lostisland/faraday/blob/main/UPGRADING.md#thats-great-what-should-i-change-in-my-code-immediately-after-upgrading
I'd suggest switching to faraday-net_http and setting Faraday.default_adapter = :net_http since this will remove a number of dependencies. Alternatively, it seems you could lock to ~> 1.0, or consider using net_http directly instead of relying on Faraday to sidestep this issue entirely.
I'm not sure what's best... locking Faraday to ~> 1.0 might be easiest in the short term, but may cause issues later as users may want to upgrade to Faraday ~> 2.0 for other reasons. Perhaps sentry-ruby could detect which version is being used somehow, and switch based on that, but I don't believe you can customize the gem dependencies, so you may need to pick a "winner" between the two in the long term
I ran into a similar problem with gem dependencies here: geokit/geokit#250
So perhaps dropping the dependency might be best, but that may result in users needing code changes in order to use Sentry, for example if they're setting transport_configuration.http_adapter etc, and of course even that change could significant work on your end.
For now, I believe I can just manually lock Faraday to ~> 1.0 in my Gemfile, even though I'm only using Faraday because of Sentry.
Anyway, this is a tricky problem -- I'm happy to help if I'm able. Thank you for your attention!
Issue Description
Faraday 2.0 was released with major changes: https://github.com/lostisland/faraday/blob/main/UPGRADING.md#thats-great-what-should-i-change-in-my-code-immediately-after-upgrading
I'd suggest switching to
faraday-net_httpand settingFaraday.default_adapter = :net_httpsince this will remove a number of dependencies. Alternatively, it seems you could lock to ~> 1.0, or consider using net_http directly instead of relying on Faraday to sidestep this issue entirely.I'm not sure what's best... locking Faraday to ~> 1.0 might be easiest in the short term, but may cause issues later as users may want to upgrade to Faraday ~> 2.0 for other reasons. Perhaps
sentry-rubycould detect which version is being used somehow, and switch based on that, but I don't believe you can customize the gem dependencies, so you may need to pick a "winner" between the two in the long termI ran into a similar problem with gem dependencies here: geokit/geokit#250
So perhaps dropping the dependency might be best, but that may result in users needing code changes in order to use Sentry, for example if they're setting
transport_configuration.http_adapteretc, and of course even that change could significant work on your end.For now, I believe I can just manually lock Faraday to ~> 1.0 in my Gemfile, even though I'm only using Faraday because of Sentry.
Anyway, this is a tricky problem -- I'm happy to help if I'm able. Thank you for your attention!