tsdownsample 0.1.2a1__tar.gz → 0.1.3__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.
- tsdownsample-0.1.3/.github/FUNDING.yml +3 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/.github/workflows/ci-downsample_rs.yml +25 -18
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/.github/workflows/ci-tsdownsample.yml +4 -4
- tsdownsample-0.1.3/.github/workflows/codeql.yml +52 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/.github/workflows/codspeed.yml +1 -1
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/.gitignore +1 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/Cargo.lock +92 -133
- tsdownsample-0.1.3/Cargo.toml +19 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/PKG-INFO +37 -16
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/README.md +34 -14
- tsdownsample-0.1.3/downsample_rs/Cargo.toml +37 -0
- {tsdownsample-0.1.2a1/local_dependencies → tsdownsample-0.1.3}/downsample_rs/benches/bench_lttb.rs +18 -7
- tsdownsample-0.1.3/downsample_rs/benches/bench_m4.rs +80 -0
- tsdownsample-0.1.3/downsample_rs/benches/bench_minmax.rs +98 -0
- tsdownsample-0.1.3/downsample_rs/benches/bench_minmaxlttb.rs +110 -0
- tsdownsample-0.1.3/downsample_rs/dev_utils/Cargo.toml +10 -0
- tsdownsample-0.1.3/downsample_rs/dev_utils/src/config.rs +4 -0
- tsdownsample-0.1.3/downsample_rs/dev_utils/src/lib.rs +4 -0
- tsdownsample-0.1.3/downsample_rs/dev_utils/src/utils.rs +35 -0
- {tsdownsample-0.1.2a1/local_dependencies → tsdownsample-0.1.3}/downsample_rs/src/helpers.rs +10 -34
- tsdownsample-0.1.3/downsample_rs/src/lib.rs +35 -0
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/lttb/scalar.rs → tsdownsample-0.1.3/downsample_rs/src/lttb.rs +34 -56
- tsdownsample-0.1.3/downsample_rs/src/m4.rs +453 -0
- tsdownsample-0.1.3/downsample_rs/src/minmax.rs +434 -0
- tsdownsample-0.1.3/downsample_rs/src/minmaxlttb.rs +273 -0
- {tsdownsample-0.1.2a1/local_dependencies → tsdownsample-0.1.3}/downsample_rs/src/searchsorted.rs +69 -95
- tsdownsample-0.1.3/notebooks/benches.ipynb +1147 -0
- tsdownsample-0.1.3/notebooks/downsample_times_processed.csv +881 -0
- tsdownsample-0.1.3/notebooks/requirements.txt +3 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/pyproject.toml +6 -3
- tsdownsample-0.1.3/rust-toolchain +1 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/src/lib.rs +154 -170
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tests/benchmarks/test_downsamplers.py +103 -0
- tsdownsample-0.1.3/tests/test_algos_python_compliance.py +69 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tests/test_config.py +1 -0
- tsdownsample-0.1.3/tests/test_rust_mods.py +71 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tests/test_tsdownsample.py +100 -8
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tsdownsample/__init__.py +7 -1
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tsdownsample/_python/downsamplers.py +67 -3
- tsdownsample-0.1.3/tsdownsample/downsamplers.py +158 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tsdownsample/downsampling_interface.py +132 -65
- tsdownsample-0.1.2a1/Cargo.toml +0 -24
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/Cargo.toml +0 -32
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/benches/bench_m4.rs +0 -111
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/benches/bench_minmax.rs +0 -145
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/benches/bench_minmaxlttb.rs +0 -169
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/lib.rs +0 -11
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/lttb/mod.rs +0 -2
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/m4/generic.rs +0 -200
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/m4/mod.rs +0 -5
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/m4/scalar.rs +0 -254
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/m4/simd.rs +0 -249
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/minmax/generic.rs +0 -182
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/minmax/mod.rs +0 -5
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/minmax/scalar.rs +0 -254
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/minmax/simd.rs +0 -254
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/minmaxlttb/generic.rs +0 -76
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/minmaxlttb/mod.rs +0 -5
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/minmaxlttb/scalar.rs +0 -145
- tsdownsample-0.1.2a1/local_dependencies/downsample_rs/src/minmaxlttb/simd.rs +0 -145
- tsdownsample-0.1.2a1/tests/test_algos_python_compliance.py +0 -31
- tsdownsample-0.1.2a1/tests/test_rust_mods.py +0 -45
- tsdownsample-0.1.2a1/tsdownsample/downsamplers.py +0 -70
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/CONTRIBUTING.md +0 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/LICENSE +0 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/Makefile +0 -0
- {tsdownsample-0.1.2a1/local_dependencies → tsdownsample-0.1.3}/downsample_rs/LICENSE +0 -0
- {tsdownsample-0.1.2a1/local_dependencies → tsdownsample-0.1.3}/downsample_rs/README.md +0 -0
- {tsdownsample-0.1.2a1/local_dependencies → tsdownsample-0.1.3}/downsample_rs/benches/results +0 -0
- {tsdownsample-0.1.2a1/local_dependencies → tsdownsample-0.1.3}/downsample_rs/src/types.rs +0 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tests/benchmarks/__init__.py +0 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tests/requirements-linting.txt +0 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tests/requirements.txt +0 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tsdownsample/_python/__init__.py +0 -0
- {tsdownsample-0.1.2a1 → tsdownsample-0.1.3}/tsdownsample/_rust/__init__.py +0 -0
|
@@ -5,6 +5,10 @@ on:
|
|
|
5
5
|
push:
|
|
6
6
|
branches:
|
|
7
7
|
- main
|
|
8
|
+
paths:
|
|
9
|
+
- "downsample_rs/**"
|
|
10
|
+
- "!downsample_rs/LICENSE"
|
|
11
|
+
- "!downsample_rs/README.md"
|
|
8
12
|
|
|
9
13
|
defaults:
|
|
10
14
|
run:
|
|
@@ -35,7 +39,7 @@ jobs:
|
|
|
35
39
|
rustc --version
|
|
36
40
|
cargo clippy --version
|
|
37
41
|
cargo fmt --version
|
|
38
|
-
|
|
42
|
+
|
|
39
43
|
- name: check no optional features
|
|
40
44
|
run: cargo check --verbose
|
|
41
45
|
- name: check with all features
|
|
@@ -50,9 +54,9 @@ jobs:
|
|
|
50
54
|
strategy:
|
|
51
55
|
fail-fast: false
|
|
52
56
|
matrix:
|
|
53
|
-
os: [
|
|
54
|
-
rust: [
|
|
55
|
-
|
|
57
|
+
os: ["windows-latest", "macOS-latest", "ubuntu-latest"]
|
|
58
|
+
rust: ["nightly"] # ['stable', 'beta']
|
|
59
|
+
|
|
56
60
|
steps:
|
|
57
61
|
- name: Checkout
|
|
58
62
|
uses: actions/checkout@v2
|
|
@@ -69,20 +73,20 @@ jobs:
|
|
|
69
73
|
|
|
70
74
|
- name: Cache Dependencies
|
|
71
75
|
uses: Swatinem/rust-cache@v1
|
|
72
|
-
|
|
76
|
+
|
|
73
77
|
- name: Run tests (debug)
|
|
74
78
|
run: cargo test --verbose --all-features
|
|
75
79
|
- name: Run tests (release)
|
|
76
80
|
run: cargo test --verbose --all-features --release
|
|
77
|
-
|
|
81
|
+
|
|
78
82
|
Bench:
|
|
79
83
|
runs-on: ${{ matrix.os }}
|
|
80
84
|
strategy:
|
|
81
85
|
fail-fast: false
|
|
82
86
|
matrix:
|
|
83
|
-
os: [
|
|
84
|
-
rust: [
|
|
85
|
-
|
|
87
|
+
os: ["ubuntu-latest"] # ['windows-latest', 'macOS-latest']
|
|
88
|
+
rust: ["nightly"] # ['stable', 'beta']
|
|
89
|
+
|
|
86
90
|
steps:
|
|
87
91
|
- name: Checkout
|
|
88
92
|
uses: actions/checkout@v2
|
|
@@ -99,10 +103,10 @@ jobs:
|
|
|
99
103
|
|
|
100
104
|
- name: Cache Dependencies
|
|
101
105
|
uses: Swatinem/rust-cache@v1
|
|
102
|
-
|
|
106
|
+
|
|
103
107
|
- name: Run benchmarks
|
|
104
108
|
run: cargo bench --quiet --message-format=short --all-features | grep "time:"
|
|
105
|
-
|
|
109
|
+
|
|
106
110
|
Build:
|
|
107
111
|
runs-on: ubuntu-latest
|
|
108
112
|
strategy:
|
|
@@ -115,8 +119,12 @@ jobs:
|
|
|
115
119
|
- i586-unknown-linux-gnu
|
|
116
120
|
- aarch64-unknown-linux-gnu
|
|
117
121
|
- armv7-unknown-linux-gnueabihf
|
|
118
|
-
|
|
119
|
-
|
|
122
|
+
# MIPS is currently not supported anymore on nightly chains.
|
|
123
|
+
# more information:
|
|
124
|
+
# - https://github.com/rust-lang/compiler-team/issues/648
|
|
125
|
+
# - https://github.com/rust-lang/rust/pull/113274
|
|
126
|
+
# - mips-unknown-linux-gnu
|
|
127
|
+
# - mips64-unknown-linux-gnuabi64
|
|
120
128
|
- powerpc-unknown-linux-gnu
|
|
121
129
|
- powerpc64-unknown-linux-gnu
|
|
122
130
|
- riscv64gc-unknown-linux-gnu
|
|
@@ -133,11 +141,10 @@ jobs:
|
|
|
133
141
|
rustup target add ${{ matrix.target }}
|
|
134
142
|
# rustup component add clippy
|
|
135
143
|
# - name: Run Clippy
|
|
136
|
-
|
|
144
|
+
# run: cargo clippy --all-targets --target ${{ matrix.target }}
|
|
137
145
|
- name: Build (release)
|
|
138
146
|
run: cargo build --target ${{ matrix.target }} --release --all-features
|
|
139
147
|
|
|
140
|
-
|
|
141
148
|
# - name: Run cargo-tarpaulin
|
|
142
149
|
# uses: actions-rs/tarpaulin@v0.1
|
|
143
150
|
# with:
|
|
@@ -145,6 +152,6 @@ jobs:
|
|
|
145
152
|
|
|
146
153
|
# - name: Upload to codecov.io
|
|
147
154
|
# uses: codecov/codecov-action@v3
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
# largely inspired by: https://github.com/rust-lang/portable-simd/blob/master/.github/workflows/ci.yml
|
|
155
|
+
#
|
|
156
|
+
#
|
|
157
|
+
# largely inspired by: https://github.com/rust-lang/portable-simd/blob/master/.github/workflows/ci.yml
|
|
@@ -46,7 +46,7 @@ jobs:
|
|
|
46
46
|
matrix:
|
|
47
47
|
os: ['windows-latest', 'macOS-latest', 'ubuntu-latest']
|
|
48
48
|
rust: ['nightly'] # ['stable', 'beta']
|
|
49
|
-
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
|
|
49
|
+
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11', '3.12']
|
|
50
50
|
|
|
51
51
|
env:
|
|
52
52
|
PYTHON: ${{ matrix.python-version }}
|
|
@@ -87,7 +87,7 @@ jobs:
|
|
|
87
87
|
# Perhaps smth more in line with this https://github.com/messense/crfs-rs/blob/main/.github/workflows/Python.yml
|
|
88
88
|
name: build on ${{ matrix.os }} (${{ matrix.target }} - ${{ matrix.manylinux || 'auto' }})
|
|
89
89
|
# only run on push to main and on release
|
|
90
|
-
|
|
90
|
+
if: "success() && (startsWith(github.ref, 'refs/tags/') || github.ref == 'refs/heads/main' || contains(github.event.pull_request.labels.*.name, 'Full Build'))"
|
|
91
91
|
strategy:
|
|
92
92
|
fail-fast: false
|
|
93
93
|
matrix:
|
|
@@ -155,7 +155,7 @@ jobs:
|
|
|
155
155
|
target: ${{ matrix.target }}
|
|
156
156
|
manylinux: ${{ matrix.manylinux || 'auto' }}
|
|
157
157
|
container: ${{ matrix.container }}
|
|
158
|
-
args: --release --out dist --interpreter ${{ matrix.interpreter || '3.7 3.8 3.9 3.10 3.11' }}
|
|
158
|
+
args: --release --out dist --interpreter ${{ matrix.interpreter || '3.7 3.8 3.9 3.10 3.11 3.12' }}
|
|
159
159
|
|
|
160
160
|
- run: ${{ matrix.ls || 'ls -lh' }} dist/
|
|
161
161
|
|
|
@@ -166,7 +166,7 @@ jobs:
|
|
|
166
166
|
|
|
167
167
|
Release:
|
|
168
168
|
needs: [Lint_and_Check, Test, Build]
|
|
169
|
-
|
|
169
|
+
if: "success() && startsWith(github.ref, 'refs/tags/')"
|
|
170
170
|
runs-on: ubuntu-latest
|
|
171
171
|
|
|
172
172
|
steps:
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
name: "CodeQL"
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ "main" ]
|
|
6
|
+
pull_request:
|
|
7
|
+
# The branches below must be a subset of the branches above
|
|
8
|
+
branches: [ "main" ]
|
|
9
|
+
schedule:
|
|
10
|
+
- cron: '00 00 * * 1'
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
analyze:
|
|
14
|
+
name: Analyze
|
|
15
|
+
# Runner size impacts CodeQL analysis time. To learn more, please see:
|
|
16
|
+
# - https://gh.io/recommended-hardware-resources-for-running-codeql
|
|
17
|
+
# - https://gh.io/supported-runners-and-hardware-resources
|
|
18
|
+
# - https://gh.io/using-larger-runners
|
|
19
|
+
# Consider using larger runners for possible analysis time improvements.
|
|
20
|
+
runs-on: 'ubuntu-latest'
|
|
21
|
+
timeout-minutes: 360
|
|
22
|
+
permissions:
|
|
23
|
+
actions: read
|
|
24
|
+
contents: read
|
|
25
|
+
security-events: write
|
|
26
|
+
|
|
27
|
+
strategy:
|
|
28
|
+
fail-fast: false
|
|
29
|
+
matrix:
|
|
30
|
+
language: [ 'python' ]
|
|
31
|
+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby', 'swift' ]
|
|
32
|
+
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
|
|
33
|
+
|
|
34
|
+
steps:
|
|
35
|
+
- name: Checkout repository
|
|
36
|
+
uses: actions/checkout@v3
|
|
37
|
+
|
|
38
|
+
- name: Initialize CodeQL
|
|
39
|
+
uses: github/codeql-action/init@v2
|
|
40
|
+
with:
|
|
41
|
+
languages: ${{ matrix.language }}
|
|
42
|
+
# If you wish to specify custom queries, you can do so here or in a config file.
|
|
43
|
+
# By default, queries listed here will override any specified in a config file.
|
|
44
|
+
# Prefix the list here with "+" to use these queries and those in the config file.
|
|
45
|
+
|
|
46
|
+
# For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
|
|
47
|
+
# queries: security-extended,security-and-quality
|
|
48
|
+
|
|
49
|
+
- name: Perform CodeQL Analysis
|
|
50
|
+
uses: github/codeql-action/analyze@v2
|
|
51
|
+
with:
|
|
52
|
+
category: "/language:${{matrix.language}}"
|