functiontrace 0.4.3__tar.gz → 0.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {functiontrace-0.4.3 → functiontrace-0.5.0}/Cargo.toml +8 -1
- {functiontrace-0.4.3 → functiontrace-0.5.0}/MANIFEST.in +0 -1
- {functiontrace-0.4.3/functiontrace.egg-info → functiontrace-0.5.0}/PKG-INFO +1 -1
- {functiontrace-0.4.3 → functiontrace-0.5.0/functiontrace.egg-info}/PKG-INFO +1 -1
- {functiontrace-0.4.3 → functiontrace-0.5.0}/functiontrace.egg-info/SOURCES.txt +0 -4
- functiontrace-0.5.0/functiontrace.egg-info/top_level.txt +1 -0
- {functiontrace-0.4.3 → functiontrace-0.5.0}/functiontrace.py +3 -15
- {functiontrace-0.4.3 → functiontrace-0.5.0}/pyproject.toml +1 -1
- {functiontrace-0.4.3 → functiontrace-0.5.0}/rust/lib.rs +649 -239
- functiontrace-0.5.0/setup.py +5 -0
- functiontrace-0.4.3/_functiontrace.c +0 -160
- functiontrace-0.4.3/functiontrace.egg-info/top_level.txt +0 -2
- functiontrace-0.4.3/mpack/LICENSE +0 -22
- functiontrace-0.4.3/mpack/mpack.c +0 -6440
- functiontrace-0.4.3/mpack/mpack.h +0 -7151
- functiontrace-0.4.3/setup.py +0 -14
- {functiontrace-0.4.3 → functiontrace-0.5.0}/LICENSE.md +0 -0
- {functiontrace-0.4.3 → functiontrace-0.5.0}/README.rst +0 -0
- {functiontrace-0.4.3 → functiontrace-0.5.0}/build.rs +0 -0
- {functiontrace-0.4.3 → functiontrace-0.5.0}/functiontrace.egg-info/dependency_links.txt +0 -0
- {functiontrace-0.4.3 → functiontrace-0.5.0}/functiontrace.egg-info/entry_points.txt +0 -0
- {functiontrace-0.4.3 → functiontrace-0.5.0}/setup.cfg +0 -0
|
@@ -5,14 +5,21 @@ edition = "2021"
|
|
|
5
5
|
|
|
6
6
|
[dependencies]
|
|
7
7
|
color-eyre = { version = "0.6", default-features = false }
|
|
8
|
+
dashmap = "6"
|
|
8
9
|
functiontrace-server = { version = "0.8.4", default-features = false, features = ["serialize"] }
|
|
10
|
+
jiff = { version = "0.2", default-features = false, features = ["std", "serde"] }
|
|
9
11
|
libc = "0.2"
|
|
12
|
+
owo-colors = "4.2"
|
|
10
13
|
pyo3 = { version = "0.25", features = ["eyre"] }
|
|
14
|
+
reqwest = { version = "0.12", default-features = false, features = ["blocking", "json", "rustls-tls"] }
|
|
11
15
|
rmp-serde = "1.3"
|
|
12
16
|
serde = "1"
|
|
17
|
+
toml = "0.9"
|
|
18
|
+
tracing = { version = "0.1", features = ["log"] }
|
|
19
|
+
tracing-subscriber = { version = "0.3", default-features = false, features = ["ansi", "env-filter", "fmt", "std"] }
|
|
13
20
|
|
|
14
21
|
[build-dependencies]
|
|
15
|
-
toml = { version = "0.
|
|
22
|
+
toml = { version = "0.9", default-features = false, features = ["parse", "serde"] }
|
|
16
23
|
pyo3-build-config = { version = "0.25", features = ["resolve-config"] }
|
|
17
24
|
|
|
18
25
|
[lib]
|
|
@@ -2,7 +2,6 @@ Cargo.toml
|
|
|
2
2
|
LICENSE.md
|
|
3
3
|
MANIFEST.in
|
|
4
4
|
README.rst
|
|
5
|
-
_functiontrace.c
|
|
6
5
|
build.rs
|
|
7
6
|
functiontrace.py
|
|
8
7
|
pyproject.toml
|
|
@@ -12,7 +11,4 @@ functiontrace.egg-info/SOURCES.txt
|
|
|
12
11
|
functiontrace.egg-info/dependency_links.txt
|
|
13
12
|
functiontrace.egg-info/entry_points.txt
|
|
14
13
|
functiontrace.egg-info/top_level.txt
|
|
15
|
-
mpack/LICENSE
|
|
16
|
-
mpack/mpack.c
|
|
17
|
-
mpack/mpack.h
|
|
18
14
|
rust/lib.rs
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
functiontrace
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import argparse
|
|
2
2
|
import os
|
|
3
|
-
import shutil
|
|
4
3
|
import sys
|
|
5
4
|
import tempfile
|
|
6
5
|
from importlib import machinery, util
|
|
7
6
|
|
|
8
|
-
import _functiontrace # noqa: F401 - this import is load bearing since we need to run code on import
|
|
9
7
|
import _functiontrace_rs as rust
|
|
10
8
|
|
|
11
9
|
PYTHON_TEMPLATE = """#!/bin/sh
|
|
@@ -21,19 +19,6 @@ exec $(which {python}) -m functiontrace "$@"
|
|
|
21
19
|
|
|
22
20
|
|
|
23
21
|
def setup_dependencies():
|
|
24
|
-
# We need the functiontrace-server installed and locatable in order to
|
|
25
|
-
# trace anything.
|
|
26
|
-
if shutil.which("functiontrace-server") is None:
|
|
27
|
-
print(
|
|
28
|
-
"Unable to find `functiontrace-server` in the current $PATH.",
|
|
29
|
-
file=sys.stderr,
|
|
30
|
-
)
|
|
31
|
-
print(
|
|
32
|
-
"See https://functiontrace.com#installation for installation instructions.",
|
|
33
|
-
file=sys.stderr,
|
|
34
|
-
)
|
|
35
|
-
sys.exit(1)
|
|
36
|
-
|
|
37
22
|
# Generate a temp directory to store our wrappers in. We'll temporarily
|
|
38
23
|
# add this directory to our path.
|
|
39
24
|
tempdir = tempfile.mkdtemp(prefix="py-functiontrace")
|
|
@@ -80,6 +65,9 @@ def main():
|
|
|
80
65
|
parser.print_help()
|
|
81
66
|
sys.exit(1)
|
|
82
67
|
|
|
68
|
+
# Load our config and verify the license before we trace.
|
|
69
|
+
rust.load_config()
|
|
70
|
+
|
|
83
71
|
# Ignore ourselves, keeping sys.argv looking reasonable as the child script
|
|
84
72
|
# will expect it to be sane.
|
|
85
73
|
sys.argv[:] = args.script
|