fix(plugins): skip python dependency install on modified_diff dry run - #3963
Open
EmilyRagan wants to merge 1 commit into
Open
EmilyRagan wants to merge 1 commit into
EmilyRagan wants to merge 1 commit into
Conversation
Co-Authored-By: Claude <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3963 +/- ##
==========================================
- Coverage 80.13% 80.13% -0.01%
==========================================
Files 901 901
Lines 68370 68365 -5
Branches 2699 2697 -2
==========================================
- Hits 54789 54784 -5
- Misses 12913 12916 +3
+ Partials 668 665 -3
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
EmilyRagan
marked this pull request as ready for review
September 30, 2026 22:49
EmilyRagan
marked this pull request as draft
September 30, 2026 22:51
EmilyRagan
force-pushed
the
fix_modified_diff_python_install
branch
from
September 30, 2026 22:58
708cd01 to
7fa6ac5
Compare
|
EmilyRagan
marked this pull request as ready for review
September 30, 2026 23:02
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Problem
POST /openc3-api/plugins/modified_diff(called byModifiedPluginDialog.loadDiffbefore a plugin upgrade) can return a 504.The endpoint runs
PluginModel.install_phase2(..., diff_only: true)inline in the request. The Python dependency block was guarded byunless validate_onlyrather thanunless dry_run, so a diff-only run still invokeduvinstall/pipinstall. For plugins that ship apyproject.tomlorrequirements.txt, the request waited on PyPI (minutes, or indefinitely on air-gapped systems) and also mutated the per-plugin venv, despitemodified_diffbeing documented as read-only.Change
dry_run, matching the other side effects ininstall_phase2.diff_onlyis set.validate_onlyis unchanged: it already feedsdry_run, and CLIvalidatestill needs it as a distinct mode.Not addressed
modified_diffcan still be slow for large plugins, because it does oneget_objectper target file and builds aSystemper target. That can be a follow-up if needed.🤖 Generated with Claude Code