getsentry / sentry

Developer-first error tracking and performance monitoring
https://sentry.io
Other
39.1k stars 4.2k forks source link

Sentry depends on old version of botocore, causing some sentry-plugins to break #5959

Closed boboli closed 7 years ago

boboli commented 7 years ago

When upgrading to sentry 8.19.0 using pip, it installs botocore 1.5.70 as a dependency as defined by the wheel:

Successfully installed botocore-1.5.70

However, when I try to run sentry upgrade, a bunch of sentry-plugins show these errors:

ContextualVersionConflict: (botocore 1.5.70 (/home/robinhood/sentry_venv/lib/python2.7/site-packages), Requirement.parse('botocore<1.7.0,>=1.6.0'), set(['boto3']))

The exception seems to suggest that the plugins want a conflicting version of botocore. This seems to be causing the crashing plugins to no longer be active under all integrations (the one we use is Slack):

image

We are using sentry-plugin==8.19.0. If this issue should be filed to the sentry-plugins repo, lemme know and I'll do that.

Install details:

boboli commented 7 years ago

Installing the latest boto3 package (after installing sentry, since reinstalling sentry will revert botocore) and restarting everything seems to have fixed it. boto3 pulls in a newer botocore (1.6.5) and the plugins show up correctly.

mattrobenolt commented 7 years ago

https://github.com/getsentry/sentry/commit/38d9f52c1667760deb1450254955270a4163cba0 :)

So looks like this hasn't been released yet, but boto3's minor release bumped them up to a non-minor release of botocore. So I'd just do pip install boto3==1.4.5 to explicitly choose the highest version we can use. And moving forward, this will be fine.