rust-lang / rust-lang/git2-rs

Stop panicking when CString conversion fails

Open
#1,297 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
2.1k
Forks
450
Avg merge
11m
Merged PRs (30d)
1

Description

I started this at #1295 and #1296 and then realized that there are a lot more places that should be adjusted, so filing to discuss first.

CheckoutBuilder::path(), ancestor_label(), our_label(), their_label()
TreeUpdateBuilder::remove(), upsert()
DescribeFormatOptions::dirty_suffix()
DescribeOptions::pattern()
DiffOptions::old_prefix(), new_prefix(), pathspec()
EmailCreateOptions::subject_prefix()
ObjectType::from_str()
MergeFileOptions::ancestor_label(), our_label(), their_label()
MergeFileInput::path()
ProxyOptions::url()
RebaseOptions::rewrite_notes_ref()
Refspec::dst_matches(), src_matches(), transform(), rtransform()
FetchOptions::custom_headers()
PushOptions::custom_headers(), remote_push_options()
RepositoryInitOptions::workdir_path(), description(), template_path(), initial_head(), origin_url()
StatusOptions::pathspec()
Transaction::lock_ref(), set_target(), set_symbolic_target(), set_reflog(), remove()
Tree::get_name_bytes()

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 conversion behavior in the listed builder, options, transaction, tree, and refspec methods, along with issues #1295 and #1296. The scope is to agree on consistent handling when CString conversion fails across all named entry points; completion should cover each listed method without panicking.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
tooling
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.