Check declared Python dependencies before running scripts
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 55/100
Research direction
Start by locating repository-manifest handling for the [dependencies] section, then trace revision validation, activation, and the execution worker entry point. Use packaging for parsing and version comparisons and importlib.metadata for installed versions; done means each stage reports valid, missing, incompatible, or invalid declarations without invoking pip, and worker mismatches fail only the run.
Written by the indexing model from the issue text.
Description
Plugin Version
v0.0.1
Proposed functionality
Read Python requirements from the manifest's [dependencies] section and report whether each declaration is satisfied, missing, incompatible, or invalid.
Check during revision validation, before activation, and when the execution worker starts. Web and worker environments may differ.
Treat malformed requirements as source errors. Missing or incompatible installed packages should be retryable after an administrator fixes the environment, without changing source. A worker mismatch should fail that run with a useful message, not permanently invalidate the active revision.
Do not invoke pip, install packages, or shell out to inspect them. Package installation remains an administrator's responsibility.
Use case
A message naming the missing package and required version is easier to act on than an import traceback during production execution. Worker-side checks also catch differences between deployment images before the Script begins its work.
External dependencies
Use packaging for requirement parsing and version comparisons, and importlib.metadata for installed versions. Coordinate the declaration format with the repository-manifest feature. No additional service is needed.
- Dominant language
- Python
- Stars
- 8
- Forks
- 0
- Avg merge
- 9h 56m
- Merged PRs (30d)
- 29
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing 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.
More from netbox-community/netbox-scripts
-
Run links keep only the last value of repeated query parametersPossibly taken @pheus claimed this 1 day ago. Openapp: scripts severity: medium status: accepted type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
netbox-community/netbox-scripts#83 · 1 assignee ·
Maintainers usually reply within 1 day
-
app: scripts status: backlog type: documentation
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
netbox-community/netbox-scripts#80 ·
Maintainers usually reply within 1 day
-
Cleanup confirmation treats retained Job history as a blockerPossibly taken @pheus claimed this 1 day ago. Openapp: scripts severity: medium status: accepted type: bug
Difficulty 1/5 Under an hour Newbie friendliness 88/100
netbox-community/netbox-scripts#79 · 1 assignee ·
Maintainers usually reply within 1 day
-
Failed REST uploads expose internal error detailsPossibly taken @pheus claimed this 1 day ago. Openapp: scripts severity: medium status: accepted type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
netbox-community/netbox-scripts#77 · 1 assignee ·
Maintainers usually reply within 1 day
-
app: scripts severity: low status: backlog type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
netbox-community/netbox-scripts#76 ·
Maintainers usually reply within 1 day
All issues in netbox-community/netbox-scripts
Similar issues
-
needs-area-label
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
Maintainers usually reply within 2 days
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Official-Space-AI/OpenPhysGraspGen#114 ·
Maintainers usually reply within 2 days
-
changelog investigate
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
ramnes/notion-sdk-py#441 ·
-
qa_bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
NVIDIA-NeMo/Gym#5644 ·
Maintainers usually reply within 2 days
-
BUG: catalog database credentials printed to logs at startupPossibly taken @cjboyle claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Maintainers usually reply within 1 day