deepmodeling / deepmodeling/fpop
[Code scan] Fix package contents to exclude tests and include examples consistently
- Dominant language
- Python
- Stars
- 3
- Forks
- 13
- PR merge metrics
- No merged PRs in 30d
Description
This issue is a result of a Codex global code scan of `deepmodeling/fpop` at commit `b05b337590c31a5237b2dcbd9c0833b841c08cd4`.
Relevant code:
https://github.com/deepmodeling/fpop/blob/b05b337590c31a5237b2dcbd9c0833b841c08cd4/setup.py#L15-L23
https://github.com/deepmodeling/fpop/blob/b05b337590c31a5237b2dcbd9c0833b841c08cd4/MANIFEST.in#L1
Problem:
The wheel and source distribution currently package different unintended content:
- `packages=setuptools.find_packages()` includes the repository's top-level `tests` package because it is a Python package under the repo root.
- `MANIFEST.in` includes only `LICENSE`, so the source distribution omits the runnable `examples/**` files that are present in the repository.
Validation from the current tree:
```text
wheel has tests package True
sample tests entries ['tests/__init__.py', 'tests/constants.py', 'tests/context.py', 'tests/mocked_ops.py', 'tests/test_abacus_inputs.py']
sdist has examples False
sdist has tests True
```
Expected behavior:
Runtime distributions should not install a top-level `tests` package into user environments. If examples are intended to be shipped, `MANIFEST.in` should include them; otherwise documentation should not imply they are available from the source distribution.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with setup.py lines 15-23 and MANIFEST.in, then build both a wheel and source distribution and inspect their contents. Confirm the runtime package excludes the top-level tests package and resolve the examples discrepancy consistently, either by including examples in the source distribution or aligning the documentation with their absence.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 76/100