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

feat: add support for python 3.12 #6626

Merged
merged 60 commits into from
Sep 14, 2023
Merged
Show file tree
Hide file tree
Changes from 59 commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
7f0dc0e
feat: add support for Python 3.12
Yun-Kim Aug 10, 2023
67b4dd4
Fix test suites
Yun-Kim Aug 10, 2023
78392b1
fix: start telemetry writer early
majorgreys Aug 24, 2023
cf8c3c4
skip inject hooks
majorgreys Aug 30, 2023
24fc937
disable dynamic instrumentation
majorgreys Aug 30, 2023
4baddb4
fix telemetry writer after fork
majorgreys Aug 31, 2023
d4117d1
fix forking test
majorgreys Aug 31, 2023
ef59df9
fix telemetry request tests
majorgreys Aug 31, 2023
2e32e81
Remove uwsgi dependency for 3.12 profiler testing
Yun-Kim Aug 31, 2023
55a2d6f
appsec iast is not supported
Yun-Kim Aug 31, 2023
5ef7c26
Update profiler tests to use latest gevent
Yun-Kim Aug 31, 2023
342e4c3
fix profiler tests
P403n1x87 Sep 4, 2023
d96207e
Revert "disable dynamic instrumentation", still enable for 3.12
Yun-Kim Sep 5, 2023
666104f
re-enable bytecode-based tests
P403n1x87 Sep 5, 2023
fe670dd
re-add removed pyXY files as they are still applicable to
Yun-Kim Sep 5, 2023
4df49fc
Fix riot lockfiles, remove debug print line
Yun-Kim Sep 5, 2023
180a331
Remove indentations in release note
Yun-Kim Sep 5, 2023
70d4573
profiling merge fix
Yun-Kim Sep 5, 2023
4c9bacb
chore: remove deprecated items (#6580)
Yun-Kim Sep 5, 2023
699afc2
skip iast test
majorgreys Sep 6, 2023
047304e
cleanup py35 and py36 tests
majorgreys Sep 6, 2023
149937b
skip failing appsec iast test
emmettbutler Sep 7, 2023
5defe53
merge previous pyXY tests into parent test files
Yun-Kim Sep 7, 2023
7bec824
include setuptools in 3.12 deps
emmettbutler Sep 7, 2023
93eaa0a
Revert "include setuptools in 3.12 deps"
emmettbutler Sep 7, 2023
3c3388e
Fix merging pyXY files to parent test files (aiopg, debugger, internal)
Yun-Kim Sep 7, 2023
4d94f9c
add setuptools to pyproject
majorgreys Sep 7, 2023
61c0fd2
skip test that uses dis in 3.12
emmettbutler Sep 7, 2023
25dd83e
Revert setuptools being added as manual dep in debugger venv
Yun-Kim Sep 7, 2023
a6ea4f1
disable for bytecode
majorgreys Sep 7, 2023
becdf3c
Revert "disable for bytecode"
majorgreys Sep 7, 2023
4575165
add basic 3.12 support releasenote
ZStriker19 Sep 7, 2023
51f3bac
chore(telemetry): ensure instrumentation telemetry is compatible with…
mabdinur Sep 8, 2023
b19af02
update cython
majorgreys Sep 8, 2023
ee2aea3
update cython
majorgreys Sep 8, 2023
a9bd03c
Apply suggestions from code review
majorgreys Sep 8, 2023
da6b2f1
Update ddtrace/debugging/__init__.py
majorgreys Sep 13, 2023
a1fef7d
Delete .riot/requirements/releasenotes/notes/3.12_support-422a62d1871…
majorgreys Sep 13, 2023
69192f9
add release note
majorgreys Sep 13, 2023
e4e0fef
reno formatting
emmettbutler Sep 13, 2023
8774f18
spelling
emmettbutler Sep 13, 2023
60ded44
Merge branch '2.x' into yunkim/add-py-312
emmettbutler Sep 13, 2023
21c6bb8
build 3.12 in injection image
emmettbutler Sep 13, 2023
6225e4a
Revert "build 3.12 in injection image"
emmettbutler Sep 13, 2023
4df8d76
add 3.12 to supported pys
emmettbutler Sep 13, 2023
f1cd2f8
Revert "add 3.12 to supported pys"
emmettbutler Sep 13, 2023
e572791
Merge branch '2.x' into yunkim/add-py-312
emmettbutler Sep 13, 2023
91ccf0e
add debugger and asm IAST not supported to rn
ZStriker19 Sep 13, 2023
16ba724
deny access through safeobjectproxy.__getattr__
emmettbutler Sep 13, 2023
db2e9a9
missed spots in pyproject
emmettbutler Sep 13, 2023
3d3d3a7
remove debugger not supported from release notes
ZStriker19 Sep 13, 2023
bc1eec5
fix wrapt dependency
emmettbutler Sep 13, 2023
128061d
pyproject dependency adjustments
emmettbutler Sep 13, 2023
8b4a1a8
unrestrict otel dependency
emmettbutler Sep 13, 2023
3c406d2
???
emmettbutler Sep 13, 2023
b747cb5
???
emmettbutler Sep 13, 2023
3067220
make safeobjectproxy work with latest wrapt on py312
emmettbutler Sep 14, 2023
3874a0a
Update ddtrace/internal/safety.py
emmettbutler Sep 14, 2023
6804908
Update setup.py
emmettbutler Sep 14, 2023
411eb74
deduplicate
emmettbutler Sep 14, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .circleci/config.templ.yml
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ commands:
description: "Install riot"
steps:
# Make sure we install and run riot on Python 3
- run: pip3 install riot==0.17.7
- run: pip3 install riot==0.19.0

setup_hatch:
description: "Install hatch"
Expand Down
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
- run:
name: Generate config
command: |
pip3 install riot==0.17.7
pip3 install riot==0.19.0
riot -v run --pass-env -s circleci-gen-config -- -v
- continuation/continue:
configuration_path: .circleci/config.gen.yml
Expand Down
22 changes: 0 additions & 22 deletions .riot/requirements/103019c.txt

This file was deleted.

18 changes: 18 additions & 0 deletions .riot/requirements/1036992.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --no-annotate .riot/requirements/1036992.in
#
attrs==23.1.0
coverage[toml]==7.2.7
hypothesis==6.45.0
iniconfig==2.0.0
mock==5.1.0
opentracing==2.4.0
packaging==23.1
pluggy==1.2.0
pytest==7.4.0
pytest-cov==4.1.0
pytest-mock==3.11.1
sortedcontainers==2.4.0
30 changes: 30 additions & 0 deletions .riot/requirements/1037a9e.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --no-annotate .riot/requirements/1037a9e.in
#
attrs==23.1.0
blinker==1.6.2
certifi==2023.7.22
charset-normalizer==3.2.0
click==8.1.6
coverage[toml]==7.2.7
flask==2.3.2
hypothesis==6.45.0
idna==3.4
iniconfig==2.0.0
itsdangerous==2.1.2
jinja2==3.1.2
markupsafe==2.1.3
mock==5.1.0
opentracing==2.4.0
packaging==23.1
pluggy==1.2.0
pytest==7.4.0
pytest-cov==4.1.0
pytest-mock==3.11.1
requests==2.31.0
sortedcontainers==2.4.0
urllib3==2.0.4
werkzeug==2.3.6
18 changes: 18 additions & 0 deletions .riot/requirements/1043965.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --no-annotate .riot/requirements/1043965.in
#
attrs==23.1.0
coverage[toml]==7.2.7
hypothesis==6.45.0
iniconfig==2.0.0
mock==5.1.0
opentracing==2.4.0
packaging==23.1
pluggy==1.2.0
pytest==7.4.0
pytest-cov==4.1.0
pytest-mock==3.11.1
sortedcontainers==2.4.0
29 changes: 0 additions & 29 deletions .riot/requirements/1085954.txt

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,22 +1,19 @@
#
# This file is autogenerated by pip-compile with Python 3.11
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --no-annotate --resolver=backtracking .riot/requirements/1da96d1.in
# pip-compile --no-annotate --resolver=backtracking .riot/requirements/8071a9d.in
#
attrs==22.2.0
coverage[toml]==7.2.2
httpretty==0.9.7
hypothesis==6.45.0
iniconfig==2.0.0
mock==5.0.1
msgpack==1.0.5
mysqlclient==2.1.1
opentracing==2.4.0
packaging==23.0
pluggy==1.0.0
pytest==7.2.2
pytest-cov==4.0.0
pytest-mock==3.10.0
six==1.16.0
sortedcontainers==2.4.0
structlog==22.3.0
18 changes: 18 additions & 0 deletions .riot/requirements/10faaef.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --no-annotate .riot/requirements/10faaef.in
#
attrs==23.1.0
coverage[toml]==7.2.7
hypothesis==6.45.0
iniconfig==2.0.0
mock==5.1.0
opentracing==2.4.0
packaging==23.1
pluggy==1.2.0
pytest==7.4.0
pytest-cov==4.1.0
pytest-mock==3.11.1
sortedcontainers==2.4.0
33 changes: 33 additions & 0 deletions .riot/requirements/10fb966.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# pip-compile --no-annotate .riot/requirements/10fb966.in
#
attrs==23.1.0
certifi==2023.7.22
charset-normalizer==3.2.0
click==8.1.7
coverage[toml]==7.3.0
exceptiongroup==1.1.3
flask==2.2.3
gunicorn==21.2.0
httpretty==1.0.5
hypothesis==6.45.0
idna==3.4
iniconfig==2.0.0
itsdangerous==2.1.2
jinja2==3.1.2
markupsafe==2.1.3
mock==5.1.0
opentracing==2.4.0
packaging==23.1
pluggy==1.3.0
pytest==7.4.0
pytest-cov==4.1.0
pytest-mock==3.11.1
requests==2.31.0
sortedcontainers==2.4.0
tomli==2.0.1
urllib3==2.0.4
werkzeug==2.3.7
23 changes: 23 additions & 0 deletions .riot/requirements/1108166.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --no-annotate .riot/requirements/1108166.in
#
attrs==23.1.0
beautifulsoup4==4.12.2
coverage[toml]==7.2.7
hypothesis==6.45.0
iniconfig==2.0.0
mock==5.1.0
opentracing==2.4.0
packaging==23.1
pluggy==1.2.0
pytest==7.4.0
pytest-cov==4.1.0
pytest-mock==3.11.1
sortedcontainers==2.4.0
soupsieve==2.4.1
waitress==2.1.2
webob==1.8.7
webtest==3.0.0
56 changes: 56 additions & 0 deletions .riot/requirements/115000b.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --no-annotate .riot/requirements/115000b.in
#
asgiref==3.7.2
attrs==23.1.0
autobahn==23.6.2
automat==22.10.0
certifi==2023.7.22
cffi==1.15.1
channels==4.0.0
charset-normalizer==3.2.0
constantly==15.1.0
coverage[toml]==7.2.7
cryptography==41.0.3
daphne==4.0.0
django==4.2.4
django-pylibmc==0.6.1
django-redis==4.5.0
hyperlink==21.0.0
hypothesis==6.45.0
idna==3.4
incremental==22.10.0
iniconfig==2.0.0
mock==5.1.0
opentracing==2.4.0
packaging==23.1
pluggy==1.2.0
psycopg==3.1.10
psycopg2-binary==2.9.7
pyasn1==0.5.0
pyasn1-modules==0.3.0
pycparser==2.21
pylibmc==1.6.3
pyopenssl==23.2.0
pytest==7.4.0
pytest-cov==4.1.0
pytest-django==3.10.0
pytest-mock==3.11.1
python-memcached==1.59
redis==2.10.6
requests==2.31.0
service-identity==23.1.0
six==1.16.0
sortedcontainers==2.4.0
sqlparse==0.4.4
twisted[tls]==22.10.0
txaio==23.1.1
typing-extensions==4.7.1
urllib3==2.0.4
zope-interface==6.0

# The following packages are considered to be unsafe in a requirements file:
# setuptools
35 changes: 35 additions & 0 deletions .riot/requirements/115be7b.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
#
# This file is autogenerated by pip-compile with Python 3.9
# by the following command:
#
# pip-compile --no-annotate .riot/requirements/115be7b.in
#
attrs==23.1.0
certifi==2023.7.22
charset-normalizer==3.2.0
click==8.1.7
coverage[toml]==7.3.0
exceptiongroup==1.1.3
flask==2.2.3
gunicorn==21.2.0
httpretty==1.0.5
hypothesis==6.45.0
idna==3.4
importlib-metadata==6.8.0
iniconfig==2.0.0
itsdangerous==2.1.2
jinja2==3.1.2
markupsafe==2.1.3
mock==5.1.0
opentracing==2.4.0
packaging==23.1
pluggy==1.3.0
pytest==7.4.0
pytest-cov==4.1.0
pytest-mock==3.11.1
requests==2.31.0
sortedcontainers==2.4.0
tomli==2.0.1
urllib3==2.0.4
werkzeug==2.3.7
zipp==3.16.2
24 changes: 24 additions & 0 deletions .riot/requirements/11673f8.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --no-annotate .riot/requirements/11673f8.in
#
algoliasearch==2.6.3
attrs==23.1.0
certifi==2023.7.22
charset-normalizer==3.2.0
coverage[toml]==7.2.7
hypothesis==6.45.0
idna==3.4
iniconfig==2.0.0
mock==5.1.0
opentracing==2.4.0
packaging==23.1
pluggy==1.2.0
pytest==7.4.0
pytest-cov==4.1.0
pytest-mock==3.11.1
requests==2.31.0
sortedcontainers==2.4.0
urllib3==2.0.4
Loading