Skip to content

Split requirements.txt into per-discipline files and add per-directory READMEs#91

Open
jordanpadams wants to merge 2 commits into
mainfrom
feature/split-requirements
Open

Split requirements.txt into per-discipline files and add per-directory READMEs#91
jordanpadams wants to merge 2 commits into
mainfrom
feature/split-requirements

Conversation

@jordanpadams
Copy link
Copy Markdown
Member

🗒️ Summary

Splits the monolithic requirements.txt into seven per-discipline requirements files so users can install only the packages needed for the notebooks they want to run. Adds per-directory README files with install instructions and notebook descriptions.

Changes:

  • Added 7 per-discipline requirements files at the repo root: requirements-geo.txt, requirements-img.txt, requirements-ppi.txt, requirements-sbn.txt, requirements-peppi-advanced.txt, requirements-training.txt, requirements-simple.txt
  • Updated top-level README.md with an Option A (install everything) / Option B (install per-discipline) guide including a quick-reference table
  • Added README.md for: notebooks/discipline/geo/, notebooks/discipline/img/, notebooks/discipline/ppi/, notebooks/discipline/sbn/, notebooks/generic/simple/, notebooks/generic/training_20260305/
  • Updated notebooks/generic/peppi-advanced/README.md to reference requirements-peppi-advanced.txt and corrected Python version requirement (3.13 → 3.12)

🤖 AI Assistance Disclosure

  • No AI assistance used
  • AI used for light assistance (e.g., suggestions, refactoring, documentation help, minor edits)
  • AI used for moderate content generation (AI generated some code or logic, but the developer authored or heavily revised the majority)
  • AI generated substantial portions of this code

Estimated % of code influenced by AI: 90%

⚙️ Test Data and/or Report

This PR contains only requirements files and documentation (no executable code changes). Validation steps:

  1. pip install -r requirements-peppi-advanced.txt and confirm notebooks in notebooks/generic/peppi-advanced/ run without import errors
  2. pip install -r requirements-geo.txt and confirm notebooks in notebooks/discipline/geo/ run without import errors
  3. Verify README renders correctly on GitHub

♻️ Related Issues

Resolves #90
Refs #89

🤓 Reviewer Checklist

Reviewers: Please verify the following before approving this pull request.

Documentation and PR Content

  • Documentation: README, Wiki, or inline documentation (Sphinx, Javadoc, Docstrings) have been updated to reflect these changes.
  • Issue Traceability: The PR is linked to a valid GitHub Issue
  • PR Title: The PR title is "user-friendly" clearly identifying what is being fixed or the new feature being added, that if you saw it in the Release Notes for a tool, you would be able to get the gist of what was done.

Security & Quality

  • SonarCloud: Confirmed no new High or Critical security findings.
  • Secrets Detection: Verified that the Secrets Detection scan passed and no sensitive information (keys, tokens, PII) is exposed.
  • Code Quality: Code follows organization style guidelines and best practices for the specific language (e.g., PEP 8, Google Java Style).

Testing & Validation

  • Test Accuracy: Verified that test data is accurate, representative of real-world PDS4 scenarios, and sufficient for the logic being tested.
  • Coverage: Automated tests cover new logic and edge cases.
  • Local Verification: (If applicable) Successfully built and ran the changes in a local or staging environment.

Maintenance

  • Backward Compatibility: Confirmed that these changes do not break existing downstream dependencies or API contracts (or that breaking changes are clearly documented).

Resolves #90 — splits the monolithic requirements.txt into seven
per-discipline/group files so users can install only what they need
for the notebooks they intend to run. Adds README files for each
notebook directory with install instructions and notebook descriptions.
Updates the top-level README with an Option A / Option B install guide.

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
@jordanpadams jordanpadams requested a review from a team as a code owner May 19, 2026 06:19
@jordanpadams jordanpadams added the enhancement New feature or request label May 19, 2026
- 04_peppi_with_doi: replace removed with_doi() with filter() using
  the pds:Citation_Information.pds:doi field (pds.peppi 0.8.x API change)
- recipe-15: add .fields() to reduce payload and cap iteration at 500
  products to prevent 300s timeout on unbounded Mars query
- requirements-sbn.txt: add ipywidgets for tqdm notebook progress bars

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@review-notebook-app
Copy link
Copy Markdown

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Split requirements.txt into per-discipline files and add per-directory READMEs

2 participants