Cython Integration and Test Case Enhancements #1

Merged
foefl merged 10 commits from test_cython into main 2025-10-22 10:17:38 +00:00
4 changed files with 21262 additions and 6 deletions
Showing only changes of commit 3c8a9a402e - Show all commits

33
pdm.lock generated
View File

@ -5,7 +5,7 @@
groups = ["default", "dev", "lint", "nb", "tests"] groups = ["default", "dev", "lint", "nb", "tests"]
strategy = ["inherit_metadata"] strategy = ["inherit_metadata"]
lock_version = "4.5.0" lock_version = "4.5.0"
content_hash = "sha256:fdc7b9b5d89abe575d708e809c823d506cd743ed354efd14bbe662a23e7b9fd9" content_hash = "sha256:3b6355e97f9ec4986d016609fce5a358357a894972810f07bcedd274117446d2"
[[metadata.targets]] [[metadata.targets]]
requires_python = ">=3.11,<3.14" requires_python = ">=3.11,<3.14"
@ -379,6 +379,24 @@ files = [
{file = "bracex-2.6.tar.gz", hash = "sha256:98f1347cd77e22ee8d967a30ad4e310b233f7754dbf31ff3fceb76145ba47dc7"}, {file = "bracex-2.6.tar.gz", hash = "sha256:98f1347cd77e22ee8d967a30ad4e310b233f7754dbf31ff3fceb76145ba47dc7"},
] ]
[[package]]
name = "build"
version = "1.3.0"
requires_python = ">=3.9"
summary = "A simple, correct Python build frontend"
groups = ["dev"]
dependencies = [
"colorama; os_name == \"nt\"",
"importlib-metadata>=4.6; python_full_version < \"3.10.2\"",
"packaging>=19.1",
"pyproject-hooks",
"tomli>=1.1.0; python_version < \"3.11\"",
]
files = [
{file = "build-1.3.0-py3-none-any.whl", hash = "sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4"},
{file = "build-1.3.0.tar.gz", hash = "sha256:698edd0ea270bde950f53aed21f3a0135672206f3911e0176261a31e0e07b397"},
]
[[package]] [[package]]
name = "bump-my-version" name = "bump-my-version"
version = "1.2.4" version = "1.2.4"
@ -527,7 +545,7 @@ version = "0.4.6"
requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7"
summary = "Cross-platform colored terminal text." summary = "Cross-platform colored terminal text."
groups = ["default", "dev", "nb", "tests"] groups = ["default", "dev", "nb", "tests"]
marker = "sys_platform == \"win32\" or platform_system == \"Windows\"" marker = "sys_platform == \"win32\" or os_name == \"nt\" or platform_system == \"Windows\""
files = [ files = [
{file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"},
{file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"},
@ -3077,6 +3095,17 @@ files = [
{file = "pyparsing-3.2.5.tar.gz", hash = "sha256:2df8d5b7b2802ef88e8d016a2eb9c7aeaa923529cd251ed0fe4608275d4105b6"}, {file = "pyparsing-3.2.5.tar.gz", hash = "sha256:2df8d5b7b2802ef88e8d016a2eb9c7aeaa923529cd251ed0fe4608275d4105b6"},
] ]
[[package]]
name = "pyproject-hooks"
version = "1.2.0"
requires_python = ">=3.7"
summary = "Wrappers to call pyproject.toml-based build backend hooks."
groups = ["dev"]
files = [
{file = "pyproject_hooks-1.2.0-py3-none-any.whl", hash = "sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913"},
{file = "pyproject_hooks-1.2.0.tar.gz", hash = "sha256:1e859bd5c40fae9448642dd871adf459e5e2084186e8d2c2a79a824c970da1f8"},
]
[[package]] [[package]]
name = "pytest" name = "pytest"
version = "8.4.2" version = "8.4.2"

View File

@ -11,9 +11,13 @@ readme = "README.md"
license = {text = "LicenseRef-Proprietary"} license = {text = "LicenseRef-Proprietary"}
[build-system] [build-system]
requires = ["pdm-backend"] requires = ["pdm-backend", "Cython", "setuptools"]
build-backend = "pdm.backend" build-backend = "pdm.backend"
[tool.pdm.build]
package-dir = "src"
run-setuptools = true
[tool.ruff] [tool.ruff]
line-length = 94 line-length = 94
@ -116,9 +120,6 @@ replace = "version = \"{new_version}\""
[tool.pdm] [tool.pdm]
distribution = true distribution = true
[tool.pdm.build]
package-dir = "src"
[tool.pdm.resolution] [tool.pdm.resolution]
respect-source-order = true respect-source-order = true
@ -145,6 +146,7 @@ dev = [
"nox>=2025.2.9", "nox>=2025.2.9",
"cython>=3.1.4", "cython>=3.1.4",
"setuptools>=80.9.0", "setuptools>=80.9.0",
"build>=1.3.0",
] ]
nb = [ nb = [
"jupyterlab>=4.3.5", "jupyterlab>=4.3.5",

7
setup.py Normal file
View File

@ -0,0 +1,7 @@
from Cython.Build import cythonize
from setuptools import setup
ext_modules = cythonize(["src/dopt_sensor_anomalies/detection.py"])
setup(ext_modules=ext_modules)

File diff suppressed because it is too large Load Diff