OXIESEC PANEL
- Current Dir:
/
/
opt
/
alt
/
python37
/
lib
/
python3.7
/
site-packages
/
sentry_sdk
Server IP: 2a02:4780:11:1084:0:327f:3464:10
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
09/05/2025 09:36:16 AM
rwxr-xr-x
📄
__init__.py
854 bytes
07/27/2021 02:04:04 PM
rw-r--r--
📁
__pycache__
-
02/16/2024 09:01:45 PM
rwxr-xr-x
📄
_compat.py
2.3 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
_functools.py
2.22 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
_queue.py
8.21 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
_types.py
1.24 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
api.py
4.66 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
attachments.py
1.75 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
client.py
13.64 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
consts.py
3.6 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
debug.py
1.11 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
envelope.py
8.35 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
hub.py
21.62 KB
07/27/2021 02:04:04 PM
rw-r--r--
📁
integrations
-
02/16/2024 09:01:45 PM
rwxr-xr-x
📄
py.typed
0 bytes
07/27/2021 02:04:04 PM
rw-r--r--
📄
scope.py
15.62 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
serializer.py
15.92 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
session.py
5.41 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
sessions.py
5.69 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
tracing.py
25.22 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
transport.py
12.13 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
utils.py
26.79 KB
07/27/2021 02:04:04 PM
rw-r--r--
📄
worker.py
4.04 KB
07/27/2021 02:04:04 PM
rw-r--r--
Editing: _functools.py
Close
""" A backport of Python 3 functools to Python 2/3. The only important change we rely upon is that `update_wrapper` handles AttributeError gracefully. """ from functools import partial from sentry_sdk._types import MYPY if MYPY: from typing import Any from typing import Callable WRAPPER_ASSIGNMENTS = ( "__module__", "__name__", "__qualname__", "__doc__", "__annotations__", ) WRAPPER_UPDATES = ("__dict__",) def update_wrapper( wrapper, wrapped, assigned=WRAPPER_ASSIGNMENTS, updated=WRAPPER_UPDATES ): # type: (Any, Any, Any, Any) -> Any """Update a wrapper function to look like the wrapped function wrapper is the function to be updated wrapped is the original function assigned is a tuple naming the attributes assigned directly from the wrapped function to the wrapper function (defaults to functools.WRAPPER_ASSIGNMENTS) updated is a tuple naming the attributes of the wrapper that are updated with the corresponding attribute from the wrapped function (defaults to functools.WRAPPER_UPDATES) """ for attr in assigned: try: value = getattr(wrapped, attr) except AttributeError: pass else: setattr(wrapper, attr, value) for attr in updated: getattr(wrapper, attr).update(getattr(wrapped, attr, {})) # Issue #17482: set __wrapped__ last so we don't inadvertently copy it # from the wrapped function when updating __dict__ wrapper.__wrapped__ = wrapped # Return the wrapper so this can be used as a decorator via partial() return wrapper def wraps(wrapped, assigned=WRAPPER_ASSIGNMENTS, updated=WRAPPER_UPDATES): # type: (Callable[..., Any], Any, Any) -> Callable[[Callable[..., Any]], Callable[..., Any]] """Decorator factory to apply update_wrapper() to a wrapper function Returns a decorator that invokes update_wrapper() with the decorated function as the wrapper argument and the arguments to wraps() as the remaining arguments. Default arguments are as for update_wrapper(). This is a convenience function to simplify applying partial() to update_wrapper(). """ return partial(update_wrapper, wrapped=wrapped, assigned=assigned, updated=updated)