microsoft / microsoft/rust-guidelines

M-NO-GLOB-REEXPORTS is excessively broad

Open
#4 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

issue
Dominant language
Rust
Stars
200
Forks
25
Avg merge
3m
Merged PRs (30d)
1

Description

It is perfectly fine to re-export types within a crate for filesystem-structural reasons, if we want to split some types off to a separate file. Glob re-exports should only be discouraged for cases where the re-exported item is already public via a different path (e.g. part of a different crate or via another public module).

For filesystem-structural reasons, no review of what is being re-exported is expected, either - each file should have clear pub or lack thereof on its types, indicating what is part of the public API. As an alternative UX, generated documentation can be used for review.

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

No file, test, or entry point is named. Start by locating the repository guidance for M-NO-GLOB-REEXPORTS, then determine how its wording should distinguish structural re-exports from duplicate public paths; done means the guideline reflects the agreed scope and its review expectations.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.