AcademySoftwareFoundation / AcademySoftwareFoundation/OpenImageIO

Tracking Issue for Rust Bindings

Open
#4,632 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2.4k
Forks
698
Avg merge
3d 4h
Merged PRs (30d)
47

Description

The bindings are an experiment based on the [cxx Rust crate](https://crates.io/crates/cxx), with my initial implementation here: https://github.com/vfx-rs/oiio-bind

The current goal is to create a very minimal implementation of the `ImageInput` and `ImageOutput` as a prototype. This will be done in two stages:

1. Create the `oiio-sys` crate. The majority of the work has been done in https://github.com/vfx-rs/oiio-bind/issues/29.
2. Create the `oiio` crate. This has yet to start, but the goal is the API should look almost exactly like the current C++ API, except for error handling (Use Rust's `Result` type).

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the cxx crate experiment and the existing oiio-bind implementation, including its issue 29. Define the minimal ImageInput and ImageOutput scope for the oiio-sys crate, then plan the oiio crate API to match the C++ API with Rust Result-based error handling.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, rust
Domain
api, backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.