tallbrachiosaurus 0.1.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.
@@ -0,0 +1 @@
1
+ 3.12
@@ -0,0 +1,133 @@
1
+ # This file is automatically @generated by Cargo.
2
+ # It is not intended for manual editing.
3
+ version = 4
4
+
5
+ [[package]]
6
+ name = "heck"
7
+ version = "0.5.0"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
10
+
11
+ [[package]]
12
+ name = "libc"
13
+ version = "0.2.189"
14
+ source = "registry+https://github.com/rust-lang/crates.io-index"
15
+ checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
16
+
17
+ [[package]]
18
+ name = "once_cell"
19
+ version = "1.21.4"
20
+ source = "registry+https://github.com/rust-lang/crates.io-index"
21
+ checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
22
+
23
+ [[package]]
24
+ name = "portable-atomic"
25
+ version = "1.15.0"
26
+ source = "registry+https://github.com/rust-lang/crates.io-index"
27
+ checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85"
28
+
29
+ [[package]]
30
+ name = "proc-macro2"
31
+ version = "1.0.107"
32
+ source = "registry+https://github.com/rust-lang/crates.io-index"
33
+ checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
34
+ dependencies = [
35
+ "unicode-ident",
36
+ ]
37
+
38
+ [[package]]
39
+ name = "pyo3"
40
+ version = "0.28.3"
41
+ source = "registry+https://github.com/rust-lang/crates.io-index"
42
+ checksum = "91fd8e38a3b50ed1167fb981cd6fd60147e091784c427b8f7183a7ee32c31c12"
43
+ dependencies = [
44
+ "libc",
45
+ "once_cell",
46
+ "portable-atomic",
47
+ "pyo3-build-config",
48
+ "pyo3-ffi",
49
+ "pyo3-macros",
50
+ ]
51
+
52
+ [[package]]
53
+ name = "pyo3-build-config"
54
+ version = "0.28.3"
55
+ source = "registry+https://github.com/rust-lang/crates.io-index"
56
+ checksum = "e368e7ddfdeb98c9bca7f8383be1648fd84ab466bf2bc015e94008db6d35611e"
57
+ dependencies = [
58
+ "target-lexicon",
59
+ ]
60
+
61
+ [[package]]
62
+ name = "pyo3-ffi"
63
+ version = "0.28.3"
64
+ source = "registry+https://github.com/rust-lang/crates.io-index"
65
+ checksum = "7f29e10af80b1f7ccaf7f69eace800a03ecd13e883acfacc1e5d0988605f651e"
66
+ dependencies = [
67
+ "libc",
68
+ "pyo3-build-config",
69
+ ]
70
+
71
+ [[package]]
72
+ name = "pyo3-macros"
73
+ version = "0.28.3"
74
+ source = "registry+https://github.com/rust-lang/crates.io-index"
75
+ checksum = "df6e520eff47c45997d2fc7dd8214b25dd1310918bbb2642156ef66a67f29813"
76
+ dependencies = [
77
+ "proc-macro2",
78
+ "pyo3-macros-backend",
79
+ "quote",
80
+ "syn",
81
+ ]
82
+
83
+ [[package]]
84
+ name = "pyo3-macros-backend"
85
+ version = "0.28.3"
86
+ source = "registry+https://github.com/rust-lang/crates.io-index"
87
+ checksum = "c4cdc218d835738f81c2338f822078af45b4afdf8b2e33cbb5916f108b813acb"
88
+ dependencies = [
89
+ "heck",
90
+ "proc-macro2",
91
+ "pyo3-build-config",
92
+ "quote",
93
+ "syn",
94
+ ]
95
+
96
+ [[package]]
97
+ name = "quote"
98
+ version = "1.0.47"
99
+ source = "registry+https://github.com/rust-lang/crates.io-index"
100
+ checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
101
+ dependencies = [
102
+ "proc-macro2",
103
+ ]
104
+
105
+ [[package]]
106
+ name = "syn"
107
+ version = "2.0.119"
108
+ source = "registry+https://github.com/rust-lang/crates.io-index"
109
+ checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"
110
+ dependencies = [
111
+ "proc-macro2",
112
+ "quote",
113
+ "unicode-ident",
114
+ ]
115
+
116
+ [[package]]
117
+ name = "tallbrachiosaurus"
118
+ version = "0.1.0"
119
+ dependencies = [
120
+ "pyo3",
121
+ ]
122
+
123
+ [[package]]
124
+ name = "target-lexicon"
125
+ version = "0.13.5"
126
+ source = "registry+https://github.com/rust-lang/crates.io-index"
127
+ checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
128
+
129
+ [[package]]
130
+ name = "unicode-ident"
131
+ version = "1.0.24"
132
+ source = "registry+https://github.com/rust-lang/crates.io-index"
133
+ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
@@ -0,0 +1,15 @@
1
+ [package]
2
+ name = "tallbrachiosaurus"
3
+ version = "0.1.0"
4
+ edition = "2024"
5
+ readme = "README.md"
6
+
7
+ [lib]
8
+ name = "_core"
9
+ # "cdylib" is necessary to produce a shared library for Python to import from.
10
+ crate-type = ["cdylib"]
11
+
12
+ [dependencies]
13
+ # "extension-module" tells pyo3 we want to build an extension module (skips linking against libpython.so)
14
+ # "abi3-py39" tells pyo3 (and maturin) to build using the stable ABI with minimum Python version 3.9
15
+ pyo3 = { version = "0.28.2", features = ["extension-module", "abi3-py39"] }
@@ -0,0 +1,31 @@
1
+ Metadata-Version: 2.4
2
+ Name: tallbrachiosaurus
3
+ Version: 0.1.0
4
+ Summary: Add your description here
5
+ Author-email: tallbrachiosaurus <322250098+tallbrachiosaurus@users.noreply.github.com>
6
+ Requires-Python: >=3.12
7
+ Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
8
+
9
+ # tallbrachiosaurus
10
+
11
+ A small Python package for computing discrete derivatives of timeseries data.
12
+
13
+ Written for CPE 486/586, Machine Learning for Computer Engineering
14
+ Applications, at the University of Alabama in Huntsville.
15
+
16
+ ## Installation
17
+
18
+ pip install tallbrachiosaurus
19
+
20
+ ## Usage
21
+
22
+ from tallbrachiosaurus import diff
23
+
24
+ t = [0, 0.1, 0.3, 0.4]
25
+ x = [23.1, 22.5, 23.5, 21.88]
26
+ v = diff(t, x)
27
+
28
+ The diff function takes two equal-length Python lists, time values and
29
+ signal values, and returns the discrete derivative as a list of length
30
+ n minus 1.
31
+
@@ -0,0 +1,22 @@
1
+ # tallbrachiosaurus
2
+
3
+ A small Python package for computing discrete derivatives of timeseries data.
4
+
5
+ Written for CPE 486/586, Machine Learning for Computer Engineering
6
+ Applications, at the University of Alabama in Huntsville.
7
+
8
+ ## Installation
9
+
10
+ pip install tallbrachiosaurus
11
+
12
+ ## Usage
13
+
14
+ from tallbrachiosaurus import diff
15
+
16
+ t = [0, 0.1, 0.3, 0.4]
17
+ x = [23.1, 22.5, 23.5, 21.88]
18
+ v = diff(t, x)
19
+
20
+ The diff function takes two equal-length Python lists, time values and
21
+ signal values, and returns the discrete derivative as a list of length
22
+ n minus 1.
@@ -0,0 +1,22 @@
1
+ [project]
2
+ name = "tallbrachiosaurus"
3
+ version = "0.1.0"
4
+ description = "Add your description here"
5
+ readme = "README.md"
6
+ authors = [
7
+ { name = "tallbrachiosaurus", email = "322250098+tallbrachiosaurus@users.noreply.github.com" }
8
+ ]
9
+ requires-python = ">=3.12"
10
+ dependencies = []
11
+
12
+ [tool.maturin]
13
+ module-name = "tallbrachiosaurus._core"
14
+ python-packages = ["tallbrachiosaurus"]
15
+ python-source = "src"
16
+
17
+ [tool.uv]
18
+ cache-keys = [{ file = "pyproject.toml" }, { file = "src/**/*.rs" }, { file = "Cargo.toml" }, { file = "Cargo.lock" }]
19
+
20
+ [build-system]
21
+ requires = ["maturin>=1.0,<2.0"]
22
+ build-backend = "maturin"
@@ -0,0 +1,14 @@
1
+ use pyo3::prelude::*;
2
+
3
+ /// A Python module implemented in Rust. The name of this module must match
4
+ /// the `lib.name` setting in the `Cargo.toml`, else Python will not be able to
5
+ /// import the module.
6
+ #[pymodule]
7
+ mod _core {
8
+ use pyo3::prelude::*;
9
+
10
+ #[pyfunction]
11
+ fn hello_from_bin() -> String {
12
+ "Hello from tallbrachiosaurus!".to_string()
13
+ }
14
+ }
@@ -0,0 +1,3 @@
1
+ from tallbrachiosaurus.differential.discrete import diff
2
+
3
+ __all__ = ["diff"]
@@ -0,0 +1 @@
1
+ def hello_from_bin() -> str: ...
@@ -0,0 +1,25 @@
1
+ def diff(t, x):
2
+ # Reject mismatched inputs before computing anything
3
+ if len(t) != len(x):
4
+ raise ValueError(
5
+ f"Length mismatch"
6
+ )
7
+
8
+ # Need at least two samples to form a difference
9
+ if len(t) < 2:
10
+ raise ValueError("Need at least two samples to compute a derivative")
11
+
12
+ v = []
13
+
14
+ # Start at index 1 since each value depends on its predecessor
15
+ for k in range(1, len(t)):
16
+ dt = t[k] - t[k - 1]
17
+
18
+ # Guard against division by zero from duplicate timestamps
19
+ if dt == 0:
20
+ raise ValueError(f"Duplicate time value at index {k}: t={t[k]}")
21
+
22
+ dx = x[k] - x[k - 1]
23
+ v.append(dx / dt)
24
+
25
+ return v
File without changes
@@ -0,0 +1 @@
1
+ {"rustc_fingerprint":9516358747030354682,"outputs":{"7971740275564407648":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/m_hillmon/.rustup/toolchains/stable-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_primitive_alignment=\"16\"\ntarget_has_atomic_primitive_alignment=\"32\"\ntarget_has_atomic_primitive_alignment=\"64\"\ntarget_has_atomic_primitive_alignment=\"8\"\ntarget_has_atomic_primitive_alignment=\"ptr\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"unknown\"\nunix\n","stderr":""},"3622614615972486796":{"success":true,"status":"","code":0,"stdout":"rustc 1.98.0 (88d9e12ae 2026-08-18)\nbinary: rustc\ncommit-hash: 88d9e12ae178fab0fb5cc050a94da85685d449ea\ncommit-date: 2026-08-18\nhost: x86_64-unknown-linux-gnu\nrelease: 1.98.0\nLLVM version: 22.1.8\n","stderr":""}},"successes":{}}
@@ -0,0 +1,3 @@
1
+ Signature: 8a477f597d28d172789f06886806bc55
2
+ # This file is a cache directory tag created by cargo.
3
+ # For information about cache directory tags see https://bford.info/cachedir/