LizardByte / LizardByte/roadmap

Add borrow checker for c/c++

Open
#29 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

6+ months C C++ CMake effort:Extra-Large help wanted LizardByte/libdisplaydevice LizardByte/Sunshine LizardByte/tray planned priority:Medium
Dominant language
No language data
Stars
2
Forks
0
Avg merge
25m
Merged PRs (30d)
5

Description

### Is there an existing issue for this item?

- [x] I have searched the existing issues

### Repositories

LizardByte/Sunshine, LizardByte/tray, LizardByte/libdisplaydevice

### Languages/Skills/Technologies

C, C++, CMake

### Description

Been playing with rust a bit, and the concept of a borrow checker seems like a good idea to add to Sunshine. I expect we may find quite a few violations.

Potential options:
- https://github.com/shuaimu/refcell-cpp

### Estimated Effort

effort:Extra-Large

### Priority

priority:Medium

### Target Milestone

6+ months

### Dependencies

_No response_

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the Sunshine, tray, and libdisplaydevice repositories, then evaluate the linked refcell-cpp option against their C and C++ code. Establish the scope and integration approach before attempting changes. Done means a borrow-checking approach is selected and applied across the named repositories, with its violations identified.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, cmake, cpp
Domain
build-system, compilers, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.