ISISComputingGroup / ISISComputingGroup/streaming-data-types

Add mechanism for pinning `flatc` to a specific version

Open
#15 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

As per discussion with @Tom-Willemsen and @DanNixon (a while ago now!)

We should pin the `flatc` version somehow to avoid generated bindings changing on new versions and/or when adding schemas.

This could be done by renaming `generate_rust_bindings.py` to `generate_bindings.py`, which goes and pulls a pinned binary of flatc from github, sticks it in the current working directory, then calls `flatc --python` and `flatc --rust` with the appropriate arguments

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading generate_rust_bindings.py and the existing flatc invocation to understand how Python and Rust bindings are generated. Define the pinned flatc version and confirm how the binary is fetched from GitHub, then verify that both binding-generation commands still produce the expected outputs.

Written by the indexing model from the issue text.

Assessment

Tech stack
github, python, rust
Domain
build-system, tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.