non-exported `lean_lib`s in Lake
Nobody has claimed this yet.
- Dominant language
- Lean
- Stars
- 9.2k
- Forks
- 990
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 175
Description
It would be nice to be able to mark lean_lib as "non-exported", e.g. so it can't be used in require, isn't mentioned in Reservoir, etc, etc.
Examples include the AesopTest test suite in Aesop, ProofWidgets.Demos, and possible Mathlib's many subsidiary libraries.
Requested on zulip and at https://github.com/leanprover/lean4/issues/4142#issuecomment-2111251656
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing how Lake handles lean_lib declarations and how libraries are exposed to require and Reservoir. Compare the AesopTest, ProofWidgets.Demos, and subsidiary-library examples, then define and verify behavior for non-exported libraries across those surfaces.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100