-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
Python 3.12 #2979
Python 3.12 #2979
Conversation
MagicStack/uvloop#567 is a precursor |
Today, |
Any news on this PR? |
Folks, I straight up forgot about this. We're getting it into the 5.1 beta with the removal of Python 3.7 too. @dvora-h leaving this with you. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## master #2979 +/- ##
==========================================
- Coverage 92.05% 92.05% -0.01%
==========================================
Files 128 128
Lines 33195 33199 +4
==========================================
+ Hits 30558 30560 +2
- Misses 2637 2639 +2 ☔ View full report in Codecov by Sentry. |
@adamantike thanks, used that.. but have an SSL context issue within the asyncio side. Are you familiar with this at all? |
Part of redis/hiredis-py#167 |
fyi, 3.12 also removes
|
Fix checking of module versions. Remove logger from a test, it's just noise in the output. Fix cluster address remap test.
The plugin does not work like this for forked repos.
Speed up the computation for slots when initializing a cluster. After profiling, this turned out to be very slow, when it does not have to be. Do profiling a bit differently, via pytest.
Unlock urllib version, to be able to use more recent pytest versions.
Add support for Python 3.12. This required a bunch of changes all over the place, listed below in a random order. Fix tests, especially around SSL connections. Stop requiring typing-extensions. Enable tracemalloc for tests, and add the possibility to run the tests with profiling enabled. Fix some issues identified by tracemalloc, like sockets not being closed in case of SSL handshake failures. Remove the CI test reporting plugin, it does not work easily with forked repos anyway. Fix checking of module versions, make the comparison accurate. Not sure how it worked before, but it looks like it did not match exactly the format in the server INFO response, i.e. MMmmPP. Remove loggers from tests, it's just noise in the output. If we don't use asserts, nobody will check the log output from CI. Speed up the computation for slots when initializing a cluster. After profiling, this turned out to be very slow, when it does not have to be. It does not make sense to recompute the same thing over and over in a loop. Run uvloop tests in matrix, i.e. don't bundle two tests executions (without uvloop and with it) in the same job. Easier to spot failures like this, and arguably the jobs can be scheduled in parallel so the overall execution is faster. Unlock urllib version, to be able to use more recent pytest versions. --------- Co-authored-by: Gabriel Erzse <gabriel.erzse@redis.com>
Add support for Python 3.12. This required a bunch of changes all over the place, listed below in a random order. Fix tests, especially around SSL connections. Stop requiring typing-extensions. Enable tracemalloc for tests, and add the possibility to run the tests with profiling enabled. Fix some issues identified by tracemalloc, like sockets not being closed in case of SSL handshake failures. Remove the CI test reporting plugin, it does not work easily with forked repos anyway. Fix checking of module versions, make the comparison accurate. Not sure how it worked before, but it looks like it did not match exactly the format in the server INFO response, i.e. MMmmPP. Remove loggers from tests, it's just noise in the output. If we don't use asserts, nobody will check the log output from CI. Speed up the computation for slots when initializing a cluster. After profiling, this turned out to be very slow, when it does not have to be. It does not make sense to recompute the same thing over and over in a loop. Run uvloop tests in matrix, i.e. don't bundle two tests executions (without uvloop and with it) in the same job. Easier to spot failures like this, and arguably the jobs can be scheduled in parallel so the overall execution is faster. Unlock urllib version, to be able to use more recent pytest versions. --------- Co-authored-by: Gabriel Erzse <gabriel.erzse@redis.com>
Add support for Python 3.12. This required a bunch of changes all over the place, listed below in a random order. Fix tests, especially around SSL connections. Stop requiring typing-extensions. Enable tracemalloc for tests, and add the possibility to run the tests with profiling enabled. Fix some issues identified by tracemalloc, like sockets not being closed in case of SSL handshake failures. Remove the CI test reporting plugin, it does not work easily with forked repos anyway. Fix checking of module versions, make the comparison accurate. Not sure how it worked before, but it looks like it did not match exactly the format in the server INFO response, i.e. MMmmPP. Remove loggers from tests, it's just noise in the output. If we don't use asserts, nobody will check the log output from CI. Speed up the computation for slots when initializing a cluster. After profiling, this turned out to be very slow, when it does not have to be. It does not make sense to recompute the same thing over and over in a loop. Run uvloop tests in matrix, i.e. don't bundle two tests executions (without uvloop and with it) in the same job. Easier to spot failures like this, and arguably the jobs can be scheduled in parallel so the overall execution is faster. Unlock urllib version, to be able to use more recent pytest versions. --------- Co-authored-by: Gabriel Erzse <gabriel.erzse@redis.com>
Add support for Python 3.12. This required a bunch of changes all over the place, listed below in a random order. Fix tests, especially around SSL connections. Stop requiring typing-extensions. Enable tracemalloc for tests, and add the possibility to run the tests with profiling enabled. Fix some issues identified by tracemalloc, like sockets not being closed in case of SSL handshake failures. Remove the CI test reporting plugin, it does not work easily with forked repos anyway. Fix checking of module versions, make the comparison accurate. Not sure how it worked before, but it looks like it did not match exactly the format in the server INFO response, i.e. MMmmPP. Remove loggers from tests, it's just noise in the output. If we don't use asserts, nobody will check the log output from CI. Speed up the computation for slots when initializing a cluster. After profiling, this turned out to be very slow, when it does not have to be. It does not make sense to recompute the same thing over and over in a loop. Run uvloop tests in matrix, i.e. don't bundle two tests executions (without uvloop and with it) in the same job. Easier to spot failures like this, and arguably the jobs can be scheduled in parallel so the overall execution is faster. Unlock urllib version, to be able to use more recent pytest versions. --------- Co-authored-by: Gabriel Erzse <gabriel.erzse@redis.com>
Updating the trove, and CI to support the Python 3.12 release announcement.
closes #3020