-
Notifications
You must be signed in to change notification settings - Fork 418
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
feat(celery): add support for Python 3.11, 3.12 #6389
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like some of the newly-added tests are failing.
BenchmarksBenchmark execution time: 2023-11-10 18:02:51 Comparing candidate commit a9c34e6 in PR branch Found 1 performance improvements and 2 performance regressions! Performance is the same for 87 metrics, 0 unstable metrics. scenario:flasksimple-appsec-get
scenario:flasksimple-appsec-post
scenario:span-add-metrics
|
c7d5aa4
to
bbb264b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Yun-Kim, is there a feature request for supporting celery for python3.11? Do we need to prioritize this work?
@mabdinur we got an indirect FR in this issue: #4149 (comment) There are some tasks with higher priority that I'm bogged down by, but I think I've written enough in the PR description for anyone else to take this over in the meantime. |
Should I understand that there is a formal feature request procedure that would help with resuming work on this? We're a datadog customer using Celery under Python 3.11, and we're currently encountering the |
Hi @kochb, thanks for reaching out!
Yes, making a feature request via a support ticket would be the fastest way to resume work on this. Feel free to create an issue on this repository as well! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like tests are passing for 3.11 and 3.12. Thanks @mabdinur for taking this over to the finish line! 🙇
Co-authored-by: Yun Kim <[email protected]>
Thank you for your work on this! |
Officially adds support for Python 3.11 and 3.12 for the Celery integration.
Note: looks like an issue with task exceptions that didn't translate well to Python 3.11. We'll have to investigate this first.It looks likecelery>=5.3
uses a newer version ofbilliard>=4.1.0
and also changed howbilliard.ExceptionInfo
gets constructed in celery'shandle_failures
callback. Note we were previously usingbilliard==3.6.4
andcelery==5.2.7
.This is now changing the value of the exceptioneinfo
we check for in our tracedtrace_failure
callback, which makes things weird when we try to ignore some Exceptions in our integration tests for celery.I've verified this hypothesis (that the new release ofcelery>=5.3.0
changed how they constructExceptionInfo
inhandle_failures()
breaks our integration tests) by updating the Python 3.10 test suite to usecelery==5.3.1
, and this also results in the same failures. We'll need to make a bigger effort to make our integration compatible with the latestcelery>=5.3.0
.Checklist
changelog/no-changelog
.Reviewer Checklist