qvdrs 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.
- qvdrs-0.1.0/.github/workflows/ci.yml +30 -0
- qvdrs-0.1.0/.github/workflows/release-binaries.yml +68 -0
- qvdrs-0.1.0/.github/workflows/release-crate.yml +16 -0
- qvdrs-0.1.0/.github/workflows/release-pypi.yml +114 -0
- qvdrs-0.1.0/.gitignore +10 -0
- qvdrs-0.1.0/Cargo.lock +1298 -0
- qvdrs-0.1.0/Cargo.toml +51 -0
- qvdrs-0.1.0/LICENSE +21 -0
- qvdrs-0.1.0/PKG-INFO +295 -0
- qvdrs-0.1.0/README.md +263 -0
- qvdrs-0.1.0/docs.md +727 -0
- qvdrs-0.1.0/examples/read_qvd.rs +56 -0
- qvdrs-0.1.0/examples/roundtrip.rs +83 -0
- qvdrs-0.1.0/examples/roundtrip_all.rs +85 -0
- qvdrs-0.1.0/pyproject.toml +40 -0
- qvdrs-0.1.0/src/bin/qvd.rs +269 -0
- qvdrs-0.1.0/src/error.rs +38 -0
- qvdrs-0.1.0/src/exists.rs +103 -0
- qvdrs-0.1.0/src/header.rs +300 -0
- qvdrs-0.1.0/src/index.rs +97 -0
- qvdrs-0.1.0/src/lib.rs +128 -0
- qvdrs-0.1.0/src/parquet.rs +1027 -0
- qvdrs-0.1.0/src/python.rs +274 -0
- qvdrs-0.1.0/src/reader.rs +128 -0
- qvdrs-0.1.0/src/streaming.rs +197 -0
- qvdrs-0.1.0/src/symbol.rs +149 -0
- qvdrs-0.1.0/src/value.rs +105 -0
- qvdrs-0.1.0/src/writer.rs +214 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main, master]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [main, master]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
test:
|
|
11
|
+
runs-on: ${{ matrix.os }}
|
|
12
|
+
strategy:
|
|
13
|
+
matrix:
|
|
14
|
+
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
15
|
+
steps:
|
|
16
|
+
- uses: actions/checkout@v4
|
|
17
|
+
- uses: dtolnay/rust-toolchain@stable
|
|
18
|
+
- run: cargo test
|
|
19
|
+
- run: cargo test --features parquet_support
|
|
20
|
+
- run: cargo check --features cli
|
|
21
|
+
|
|
22
|
+
clippy:
|
|
23
|
+
runs-on: ubuntu-latest
|
|
24
|
+
steps:
|
|
25
|
+
- uses: actions/checkout@v4
|
|
26
|
+
- uses: dtolnay/rust-toolchain@stable
|
|
27
|
+
with:
|
|
28
|
+
components: clippy
|
|
29
|
+
- run: cargo clippy -- -D warnings
|
|
30
|
+
- run: cargo clippy --features parquet_support -- -D warnings
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
name: Build Release Binaries
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
|
|
8
|
+
permissions:
|
|
9
|
+
contents: write
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
build:
|
|
13
|
+
runs-on: ${{ matrix.os }}
|
|
14
|
+
strategy:
|
|
15
|
+
matrix:
|
|
16
|
+
include:
|
|
17
|
+
- os: ubuntu-latest
|
|
18
|
+
target: x86_64-unknown-linux-gnu
|
|
19
|
+
artifact: qvd-cli-linux-x86_64
|
|
20
|
+
- os: ubuntu-latest
|
|
21
|
+
target: aarch64-unknown-linux-gnu
|
|
22
|
+
artifact: qvd-cli-linux-aarch64
|
|
23
|
+
cross: true
|
|
24
|
+
- os: windows-latest
|
|
25
|
+
target: x86_64-pc-windows-msvc
|
|
26
|
+
artifact: qvd-cli-windows-x86_64.exe
|
|
27
|
+
- os: macos-13
|
|
28
|
+
target: x86_64-apple-darwin
|
|
29
|
+
artifact: qvd-cli-macos-x86_64
|
|
30
|
+
- os: macos-14
|
|
31
|
+
target: aarch64-apple-darwin
|
|
32
|
+
artifact: qvd-cli-macos-aarch64
|
|
33
|
+
|
|
34
|
+
steps:
|
|
35
|
+
- uses: actions/checkout@v4
|
|
36
|
+
- uses: dtolnay/rust-toolchain@stable
|
|
37
|
+
with:
|
|
38
|
+
targets: ${{ matrix.target }}
|
|
39
|
+
|
|
40
|
+
- name: Install cross-compilation tools
|
|
41
|
+
if: matrix.cross
|
|
42
|
+
run: |
|
|
43
|
+
sudo apt-get update
|
|
44
|
+
sudo apt-get install -y gcc-aarch64-linux-gnu
|
|
45
|
+
echo '[target.aarch64-unknown-linux-gnu]' >> ~/.cargo/config.toml
|
|
46
|
+
echo 'linker = "aarch64-linux-gnu-gcc"' >> ~/.cargo/config.toml
|
|
47
|
+
|
|
48
|
+
- name: Build
|
|
49
|
+
run: cargo build --release --features cli --target ${{ matrix.target }}
|
|
50
|
+
|
|
51
|
+
- name: Rename binary (unix)
|
|
52
|
+
if: runner.os != 'Windows'
|
|
53
|
+
run: cp target/${{ matrix.target }}/release/qvd-cli ${{ matrix.artifact }}
|
|
54
|
+
|
|
55
|
+
- name: Rename binary (windows)
|
|
56
|
+
if: runner.os == 'Windows'
|
|
57
|
+
run: cp target/${{ matrix.target }}/release/qvd-cli.exe ${{ matrix.artifact }}
|
|
58
|
+
|
|
59
|
+
- name: Upload to release
|
|
60
|
+
uses: softprops/action-gh-release@v2
|
|
61
|
+
with:
|
|
62
|
+
files: ${{ matrix.artifact }}
|
|
63
|
+
|
|
64
|
+
- name: Upload artifact
|
|
65
|
+
uses: actions/upload-artifact@v4
|
|
66
|
+
with:
|
|
67
|
+
name: ${{ matrix.artifact }}
|
|
68
|
+
path: ${{ matrix.artifact }}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
name: Publish to crates.io
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
publish:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: actions/checkout@v4
|
|
13
|
+
- uses: dtolnay/rust-toolchain@stable
|
|
14
|
+
- run: cargo publish
|
|
15
|
+
env:
|
|
16
|
+
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
name: Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
|
|
8
|
+
permissions:
|
|
9
|
+
contents: read
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
linux:
|
|
13
|
+
runs-on: ${{ matrix.platform.runner }}
|
|
14
|
+
strategy:
|
|
15
|
+
matrix:
|
|
16
|
+
platform:
|
|
17
|
+
- runner: ubuntu-latest
|
|
18
|
+
target: x86_64
|
|
19
|
+
- runner: ubuntu-latest
|
|
20
|
+
target: aarch64
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
- uses: actions/setup-python@v5
|
|
24
|
+
with:
|
|
25
|
+
python-version: "3.13"
|
|
26
|
+
- name: Build wheels
|
|
27
|
+
uses: PyO3/maturin-action@v1
|
|
28
|
+
with:
|
|
29
|
+
target: ${{ matrix.platform.target }}
|
|
30
|
+
args: --release --out dist -i python3.13
|
|
31
|
+
manylinux: auto
|
|
32
|
+
- name: Upload wheels
|
|
33
|
+
uses: actions/upload-artifact@v4
|
|
34
|
+
with:
|
|
35
|
+
name: wheels-linux-${{ matrix.platform.target }}
|
|
36
|
+
path: dist
|
|
37
|
+
|
|
38
|
+
windows:
|
|
39
|
+
runs-on: windows-latest
|
|
40
|
+
steps:
|
|
41
|
+
- uses: actions/checkout@v4
|
|
42
|
+
- uses: actions/setup-python@v5
|
|
43
|
+
with:
|
|
44
|
+
python-version: "3.13"
|
|
45
|
+
- name: Build wheels
|
|
46
|
+
uses: PyO3/maturin-action@v1
|
|
47
|
+
with:
|
|
48
|
+
args: --release --out dist -i python3.13
|
|
49
|
+
- name: Upload wheels
|
|
50
|
+
uses: actions/upload-artifact@v4
|
|
51
|
+
with:
|
|
52
|
+
name: wheels-windows-x64
|
|
53
|
+
path: dist
|
|
54
|
+
|
|
55
|
+
macos:
|
|
56
|
+
runs-on: ${{ matrix.platform.runner }}
|
|
57
|
+
strategy:
|
|
58
|
+
matrix:
|
|
59
|
+
platform:
|
|
60
|
+
- runner: macos-14
|
|
61
|
+
target: x86_64
|
|
62
|
+
- runner: macos-14
|
|
63
|
+
target: aarch64
|
|
64
|
+
steps:
|
|
65
|
+
- uses: actions/checkout@v4
|
|
66
|
+
- uses: actions/setup-python@v5
|
|
67
|
+
with:
|
|
68
|
+
python-version: "3.13"
|
|
69
|
+
- name: Build wheels
|
|
70
|
+
uses: PyO3/maturin-action@v1
|
|
71
|
+
with:
|
|
72
|
+
target: ${{ matrix.platform.target }}-apple-darwin
|
|
73
|
+
args: --release --out dist -i python3.13
|
|
74
|
+
- name: Upload wheels
|
|
75
|
+
uses: actions/upload-artifact@v4
|
|
76
|
+
with:
|
|
77
|
+
name: wheels-macos-${{ matrix.platform.target }}
|
|
78
|
+
path: dist
|
|
79
|
+
|
|
80
|
+
sdist:
|
|
81
|
+
runs-on: ubuntu-latest
|
|
82
|
+
steps:
|
|
83
|
+
- uses: actions/checkout@v4
|
|
84
|
+
- name: Build sdist
|
|
85
|
+
uses: PyO3/maturin-action@v1
|
|
86
|
+
with:
|
|
87
|
+
command: sdist
|
|
88
|
+
args: --out dist
|
|
89
|
+
- name: Upload sdist
|
|
90
|
+
uses: actions/upload-artifact@v4
|
|
91
|
+
with:
|
|
92
|
+
name: wheels-sdist
|
|
93
|
+
path: dist
|
|
94
|
+
|
|
95
|
+
publish:
|
|
96
|
+
name: Publish to PyPI
|
|
97
|
+
runs-on: ubuntu-latest
|
|
98
|
+
needs: [linux, windows, macos, sdist]
|
|
99
|
+
environment:
|
|
100
|
+
name: pypi
|
|
101
|
+
url: https://pypi.org/p/qvdrs
|
|
102
|
+
permissions:
|
|
103
|
+
id-token: write
|
|
104
|
+
steps:
|
|
105
|
+
- uses: actions/download-artifact@v4
|
|
106
|
+
with:
|
|
107
|
+
pattern: wheels-*
|
|
108
|
+
merge-multiple: true
|
|
109
|
+
path: dist
|
|
110
|
+
- name: Publish to PyPI
|
|
111
|
+
uses: PyO3/maturin-action@v1
|
|
112
|
+
with:
|
|
113
|
+
command: upload
|
|
114
|
+
args: --non-interactive --skip-existing dist/*
|