readcon 0.2.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.
- readcon-0.2.0/.github/workflows/bench.yml +46 -0
- readcon-0.2.0/.github/workflows/build_test.yml +52 -0
- readcon-0.2.0/.github/workflows/ci_docs.yml +46 -0
- readcon-0.2.0/.github/workflows/coverage.yml +73 -0
- readcon-0.2.0/.github/workflows/lint.yml +21 -0
- readcon-0.2.0/.github/workflows/python_wheels.yml +103 -0
- readcon-0.2.0/.gitignore +169 -0
- readcon-0.2.0/CHANGELOG.md +152 -0
- readcon-0.2.0/CMakeLists.txt +44 -0
- readcon-0.2.0/CODEOWNERS +13 -0
- readcon-0.2.0/CODE_OF_CONDUCT.md +132 -0
- readcon-0.2.0/Cargo.lock +1285 -0
- readcon-0.2.0/Cargo.toml +52 -0
- readcon-0.2.0/LICENSE +19 -0
- readcon-0.2.0/PKG-INFO +169 -0
- readcon-0.2.0/README.md +147 -0
- readcon-0.2.0/benches/iterator_bench.rs +161 -0
- readcon-0.2.0/build.rs +18 -0
- readcon-0.2.0/cbindgen.toml +22 -0
- readcon-0.2.0/cog.toml +37 -0
- readcon-0.2.0/dist-workspace.toml +13 -0
- readcon-0.2.0/docs/export.el +21 -0
- readcon-0.2.0/docs/orgmode/architecture.org +70 -0
- readcon-0.2.0/docs/orgmode/bindings.org +149 -0
- readcon-0.2.0/docs/orgmode/changelog.org +4 -0
- readcon-0.2.0/docs/orgmode/contributing.org +217 -0
- readcon-0.2.0/docs/orgmode/index.org +18 -0
- readcon-0.2.0/docs/orgmode/rpc.org +57 -0
- readcon-0.2.0/docs/orgmode/spec.org +92 -0
- readcon-0.2.0/docs/orgmode/tutorials.org +371 -0
- readcon-0.2.0/docs/source/conf.py +23 -0
- readcon-0.2.0/examples/c_api_sample.c +172 -0
- readcon-0.2.0/examples/cpp_api_sample.cpp +125 -0
- readcon-0.2.0/examples/meson.build +29 -0
- readcon-0.2.0/examples/rust_usage.rs +78 -0
- readcon-0.2.0/include/readcon-core.h +171 -0
- readcon-0.2.0/include/readcon-core.hpp +352 -0
- readcon-0.2.0/julia/ReadCon/Project.toml +14 -0
- readcon-0.2.0/julia/ReadCon/src/ReadCon.jl +8 -0
- readcon-0.2.0/julia/ReadCon/src/types.jl +56 -0
- readcon-0.2.0/julia/ReadCon/src/wrapper.jl +140 -0
- readcon-0.2.0/julia/ReadCon/test/runtests.jl +50 -0
- readcon-0.2.0/meson.build +128 -0
- readcon-0.2.0/meson_options.txt +12 -0
- readcon-0.2.0/pixi.lock +4555 -0
- readcon-0.2.0/pixi.toml +36 -0
- readcon-0.2.0/pyproject.toml +31 -0
- readcon-0.2.0/readme_src.org +76 -0
- readcon-0.2.0/resources/test/cuh2.con +231 -0
- readcon-0.2.0/resources/test/sulfolene.con +30 -0
- readcon-0.2.0/resources/test/tiny_cuh2.con +17 -0
- readcon-0.2.0/resources/test/tiny_cuh2.convel +26 -0
- readcon-0.2.0/resources/test/tiny_multi_cuh2.con +34 -0
- readcon-0.2.0/resources/test/tiny_multi_cuh2.convel +52 -0
- readcon-0.2.0/schema/ReadCon.capnp +44 -0
- readcon-0.2.0/scripts/org_to_md.sh +57 -0
- readcon-0.2.0/src/error.rs +47 -0
- readcon-0.2.0/src/ffi.rs +337 -0
- readcon-0.2.0/src/helpers.rs +197 -0
- readcon-0.2.0/src/iterators.rs +270 -0
- readcon-0.2.0/src/lib.rs +13 -0
- readcon-0.2.0/src/main.rs +77 -0
- readcon-0.2.0/src/parser.rs +584 -0
- readcon-0.2.0/src/python.rs +228 -0
- readcon-0.2.0/src/rpc/client.rs +95 -0
- readcon-0.2.0/src/rpc/mod.rs +6 -0
- readcon-0.2.0/src/rpc/server.rs +206 -0
- readcon-0.2.0/src/types.rs +94 -0
- readcon-0.2.0/src/writer.rs +162 -0
- readcon-0.2.0/tests/common/mod.rs +13 -0
- readcon-0.2.0/tests/convelwriter.rs +68 -0
- readcon-0.2.0/tests/conwriter.rs +42 -0
- readcon-0.2.0/tests/parsecon.rs +155 -0
- readcon-0.2.0/tests/parseconvel.rs +115 -0
- readcon-0.2.0/tests/python/test_readcon.py +108 -0
- readcon-0.2.0/valgrind.supp +46 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
name: Criterion benchmarks
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
pull_request:
|
|
6
|
+
|
|
7
|
+
concurrency:
|
|
8
|
+
group: critbench-${{ github.ref }}
|
|
9
|
+
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
critbench:
|
|
13
|
+
# This job will only run if the commit message (on push) or PR title
|
|
14
|
+
# (on pull_request) contains the string "[BENCH]".
|
|
15
|
+
if: |
|
|
16
|
+
(github.event_name == 'push' && contains(join(github.event.commits.*.message), '[BENCH]')) ||
|
|
17
|
+
(github.event_name == 'pull_request' && contains(github.event.pull_request.title, '[BENCH]'))
|
|
18
|
+
runs-on: ubuntu-22.04
|
|
19
|
+
name: Run benchmarks
|
|
20
|
+
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
|
|
24
|
+
- name: Install Rust toolchain
|
|
25
|
+
uses: actions-rs/toolchain@v1
|
|
26
|
+
with:
|
|
27
|
+
toolchain: stable
|
|
28
|
+
components: llvm-tools-preview
|
|
29
|
+
override: true
|
|
30
|
+
|
|
31
|
+
- name: setup sccache
|
|
32
|
+
uses: mozilla-actions/sccache-action@v0.0.9
|
|
33
|
+
with:
|
|
34
|
+
version: "v0.10.0"
|
|
35
|
+
|
|
36
|
+
- name: setup sccache environnement variables
|
|
37
|
+
run: |
|
|
38
|
+
echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV
|
|
39
|
+
echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV
|
|
40
|
+
echo "CMAKE_C_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV
|
|
41
|
+
echo "CMAKE_CXX_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV
|
|
42
|
+
|
|
43
|
+
- name: Benchmark
|
|
44
|
+
id: critbench
|
|
45
|
+
run: |
|
|
46
|
+
cargo bench
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
name: Basic tests
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request:
|
|
7
|
+
|
|
8
|
+
concurrency:
|
|
9
|
+
group: btest_rust-${{ github.ref }}
|
|
10
|
+
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
btest_rust:
|
|
14
|
+
runs-on: ubuntu-22.04
|
|
15
|
+
name: Run basic tests and build
|
|
16
|
+
|
|
17
|
+
steps:
|
|
18
|
+
- uses: actions/checkout@v4
|
|
19
|
+
|
|
20
|
+
- name: Install Rust toolchain
|
|
21
|
+
uses: actions-rs/toolchain@v1
|
|
22
|
+
with:
|
|
23
|
+
toolchain: stable
|
|
24
|
+
components: llvm-tools-preview
|
|
25
|
+
override: true
|
|
26
|
+
|
|
27
|
+
- name: setup sccache
|
|
28
|
+
uses: mozilla-actions/sccache-action@v0.0.9
|
|
29
|
+
with:
|
|
30
|
+
version: "v0.10.0"
|
|
31
|
+
|
|
32
|
+
- name: setup sccache environnement variables
|
|
33
|
+
run: |
|
|
34
|
+
echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV
|
|
35
|
+
echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV
|
|
36
|
+
echo "CMAKE_C_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV
|
|
37
|
+
echo "CMAKE_CXX_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV
|
|
38
|
+
|
|
39
|
+
- name: install dependencies
|
|
40
|
+
run: |
|
|
41
|
+
python -m pip install meson
|
|
42
|
+
sudo apt install valgrind
|
|
43
|
+
|
|
44
|
+
- name: Build and test
|
|
45
|
+
id: btest_rust
|
|
46
|
+
run: |
|
|
47
|
+
meson setup bbdir -Dwith_tests=True \
|
|
48
|
+
-Dwith_cpp=True \
|
|
49
|
+
-Dwith_examples=True \
|
|
50
|
+
--buildtype=release
|
|
51
|
+
meson test -C bbdir \
|
|
52
|
+
--wrap="valgrind --leak-check=full --show-leak-kinds=definite,indirect,possible --track-origins=yes --error-exitcode=1 --suppressions=$GITHUB_WORKSPACE/valgrind.supp --gen-suppressions=all"
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
name: Documentation
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [main]
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
pages: write
|
|
12
|
+
id-token: write
|
|
13
|
+
|
|
14
|
+
concurrency:
|
|
15
|
+
group: "pages"
|
|
16
|
+
cancel-in-progress: false
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
build:
|
|
20
|
+
runs-on: ubuntu-latest
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
|
|
24
|
+
- uses: prefix-dev/setup-pixi@v0.8.8
|
|
25
|
+
with:
|
|
26
|
+
environments: docs
|
|
27
|
+
|
|
28
|
+
- name: Build documentation
|
|
29
|
+
run: pixi r -e docs docbld
|
|
30
|
+
|
|
31
|
+
- name: Upload artifact
|
|
32
|
+
uses: actions/upload-pages-artifact@v3
|
|
33
|
+
with:
|
|
34
|
+
path: docs/build
|
|
35
|
+
|
|
36
|
+
deploy:
|
|
37
|
+
if: github.ref == 'refs/heads/main'
|
|
38
|
+
needs: build
|
|
39
|
+
runs-on: ubuntu-latest
|
|
40
|
+
environment:
|
|
41
|
+
name: github-pages
|
|
42
|
+
url: ${{ steps.deployment.outputs.page_url }}
|
|
43
|
+
steps:
|
|
44
|
+
- name: Deploy to GitHub Pages
|
|
45
|
+
id: deployment
|
|
46
|
+
uses: actions/deploy-pages@v4
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
name: Coverage
|
|
2
|
+
# Adapted from https://github.com/metatensor/metatensor/pull/939
|
|
3
|
+
|
|
4
|
+
on:
|
|
5
|
+
push:
|
|
6
|
+
branches: [main]
|
|
7
|
+
pull_request:
|
|
8
|
+
|
|
9
|
+
concurrency:
|
|
10
|
+
group: coverage-${{ github.ref }}
|
|
11
|
+
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
coverage:
|
|
15
|
+
runs-on: ubuntu-22.04
|
|
16
|
+
name: collect code coverage
|
|
17
|
+
# Adapted from https://www.scivision.dev/github-actions-latest-llvm-clang-flang/
|
|
18
|
+
strategy:
|
|
19
|
+
matrix:
|
|
20
|
+
llvm-version: [20]
|
|
21
|
+
env:
|
|
22
|
+
CMAKE_C_COMPILER: clang-${{ matrix.llvm-version }}
|
|
23
|
+
CMAKE_CXX_COMPILER: clang++-${{ matrix.llvm-version }}
|
|
24
|
+
CC: clang-${{ matrix.llvm-version }}
|
|
25
|
+
CXX: clang++-${{ matrix.llvm-version }}
|
|
26
|
+
|
|
27
|
+
steps:
|
|
28
|
+
- uses: actions/checkout@v4
|
|
29
|
+
|
|
30
|
+
- name: setup LLVM
|
|
31
|
+
run: |
|
|
32
|
+
wget https://apt.llvm.org/llvm.sh
|
|
33
|
+
chmod +x llvm.sh
|
|
34
|
+
sudo ./llvm.sh ${{ matrix.llvm-version }}
|
|
35
|
+
sudo apt-get update
|
|
36
|
+
sudo apt install --no-install-recommends clang-${{ matrix.llvm-version }}
|
|
37
|
+
|
|
38
|
+
- name: Install Rust toolchain
|
|
39
|
+
uses: actions-rs/toolchain@v1
|
|
40
|
+
with:
|
|
41
|
+
toolchain: stable
|
|
42
|
+
components: llvm-tools-preview
|
|
43
|
+
override: true
|
|
44
|
+
|
|
45
|
+
- name: install cargo-llvm-cov
|
|
46
|
+
uses: taiki-e/install-action@cargo-llvm-cov
|
|
47
|
+
|
|
48
|
+
- name: setup sccache
|
|
49
|
+
uses: mozilla-actions/sccache-action@v0.0.9
|
|
50
|
+
with:
|
|
51
|
+
version: "v0.10.0"
|
|
52
|
+
|
|
53
|
+
- name: setup sccache environnement variables
|
|
54
|
+
run: |
|
|
55
|
+
echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV
|
|
56
|
+
echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV
|
|
57
|
+
echo "CMAKE_C_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV
|
|
58
|
+
echo "CMAKE_CXX_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV
|
|
59
|
+
|
|
60
|
+
- name: generate rust code coverage
|
|
61
|
+
id: coverage
|
|
62
|
+
run: |
|
|
63
|
+
cargo llvm-cov --all-features --workspace \
|
|
64
|
+
--no-fail-fast --codecov \
|
|
65
|
+
--include-ffi \
|
|
66
|
+
--output-path rust_codecov.json
|
|
67
|
+
|
|
68
|
+
# - name: upload to codecov.io
|
|
69
|
+
# uses: codecov/codecov-action@v5
|
|
70
|
+
# with:
|
|
71
|
+
# fail_ci_if_error: true
|
|
72
|
+
# files: rust_codecov.json
|
|
73
|
+
# token: ${{ secrets.CODECOV_TOKEN }}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
name: Lint
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request:
|
|
5
|
+
branches: [main]
|
|
6
|
+
jobs:
|
|
7
|
+
lint:
|
|
8
|
+
runs-on: ubuntu-latest
|
|
9
|
+
|
|
10
|
+
steps:
|
|
11
|
+
- uses: actions/checkout@v4
|
|
12
|
+
with:
|
|
13
|
+
fetch-depth: 0
|
|
14
|
+
|
|
15
|
+
- name: Conventional commits check
|
|
16
|
+
uses: cocogitto/cocogitto-action@v3
|
|
17
|
+
|
|
18
|
+
- name: Audit for large files
|
|
19
|
+
uses: HaoZeke/large-file-auditor@v0.1.0
|
|
20
|
+
with:
|
|
21
|
+
file-size-threshold: "1M"
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
name: Python wheels
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- 'v*'
|
|
7
|
+
pull_request:
|
|
8
|
+
paths:
|
|
9
|
+
- 'src/**'
|
|
10
|
+
- 'Cargo.toml'
|
|
11
|
+
- 'Cargo.lock'
|
|
12
|
+
- 'pyproject.toml'
|
|
13
|
+
workflow_dispatch:
|
|
14
|
+
|
|
15
|
+
concurrency:
|
|
16
|
+
group: python-wheels-${{ github.ref }}
|
|
17
|
+
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
|
|
18
|
+
|
|
19
|
+
permissions:
|
|
20
|
+
contents: read
|
|
21
|
+
|
|
22
|
+
jobs:
|
|
23
|
+
sdist:
|
|
24
|
+
name: Build sdist
|
|
25
|
+
runs-on: ubuntu-latest
|
|
26
|
+
steps:
|
|
27
|
+
- uses: actions/checkout@v4
|
|
28
|
+
|
|
29
|
+
- name: Build sdist
|
|
30
|
+
uses: PyO3/maturin-action@v1
|
|
31
|
+
with:
|
|
32
|
+
command: sdist
|
|
33
|
+
args: --out dist
|
|
34
|
+
|
|
35
|
+
- name: Validate sdist
|
|
36
|
+
run: pipx run twine check --strict dist/*
|
|
37
|
+
|
|
38
|
+
- uses: actions/upload-artifact@v4
|
|
39
|
+
with:
|
|
40
|
+
name: sdist
|
|
41
|
+
path: dist/*.tar.gz
|
|
42
|
+
|
|
43
|
+
wheels:
|
|
44
|
+
name: Build wheels (${{ matrix.os }}, ${{ matrix.target }})
|
|
45
|
+
runs-on: ${{ matrix.os }}
|
|
46
|
+
strategy:
|
|
47
|
+
fail-fast: false
|
|
48
|
+
matrix:
|
|
49
|
+
include:
|
|
50
|
+
- os: ubuntu-latest
|
|
51
|
+
target: x86_64
|
|
52
|
+
- os: ubuntu-latest
|
|
53
|
+
target: aarch64
|
|
54
|
+
- os: macos-13
|
|
55
|
+
target: x86_64
|
|
56
|
+
- os: macos-14
|
|
57
|
+
target: aarch64
|
|
58
|
+
- os: windows-latest
|
|
59
|
+
target: x86_64
|
|
60
|
+
steps:
|
|
61
|
+
- uses: actions/checkout@v4
|
|
62
|
+
|
|
63
|
+
- uses: actions/setup-python@v5
|
|
64
|
+
with:
|
|
65
|
+
python-version: '3.12'
|
|
66
|
+
|
|
67
|
+
- name: Build wheels
|
|
68
|
+
uses: PyO3/maturin-action@v1
|
|
69
|
+
with:
|
|
70
|
+
target: ${{ matrix.target }}
|
|
71
|
+
args: --release --out dist --features python
|
|
72
|
+
manylinux: auto
|
|
73
|
+
# Cross-compile aarch64 on x86_64 runners
|
|
74
|
+
docker-options: ${{ matrix.target == 'aarch64' && '-e JEMALLOC_SYS_WITH_LG_PAGE=16' || '' }}
|
|
75
|
+
|
|
76
|
+
- name: Validate wheels
|
|
77
|
+
if: matrix.target != 'aarch64' || matrix.os != 'ubuntu-latest'
|
|
78
|
+
run: pipx run twine check --strict dist/*
|
|
79
|
+
|
|
80
|
+
- uses: actions/upload-artifact@v4
|
|
81
|
+
with:
|
|
82
|
+
name: wheels-${{ matrix.os }}-${{ matrix.target }}
|
|
83
|
+
path: dist/*.whl
|
|
84
|
+
|
|
85
|
+
publish:
|
|
86
|
+
name: Publish to PyPI
|
|
87
|
+
needs: [sdist, wheels]
|
|
88
|
+
runs-on: ubuntu-latest
|
|
89
|
+
if: startsWith(github.ref, 'refs/tags/v')
|
|
90
|
+
environment:
|
|
91
|
+
name: pypi
|
|
92
|
+
url: https://pypi.org/p/readcon
|
|
93
|
+
permissions:
|
|
94
|
+
id-token: write
|
|
95
|
+
steps:
|
|
96
|
+
- uses: actions/download-artifact@v4
|
|
97
|
+
with:
|
|
98
|
+
pattern: '{sdist,wheels-*}'
|
|
99
|
+
merge-multiple: true
|
|
100
|
+
path: dist/
|
|
101
|
+
|
|
102
|
+
- name: Publish to PyPI
|
|
103
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
readcon-0.2.0/.gitignore
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# Additions
|
|
2
|
+
*.profraw
|
|
3
|
+
compile_commands.json
|
|
4
|
+
|
|
5
|
+
# Documentation build artifacts
|
|
6
|
+
docs/build/
|
|
7
|
+
docs/doctrees/
|
|
8
|
+
docs/source/*.rst
|
|
9
|
+
docs/source/crates/
|
|
10
|
+
docs/source/api/
|
|
11
|
+
|
|
12
|
+
# pixi
|
|
13
|
+
.pixi/
|
|
14
|
+
###----------------###
|
|
15
|
+
### TopTal: rust ###
|
|
16
|
+
###----------------###
|
|
17
|
+
|
|
18
|
+
# Created by https://www.toptal.com/developers/gitignore/api/rust
|
|
19
|
+
# Edit at https://www.toptal.com/developers/gitignore?templates=rust
|
|
20
|
+
|
|
21
|
+
### Rust ###
|
|
22
|
+
# Generated by Cargo
|
|
23
|
+
# will have compiled files and executables
|
|
24
|
+
debug/
|
|
25
|
+
target/
|
|
26
|
+
|
|
27
|
+
# These are backup files generated by rustfmt
|
|
28
|
+
**/*.rs.bk
|
|
29
|
+
|
|
30
|
+
# MSVC Windows builds of rustc generate these, which store debugging information
|
|
31
|
+
*.pdb
|
|
32
|
+
|
|
33
|
+
# End of https://www.toptal.com/developers/gitignore/api/rust
|
|
34
|
+
|
|
35
|
+
###-------------------------###
|
|
36
|
+
### TopTal: rust-analyzer ###
|
|
37
|
+
###-------------------------###
|
|
38
|
+
|
|
39
|
+
# Created by https://www.toptal.com/developers/gitignore/api/rust-analyzer
|
|
40
|
+
# Edit at https://www.toptal.com/developers/gitignore?templates=rust-analyzer
|
|
41
|
+
|
|
42
|
+
### rust-analyzer ###
|
|
43
|
+
# Can be generated by other build systems other than cargo (ex: bazelbuild/rust_rules)
|
|
44
|
+
rust-project.json
|
|
45
|
+
|
|
46
|
+
# End of https://www.toptal.com/developers/gitignore/api/rust-analyzer
|
|
47
|
+
|
|
48
|
+
###----------------###
|
|
49
|
+
### GitHub: Rust ###
|
|
50
|
+
###----------------###
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
# Generated by cargo mutants
|
|
54
|
+
# Contains mutation testing data
|
|
55
|
+
**/mutants.out*/
|
|
56
|
+
|
|
57
|
+
# RustRover
|
|
58
|
+
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
|
|
59
|
+
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
|
60
|
+
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
|
61
|
+
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
|
62
|
+
#.idea/
|
|
63
|
+
|
|
64
|
+
###-------------###
|
|
65
|
+
### TopTal: c ###
|
|
66
|
+
###-------------###
|
|
67
|
+
|
|
68
|
+
# Created by https://www.toptal.com/developers/gitignore/api/c
|
|
69
|
+
# Edit at https://www.toptal.com/developers/gitignore?templates=c
|
|
70
|
+
|
|
71
|
+
### C ###
|
|
72
|
+
# Prerequisites
|
|
73
|
+
*.d
|
|
74
|
+
|
|
75
|
+
# Object files
|
|
76
|
+
*.o
|
|
77
|
+
*.ko
|
|
78
|
+
*.obj
|
|
79
|
+
*.elf
|
|
80
|
+
|
|
81
|
+
# Linker output
|
|
82
|
+
*.ilk
|
|
83
|
+
*.map
|
|
84
|
+
*.exp
|
|
85
|
+
|
|
86
|
+
# Precompiled Headers
|
|
87
|
+
*.gch
|
|
88
|
+
*.pch
|
|
89
|
+
|
|
90
|
+
# Libraries
|
|
91
|
+
*.lib
|
|
92
|
+
*.a
|
|
93
|
+
*.la
|
|
94
|
+
*.lo
|
|
95
|
+
|
|
96
|
+
# Shared objects (inc. Windows DLLs)
|
|
97
|
+
*.dll
|
|
98
|
+
*.so
|
|
99
|
+
*.so.*
|
|
100
|
+
*.dylib
|
|
101
|
+
|
|
102
|
+
# Executables
|
|
103
|
+
*.exe
|
|
104
|
+
*.out
|
|
105
|
+
*.app
|
|
106
|
+
*.i*86
|
|
107
|
+
*.x86_64
|
|
108
|
+
*.hex
|
|
109
|
+
|
|
110
|
+
# Debug files
|
|
111
|
+
*.dSYM/
|
|
112
|
+
*.su
|
|
113
|
+
*.idb
|
|
114
|
+
|
|
115
|
+
# Kernel Module Compile Results
|
|
116
|
+
*.mod*
|
|
117
|
+
*.cmd
|
|
118
|
+
.tmp_versions/
|
|
119
|
+
modules.order
|
|
120
|
+
Module.symvers
|
|
121
|
+
Mkfile.old
|
|
122
|
+
dkms.conf
|
|
123
|
+
|
|
124
|
+
# End of https://www.toptal.com/developers/gitignore/api/c
|
|
125
|
+
|
|
126
|
+
###-------------###
|
|
127
|
+
### GitHub: C ###
|
|
128
|
+
###-------------###
|
|
129
|
+
|
|
130
|
+
###-----------------###
|
|
131
|
+
### TopTal: macos ###
|
|
132
|
+
###-----------------###
|
|
133
|
+
|
|
134
|
+
# Created by https://www.toptal.com/developers/gitignore/api/macos
|
|
135
|
+
# Edit at https://www.toptal.com/developers/gitignore?templates=macos
|
|
136
|
+
|
|
137
|
+
### macOS ###
|
|
138
|
+
# General
|
|
139
|
+
.DS_Store
|
|
140
|
+
.AppleDouble
|
|
141
|
+
.LSOverride
|
|
142
|
+
|
|
143
|
+
# Icon must end with two \r
|
|
144
|
+
Icon
|
|
145
|
+
|
|
146
|
+
# Thumbnails
|
|
147
|
+
._*
|
|
148
|
+
|
|
149
|
+
# Files that might appear in the root of a volume
|
|
150
|
+
.DocumentRevisions-V100
|
|
151
|
+
.fseventsd
|
|
152
|
+
.Spotlight-V100
|
|
153
|
+
.TemporaryItems
|
|
154
|
+
.Trashes
|
|
155
|
+
.VolumeIcon.icns
|
|
156
|
+
.com.apple.timemachine.donotpresent
|
|
157
|
+
|
|
158
|
+
# Directories potentially created on remote AFP share
|
|
159
|
+
.AppleDB
|
|
160
|
+
.AppleDesktop
|
|
161
|
+
Network Trash Folder
|
|
162
|
+
Temporary Items
|
|
163
|
+
.apdisk
|
|
164
|
+
|
|
165
|
+
### macOS Patch ###
|
|
166
|
+
# iCloud generated files
|
|
167
|
+
*.icloud
|
|
168
|
+
|
|
169
|
+
# End of https://www.toptal.com/developers/gitignore/api/macos
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
All notable changes to this project will be documented in this file. See [conventional commits](https://www.conventionalcommits.org/) for commit guidelines.
|
|
3
|
+
|
|
4
|
+
- - -
|
|
5
|
+
## v0.2.0 - 2025-08-14
|
|
6
|
+
#### Buildsystem
|
|
7
|
+
- Bump for doctests - (bfe85e1) - HaoZeke
|
|
8
|
+
- Enable doctests - (1d79f3a) - HaoZeke
|
|
9
|
+
#### Continuous Integration
|
|
10
|
+
- Try to run benchmarks more - (049c077) - HaoZeke
|
|
11
|
+
#### Documentation
|
|
12
|
+
- Discuss the design.. - (9229f0d) - HaoZeke
|
|
13
|
+
#### Enhancements
|
|
14
|
+
- Single pass for the writer - (ae39401) - HaoZeke
|
|
15
|
+
- More ergonomic without constants for C++ - (7d78227) - HaoZeke
|
|
16
|
+
- Add a cache for better performance - (ec8244d) - HaoZeke
|
|
17
|
+
- Rework to use a writer object - (7029562) - HaoZeke
|
|
18
|
+
- Update to do better on benchmarks - (063a89c) - HaoZeke
|
|
19
|
+
- Setup the C++ API - (c54daf7) - HaoZeke
|
|
20
|
+
- Rework to use opaque pointers - (736bb71) - HaoZeke
|
|
21
|
+
- Rework the FFI for writes - (baae1c8) - HaoZeke
|
|
22
|
+
- Update the C API sample - (5854ccc) - HaoZeke
|
|
23
|
+
- Rework CLI to test things a bit - (a1177b6) - HaoZeke
|
|
24
|
+
- Add a basic writer - (9b825f8) - HaoZeke
|
|
25
|
+
#### Generated
|
|
26
|
+
- Update generated readme - (0277e8b) - HaoZeke
|
|
27
|
+
- Update with a void pointer - (f415740) - HaoZeke
|
|
28
|
+
#### Maintenance
|
|
29
|
+
- Bump versions - (3619311) - HaoZeke
|
|
30
|
+
- Even faster fails - (f729de5) - HaoZeke
|
|
31
|
+
- Cleanup and reduce scope - (a734715) - HaoZeke
|
|
32
|
+
- Cleanup - (3575fcf) - HaoZeke
|
|
33
|
+
- Fail faster for the FFI writer - (a343b86) - HaoZeke
|
|
34
|
+
- Nicer documentation - (84b33db) - HaoZeke
|
|
35
|
+
- Cleanup with constants - (70cad4f) - HaoZeke
|
|
36
|
+
- Minor cleanup - (a9892c6) - HaoZeke
|
|
37
|
+
- Remove dup - (dade44d) - HaoZeke
|
|
38
|
+
- Update format string - (a874a98) - HaoZeke
|
|
39
|
+
- Fix test [BENCH] - (b53fa91) - HaoZeke
|
|
40
|
+
- Use more constants - (973f924) - HaoZeke
|
|
41
|
+
- Update gitig - (64e9a79) - HaoZeke
|
|
42
|
+
- Add an inverse helper for writes - (6170681) - HaoZeke
|
|
43
|
+
- Minor documentation update - (b89931a) - HaoZeke
|
|
44
|
+
#### Tests
|
|
45
|
+
- Add some for writers - (0a59fcd) - HaoZeke
|
|
46
|
+
|
|
47
|
+
- - -
|
|
48
|
+
|
|
49
|
+
## v0.1.1 - 2025-07-19
|
|
50
|
+
#### Benchmarks
|
|
51
|
+
- Add iterator validation - (9c49c86) - HaoZeke
|
|
52
|
+
#### Bugfixes
|
|
53
|
+
- Fixup a misunderstanding of lifetimes - (038cc5c) - HaoZeke
|
|
54
|
+
#### Buildsystem
|
|
55
|
+
- Use the multi con for examples - (cbdfd6a) - HaoZeke
|
|
56
|
+
#### Continuous Integration
|
|
57
|
+
- Only run benchmarks on request - (222d727) - HaoZeke
|
|
58
|
+
- Kill useless release thing - (96aa79a) - HaoZeke
|
|
59
|
+
- Run benchmarks - (f60a32a) - HaoZeke
|
|
60
|
+
- Use valgrind for gha - (0b2179e) - HaoZeke
|
|
61
|
+
#### Enhancements
|
|
62
|
+
- Demonstrate more of the C++ usage - (f9f838c) - HaoZeke
|
|
63
|
+
- Setup the iterator usage in the C example - (596f65a) - HaoZeke
|
|
64
|
+
- Add a more elegant iterator interface to C++ - (706f14b) - HaoZeke
|
|
65
|
+
- Expose iterators through C interface - (aad794a) - HaoZeke
|
|
66
|
+
- Implement a basic forward skipper - (6e2c8a4) - HaoZeke
|
|
67
|
+
#### Generated
|
|
68
|
+
- Update for criterion - (f1fcfa2) - HaoZeke
|
|
69
|
+
#### Maintenance
|
|
70
|
+
- Fix category tags - (19b7499) - HaoZeke
|
|
71
|
+
- Bump version - (09ae400) - HaoZeke
|
|
72
|
+
- Stop hardcoding paths - (7dbb381) - HaoZeke
|
|
73
|
+
- More sane returns - (66fed6a) - HaoZeke
|
|
74
|
+
- Add a valgrind suppression file - (9ea9c89) - HaoZeke
|
|
75
|
+
- Rework to better explain behavior - (d65634a) - HaoZeke
|
|
76
|
+
- Try to use cargo-dist for generating things - (2ff5ce6) - HaoZeke
|
|
77
|
+
- Fix license and keywords - (aa016b2) - HaoZeke
|
|
78
|
+
#### Tests
|
|
79
|
+
- Add a test for the forward iterator - (0917875) - HaoZeke
|
|
80
|
+
|
|
81
|
+
- - -
|
|
82
|
+
|
|
83
|
+
## v0.1.0 - 2025-07-19
|
|
84
|
+
#### Buildsystem
|
|
85
|
+
- Remove unstable rust module for stable - (bb7a200) - HaoZeke
|
|
86
|
+
- Let meson run cargo tests too - (99d4362) - HaoZeke
|
|
87
|
+
- Finalize first pass for readcon core - (ddff2bc) - HaoZeke
|
|
88
|
+
#### Continuous Integration
|
|
89
|
+
- Check commits too - (0f636f1) - HaoZeke
|
|
90
|
+
- Setup a basic build and run workflow - (ff9be41) - HaoZeke
|
|
91
|
+
- Import lint and coverage - (36a3a54) - HaoZeke
|
|
92
|
+
#### Data
|
|
93
|
+
- Import test data from readCon - (c5cf85e) - HaoZeke
|
|
94
|
+
#### Documentation
|
|
95
|
+
- Kang from rgpycrumbs - (07435a7) - HaoZeke
|
|
96
|
+
- Minor updates - (f46b178) - HaoZeke
|
|
97
|
+
- Minor updates - (bcd4df7) - HaoZeke
|
|
98
|
+
- Add some more - (6529b22) - HaoZeke
|
|
99
|
+
- Add a bunch - (0ba1212) - HaoZeke
|
|
100
|
+
- Minor note - (1ecc856) - HaoZeke
|
|
101
|
+
- Minor update - (489e9df) - HaoZeke
|
|
102
|
+
- Update readme from readCon - (7751124) - HaoZeke
|
|
103
|
+
#### Enhancements
|
|
104
|
+
- Add and check a C++ interface - (b713997) - HaoZeke
|
|
105
|
+
- Add an example for the C API usage - (94cd71d) - HaoZeke
|
|
106
|
+
- First pass at a baseline C FFI - (577d185) - HaoZeke
|
|
107
|
+
- Start wiring up C connections for readcon - (5f35e54) - HaoZeke
|
|
108
|
+
- Add in first working CLI - (74c25fb) - HaoZeke
|
|
109
|
+
- Add in an iterator - (f7a618d) - HaoZeke
|
|
110
|
+
- Parse a single frame - (d79938a) - HaoZeke
|
|
111
|
+
- Setup the parse header function - (4491175) - HaoZeke
|
|
112
|
+
- Start with error types and a parser - (817e8a8) - HaoZeke
|
|
113
|
+
- Setup some nicer error handling - (f054edd) - HaoZeke
|
|
114
|
+
- Use cog - (7d09a68) - HaoZeke
|
|
115
|
+
#### Generated
|
|
116
|
+
- Update readme - (6524e55) - HaoZeke
|
|
117
|
+
- Vendor a copy of the generated header - (127dd98) - HaoZeke
|
|
118
|
+
#### Maintenance
|
|
119
|
+
- Use a tag prefix - (f1f68af) - HaoZeke
|
|
120
|
+
- Minor renaming - (a871512) - HaoZeke
|
|
121
|
+
- Be safer to ensure null termination - (ca239bc) - HaoZeke
|
|
122
|
+
- Update cog setup - (96cbe69) - HaoZeke
|
|
123
|
+
- Cleanup build for release details - (9af5629) - HaoZeke
|
|
124
|
+
- Additions for coverage - (3d985ee) - HaoZeke
|
|
125
|
+
- Stop using designated initializers for hpp - (9bab1f9) - HaoZeke
|
|
126
|
+
- Finish renaming things - (9e8b5d2) - HaoZeke
|
|
127
|
+
- Saner default settings, switch to C - (c93c562) - HaoZeke
|
|
128
|
+
- Enhance the cbindgen file - (54d2fcb) - HaoZeke
|
|
129
|
+
- Pin a rust version - (d7a6c76) - HaoZeke
|
|
130
|
+
- Silence clippy - (45dbe6c) - HaoZeke
|
|
131
|
+
- More output from the header - (04f0715) - HaoZeke
|
|
132
|
+
- Restructure into a helper and use mass - (eb8d91b) - HaoZeke
|
|
133
|
+
- Add cbindgen as a build dep - (97cb1c9) - HaoZeke
|
|
134
|
+
- Fixup for subproject usage - (699d8df) - HaoZeke
|
|
135
|
+
- Rename project - (2ed99c3) - HaoZeke
|
|
136
|
+
- Actually link up error struct - (94fb2bf) - HaoZeke
|
|
137
|
+
- Remember that usize is used for len() - (e51e012) - HaoZeke
|
|
138
|
+
- Start parsing a bit better - (5de8060) - HaoZeke
|
|
139
|
+
- Start working through lines - (c076bb5) - HaoZeke
|
|
140
|
+
- Add in a quick file reading CLI sample - (37422d4) - HaoZeke
|
|
141
|
+
- Add a test helper - (c896963) - HaoZeke
|
|
142
|
+
- Start with a project configuration - (5730540) - HaoZeke
|
|
143
|
+
- Initialize with cargo new - (059e4eb) - HaoZeke
|
|
144
|
+
#### Tests
|
|
145
|
+
- Update for multi con reads - (6590e83) - HaoZeke
|
|
146
|
+
- Add more unit tests - (7cd595d) - HaoZeke
|
|
147
|
+
- Add a more interesting test - (b4c0049) - HaoZeke
|
|
148
|
+
- Start with a simple test - (fbd71c7) - HaoZeke
|
|
149
|
+
|
|
150
|
+
- - -
|
|
151
|
+
|
|
152
|
+
Changelog generated by [cocogitto](https://github.com/cocogitto/cocogitto).
|