mdfr 0.6.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.
Files changed (51) hide show
  1. mdfr-0.6.3/.github/workflows/py-mac-aarch64-apple-release.yml +44 -0
  2. mdfr-0.6.3/.github/workflows/py-release-manylinux.yml +44 -0
  3. mdfr-0.6.3/.github/workflows/py-release-windows-macos.yml +52 -0
  4. mdfr-0.6.3/.github/workflows/rust.yml +21 -0
  5. mdfr-0.6.3/.gitignore +15 -0
  6. mdfr-0.6.3/.vscode/c_cpp_properties.json +16 -0
  7. mdfr-0.6.3/.vscode/launch.json +103 -0
  8. mdfr-0.6.3/Cargo.lock +5492 -0
  9. mdfr-0.6.3/Cargo.toml +99 -0
  10. mdfr-0.6.3/LICENSE +674 -0
  11. mdfr-0.6.3/PKG-INFO +60 -0
  12. mdfr-0.6.3/README.md +44 -0
  13. mdfr-0.6.3/benches/mdf_benchmark.rs +46 -0
  14. mdfr-0.6.3/benches/python_mdfinfo.py +2 -0
  15. mdfr-0.6.3/cbindgen.toml +0 -0
  16. mdfr-0.6.3/config.toml +5 -0
  17. mdfr-0.6.3/mdfr.h +101 -0
  18. mdfr-0.6.3/pyproject.toml +12 -0
  19. mdfr-0.6.3/src/c_api.rs +274 -0
  20. mdfr-0.6.3/src/data_holder/arrow_helpers.rs +241 -0
  21. mdfr-0.6.3/src/data_holder/channel_data.rs +1712 -0
  22. mdfr-0.6.3/src/data_holder/complex_arrow.rs +185 -0
  23. mdfr-0.6.3/src/data_holder/dtype.rs +30 -0
  24. mdfr-0.6.3/src/data_holder/tensor_arrow.rs +240 -0
  25. mdfr-0.6.3/src/data_holder.rs +7 -0
  26. mdfr-0.6.3/src/export/hdf5.rs +549 -0
  27. mdfr-0.6.3/src/export/mod.rs +10 -0
  28. mdfr-0.6.3/src/export/numpy.rs +138 -0
  29. mdfr-0.6.3/src/export/parquet.rs +366 -0
  30. mdfr-0.6.3/src/export/polars.rs +30 -0
  31. mdfr-0.6.3/src/lib.rs +11 -0
  32. mdfr-0.6.3/src/main.rs +149 -0
  33. mdfr-0.6.3/src/mdfinfo/mdfinfo3.rs +1715 -0
  34. mdfr-0.6.3/src/mdfinfo/mdfinfo4.rs +3526 -0
  35. mdfr-0.6.3/src/mdfinfo/sym_buf_reader.rs +258 -0
  36. mdfr-0.6.3/src/mdfinfo.rs +530 -0
  37. mdfr-0.6.3/src/mdfr.rs +707 -0
  38. mdfr-0.6.3/src/mdfreader/conversions3.rs +1220 -0
  39. mdfr-0.6.3/src/mdfreader/conversions4.rs +2196 -0
  40. mdfr-0.6.3/src/mdfreader/data_read3.rs +353 -0
  41. mdfr-0.6.3/src/mdfreader/data_read4.rs +1618 -0
  42. mdfr-0.6.3/src/mdfreader/mdfreader3.rs +273 -0
  43. mdfr-0.6.3/src/mdfreader/mdfreader4.rs +1464 -0
  44. mdfr-0.6.3/src/mdfreader.rs +380 -0
  45. mdfr-0.6.3/src/mdfwriter/mdfwriter3.rs +103 -0
  46. mdfr-0.6.3/src/mdfwriter/mdfwriter4.rs +687 -0
  47. mdfr-0.6.3/src/mdfwriter.rs +3 -0
  48. mdfr-0.6.3/src/tests.rs +1231 -0
  49. mdfr-0.6.3/test_files/test_basic.mf4 +0 -0
  50. mdfr-0.6.3/test_files/test_mdf3.mdf.zip +0 -0
  51. mdfr-0.6.3/test_files/test_mdf4.mf4.zip +0 -0
@@ -0,0 +1,44 @@
1
+ name: Create macOs universal2/aarch64-apple-darwin python release
2
+
3
+ on:
4
+ push:
5
+ branches: [ "main" ]
6
+ pull_request:
7
+ branches: [ "main" ]
8
+
9
+ jobs:
10
+ build:
11
+ name: Create Release
12
+ runs-on: ${{ matrix.os }}
13
+ strategy:
14
+ matrix:
15
+ os: ["macos-latest"]
16
+ python-version: [ "3.9", "3.10", "3.11", "3.12"]
17
+ steps:
18
+ - uses: actions/checkout@v3
19
+ - name: Install latest Rust nightly
20
+ uses: actions-rs/toolchain@v1
21
+ with:
22
+ toolchain: nightly
23
+ override: true
24
+ components: rustfmt, clippy
25
+ - name: Setup universal2 targets for Rust
26
+ run: |
27
+ rustup target add aarch64-apple-darwin
28
+ - name: Set up Python
29
+ uses: actions/setup-python@v4
30
+ with:
31
+ python-version: ${{ matrix.python-version }}
32
+ - name: Prepare maturin publish
33
+ shell: bash
34
+ run: |
35
+ rustup override set nightly
36
+ brew install hdf5@1.10
37
+ - name: maturin publish
38
+ uses: messense/maturin-action@v1
39
+ env:
40
+ MATURIN_PASSWORD: ${{ secrets.PYPI_TOKEN }}
41
+ with:
42
+ maturin-version: latest
43
+ command: publish
44
+ args: --target aarch64-apple-darwin --skip-existing --no-sdist -o wheels -i python -u __token__
@@ -0,0 +1,44 @@
1
+ name: Create Python release manylinux
2
+
3
+ on:
4
+ push:
5
+ branches: [ "main" ]
6
+ pull_request:
7
+ branches: [ "main" ]
8
+
9
+ jobs:
10
+ build_manylinux:
11
+ name: Create Release manylinux
12
+ runs-on: ubuntu-latest
13
+ strategy:
14
+ matrix:
15
+ python-version: [ '3.9', '3.10' , "3.11", "3.12"]
16
+ steps:
17
+ - uses: actions/checkout@v3
18
+ - uses: actions/setup-python@v4
19
+ with:
20
+ python-version: ${{ matrix.python-version }}
21
+ architecture: x64
22
+ - name: Install HDF5
23
+ run: sudo apt-get install libhdf5-openmpi-dev openmpi-bin libhdf5-dev hdf5-tools python3-h5py
24
+ - name: build x64_64
25
+ uses: messense/maturin-action@v1
26
+ env:
27
+ MATURIN_PASSWORD: ${{ secrets.PYPI_TOKEN }}
28
+ RUSTFLAGS: '-C target-feature=+fxsr,+sse,+sse2,+sse3,+ssse3,+sse4.1,+sse4.2,+popcnt,+avx,+fma'
29
+ with:
30
+ rust-toolchain: nightly
31
+ maturin-version: latest
32
+ manylinux: auto
33
+ command: publish
34
+ args: --skip-existing --no-sdist -i python3.11 -o wheels -u __token__
35
+ - name: build aarch64
36
+ uses: messense/maturin-action@v1
37
+ env:
38
+ MATURIN_PASSWORD: ${{ secrets.PYPI_TOKEN }}
39
+ with:
40
+ rust-toolchain: nightly
41
+ target: aarch64-unknown-linux-gnu
42
+ maturin-version: latest
43
+ command: publish
44
+ args: --skip-existing --no-sdist -o wheels -i python3.11 -u __token__
@@ -0,0 +1,52 @@
1
+ name: Create Python release windows macos
2
+
3
+ on:
4
+ push:
5
+ branches: [ "main" ]
6
+ pull_request:
7
+ branches: [ "main" ]
8
+
9
+ env:
10
+ CARGO_TERM_COLOR: always
11
+
12
+ jobs:
13
+ build:
14
+ name: Create Release
15
+ runs-on: ${{ matrix.os }}
16
+ strategy:
17
+ matrix:
18
+ os: ["windows-latest"]
19
+ python-version: ["3.9", "3.10", "3.11", "3.12"]
20
+ steps:
21
+ - uses: actions/checkout@v3
22
+ - name: Install latest Rust nightly
23
+ uses: actions-rs/toolchain@v1
24
+ with:
25
+ toolchain: nightly
26
+ override: true
27
+ components: rustfmt, clippy
28
+ - name: Set up Python
29
+ uses: actions/setup-python@v4
30
+ with:
31
+ python-version: ${{ matrix.python-version }}
32
+ - name: Install dependencies
33
+ shell: pwsh
34
+ run: |
35
+ python -m pip install --upgrade pip
36
+ pip install maturin
37
+ C:\msys64\usr\bin\wget.exe -q -O hdf5.zip https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.11/bin/windows/hdf5-1.10.11-Std-win10_64-vs16.zip
38
+ 7z x hdf5.zip -y
39
+ msiexec /i hdf\\HDF5-1.10.11-win64.msi /quiet /qn /norestart
40
+ - name: Maturin publish
41
+ shell: bash
42
+ env:
43
+ MATURIN_PASSWORD: ${{ secrets.PYPI_TOKEN }}
44
+ run: |
45
+ rustup override set nightly
46
+ export RUSTFLAGS='-C target-feature=+fxsr,+sse,+sse2,+sse3,+sse4.1,+sse4.2'
47
+ maturin publish \
48
+ --no-sdist \
49
+ --skip-existing \
50
+ -o wheels \
51
+ -i python \
52
+ --username __token__ \
@@ -0,0 +1,21 @@
1
+ name: Rust tests
2
+
3
+ on:
4
+ push:
5
+ pull_request:
6
+
7
+ env:
8
+ CARGO_TERM_COLOR: always
9
+
10
+ jobs:
11
+ build:
12
+
13
+ runs-on: ubuntu-latest
14
+
15
+ steps:
16
+ - uses: actions/checkout@v3
17
+ - name: Build
18
+ run: cargo build --verbose
19
+ - name: Run tests
20
+ run: cargo test tests::basic_test --verbose
21
+
mdfr-0.6.3/.gitignore ADDED
@@ -0,0 +1,15 @@
1
+ /target
2
+ Cargo.lock
3
+ flamegraph.svg
4
+ perf.*
5
+ profile.coz
6
+ callgrind.out.*
7
+ cachegrind.out.*
8
+ massif.*
9
+ /.env
10
+ /venv
11
+ test_mdf*
12
+ test.mf4
13
+ dhat.out.*
14
+ test_files/test.mf4_test
15
+ test_files/test.parquet
@@ -0,0 +1,16 @@
1
+ {
2
+ "configurations": [
3
+ {
4
+ "name": "Linux",
5
+ "includePath": [
6
+ "${workspaceFolder}/**"
7
+ ],
8
+ "defines": [],
9
+ "compilerPath": "/usr/bin/clang-9",
10
+ "cStandard": "c17",
11
+ "cppStandard": "c++14",
12
+ "intelliSenseMode": "linux-clang-x64"
13
+ }
14
+ ],
15
+ "version": 4
16
+ }
@@ -0,0 +1,103 @@
1
+ {
2
+ // Use IntelliSense to learn about possible attributes.
3
+ // Hover to view descriptions of existing attributes.
4
+ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5
+ "version": "0.2.0",
6
+ "configurations": [
7
+ {
8
+ "type": "lldb",
9
+ "request": "launch",
10
+ "name": "Cargo test",
11
+ "cargo": {
12
+ "args": [
13
+ "test",
14
+ "--no-run",
15
+ "--lib"
16
+ ]
17
+ },
18
+ "program": "${cargo:program}",
19
+ "args": []
20
+ },
21
+ {
22
+ "type": "lldb",
23
+ "request": "launch",
24
+ "name": "Debug unit tests in library 'mdfr'",
25
+ "cargo": {
26
+ "args": [
27
+ "test",
28
+ "--no-run",
29
+ "--lib",
30
+ "--package=mdfr"
31
+ ],
32
+ "filter": {
33
+ "name": "mdfr",
34
+ "kind": "lib"
35
+ }
36
+ },
37
+ "args": [],
38
+ "cwd": "${workspaceFolder}"
39
+ },
40
+ {
41
+ "type": "lldb",
42
+ "request": "launch",
43
+ "name": "Debug executable 'mdfr'",
44
+ "cargo": {
45
+ "args": [
46
+ "build",
47
+ "--bin=mdfr",
48
+ "--package=mdfr",
49
+ ],
50
+ "filter": {
51
+ "name": "mdfr",
52
+ "kind": "bin"
53
+ }
54
+ },
55
+ "args": [
56
+ "/home/ratal/workspace/mdfreader/mdfreader/tests/mdf3/TGT.dat"
57
+ ],
58
+ "cwd": "${workspaceFolder}"
59
+ },
60
+ {
61
+ "type": "lldb",
62
+ "request": "launch",
63
+ "name": "Debug unit tests in executable 'mdfr'",
64
+ "cargo": {
65
+ "args": [
66
+ "test",
67
+ "--no-run",
68
+ "--bin=mdfr",
69
+ "--package=mdfr"
70
+ ],
71
+ "filter": {
72
+ "name": "mdfr",
73
+ "kind": "bin"
74
+ }
75
+ },
76
+ "args": [
77
+ "/home/ratal/workspace/mdfreader/mdfreader/tests/MDF4/ASAM_COMMON_MDF_V4-1-0/Base_Standard/Examples/Simple/test.mf4"
78
+ ],
79
+ "cwd": "${workspaceFolder}"
80
+ },
81
+ {
82
+ "type": "lldb",
83
+ "request": "launch",
84
+ "name": "Debug executable mdfr executable with perf critical file",
85
+ "cargo": {
86
+ "args": [
87
+ "build",
88
+ "--bin=mdfr",
89
+ "--package=mdfr"
90
+ ],
91
+ "filter": {
92
+ "name": "mdfr",
93
+ "kind": "bin"
94
+ }
95
+ },
96
+ "program": "${workspaceFolder}/target/debug/mdfr",
97
+ "args": [
98
+ "/home/ratal/workspace/mdfreader/mdfreader/tests/MDF4/ASAM_COMMON_MDF_V4-1-0/Base_Standard/Examples/Simple/KRA_4010_2022_08_25_065833_log_23.mf4",
99
+ ],
100
+ "cwd": "${workspaceFolder}"
101
+ },
102
+ ]
103
+ }