Skip to content

Commit c76f642

Browse files
authored
chore: re-vendor psutil and wrapt (backport #7332 to 2.0) (#7436)
Reverts #6651 Fixes #7316 Closes #7202 Co-authored-by: Zachary Groves <[email protected]> Co-authored-by: Brett Langdon <[email protected]> (cherry picked from commit 9f79fd5) ## Checklist - [x] Change(s) are motivated and described in the PR description. - [x] Testing strategy is described if automated tests are not included in the PR. - [x] Risk is outlined (performance impact, potential for breakage, maintainability, etc). - [x] Change is maintainable (easy to change, telemetry, documentation). - [x] [Library release note guidelines](https://ddtrace.readthedocs.io/en/stable/releasenotes.html) are followed. If no release note is required, add label `changelog/no-changelog`. - [x] Documentation is included (in-code, generated user docs, [public corp docs](https://github.com/DataDog/documentation/)). - [x] Backport labels are set (if [applicable](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting)) ## Reviewer Checklist - [x] Title is accurate. - [x] No unnecessary changes are introduced. - [x] Description motivates each change. - [x] Avoids breaking [API](https://ddtrace.readthedocs.io/en/stable/versioning.html#interfaces) changes unless absolutely necessary. - [x] Testing strategy adequately addresses listed risk(s). - [x] Change is maintainable (easy to change, telemetry, documentation). - [x] Release note makes sense to a user of the library. - [x] Reviewer has explicitly acknowledged and discussed the performance implications of this PR as reported in the benchmarks PR comment. - [x] Backport labels are set in a manner that is consistent with the [release branch maintenance policy](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting) - [x] If this PR touches code that signs or publishes builds or packages, or handles credentials of any kind, I've requested a review from `@DataDog/security-design-and-guidance`. - [x] This PR doesn't touch any of that.
1 parent 4114a84 commit c76f642

File tree

193 files changed

+35137
-161
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

193 files changed

+35137
-161
lines changed

ddtrace/_monkey.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import threading
44
from typing import TYPE_CHECKING
55

6-
from wrapt.importer import when_imported
6+
from ddtrace.vendor.wrapt.importer import when_imported
77

88
from .internal.compat import PY2
99
from .internal.logger import get_logger

ddtrace/appsec/_handlers.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
import json
33

44
from six import BytesIO
5-
from wrapt import wrap_function_wrapper as _w
6-
from wrapt.importer import when_imported
75
import xmltodict
86

97
from ddtrace import config
@@ -14,6 +12,8 @@
1412
from ddtrace.internal import core
1513
from ddtrace.internal.constants import HTTP_REQUEST_BLOCKED
1614
from ddtrace.internal.logger import get_logger
15+
from ddtrace.vendor.wrapt import wrap_function_wrapper as _w
16+
from ddtrace.vendor.wrapt.importer import when_imported
1717

1818

1919
try:
@@ -22,6 +22,7 @@
2222
# handling python 2.X import error
2323
JSONDecodeError = ValueError # type: ignore
2424

25+
2526
log = get_logger(__name__)
2627
_BODY_METHODS = {"POST", "PUT", "DELETE", "PATCH"}
2728

ddtrace/appsec/_iast/_patch.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,9 @@
33
import sys
44
from typing import TYPE_CHECKING
55

6-
from wrapt import FunctionWrapper
7-
from wrapt import resolve_path
8-
96
from ddtrace.internal.logger import get_logger
7+
from ddtrace.vendor.wrapt import FunctionWrapper
8+
from ddtrace.vendor.wrapt import resolve_path
109

1110
from ._utils import _is_iast_enabled
1211

ddtrace/appsec/_iast/_patch_modules.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from wrapt.importer import when_imported
1+
from ddtrace.vendor.wrapt.importer import when_imported
22

33

44
IAST_PATCH = {

ddtrace/contrib/aiobotocore/patch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import os
22

33
import aiobotocore.client
4-
import wrapt
54

65
from ddtrace import config
76
from ddtrace.internal.constants import COMPONENT
87
from ddtrace.internal.utils.version import parse_version
8+
from ddtrace.vendor import wrapt
99

1010
from ...constants import ANALYTICS_SAMPLE_RATE_KEY
1111
from ...constants import SPAN_KIND

ddtrace/contrib/aiohttp/patch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import os
22

33
import aiohttp
4-
import wrapt
54
from yarl import URL
65

76
from ddtrace import config
@@ -11,6 +10,7 @@
1110
from ddtrace.internal.schema.span_attribute_schema import SpanDirection
1211
from ddtrace.internal.utils import get_argument_value
1312
from ddtrace.internal.utils.formats import asbool
13+
from ddtrace.vendor import wrapt
1414

1515
from ...ext import SpanKind
1616
from ...ext import SpanTypes

ddtrace/contrib/aiomysql/patch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import aiomysql
2-
import wrapt
32

43
from ddtrace import Pin
54
from ddtrace import config
@@ -10,6 +9,7 @@
109
from ddtrace.internal.constants import COMPONENT
1110
from ddtrace.internal.schema import schematize_database_operation
1211
from ddtrace.internal.utils.wrappers import unwrap
12+
from ddtrace.vendor import wrapt
1313

1414
from ...ext import SpanKind
1515
from ...ext import SpanTypes

ddtrace/contrib/aiopg/connection.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
from aiopg import __version__
44
from aiopg.utils import _ContextManager
5-
import wrapt
65

76
from ddtrace import config
87
from ddtrace.constants import ANALYTICS_SAMPLE_RATE_KEY
@@ -17,6 +16,7 @@
1716
from ddtrace.internal.schema import schematize_service_name
1817
from ddtrace.internal.utils.version import parse_version
1918
from ddtrace.pin import Pin
19+
from ddtrace.vendor import wrapt
2020

2121

2222
AIOPG_VERSION = parse_version(__version__)

ddtrace/contrib/aiopg/patch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33

44
import aiopg.connection
55
import psycopg2.extensions
6-
import wrapt
76

87
from ddtrace.contrib.aiopg.connection import AIOTracedConnection
98
from ddtrace.contrib.psycopg.connection import patch_conn as psycopg_patch_conn
109
from ddtrace.contrib.psycopg.extensions import _patch_extensions
1110
from ddtrace.contrib.psycopg.extensions import _unpatch_extensions
1211
from ddtrace.internal.utils.wrappers import unwrap as _u
12+
from ddtrace.vendor import wrapt
1313

1414

1515
def get_version():

ddtrace/contrib/aioredis/patch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
import sys
44

55
import aioredis
6-
from wrapt import wrap_function_wrapper as _w
76

87
from ddtrace import config
98
from ddtrace.internal.constants import COMPONENT
109
from ddtrace.internal.utils.wrappers import unwrap as _u
1110
from ddtrace.pin import Pin
11+
from ddtrace.vendor.wrapt import wrap_function_wrapper as _w
1212

1313
from .. import trace_utils
1414
from ...constants import ANALYTICS_SAMPLE_RATE_KEY

0 commit comments

Comments
 (0)