Conversation
- Add json import and INSTALLED_VERSIONS_FILE constant - Add version field to Tool dataclass with versions for all tools - Remove docstring comments from get_version_args and get_extract_type - Implement get_expected_versions() function - Implement load_installed_versions() function - Implement save_installed_versions() function - Implement get_tools_needing_update() function - Update main() to check versions and only reinstall when needed - Update main() to save installed versions after installation Co-authored-by: harupy <17039389+harupy@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Update install.py to track tool versions and handle reinstalls
Add version tracking to bin/install.py to skip reinstalls when versions unchanged
Dec 1, 2025
Signed-off-by: harupy <17039389+harupy@users.noreply.github.com>
Signed-off-by: harupy <17039389+harupy@users.noreply.github.com>
harupy
approved these changes
Dec 1, 2025
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.
Related Issues/PRs
#xxxWhat changes are proposed in this pull request?
bin/install.pynow tracks installed tool versions in.installed_versions.jsonand only reinstalls when versions change or--force-reinstallis used.Changes:
versionfield toTooldataclass with explicit versions for all tools (taplo 0.9.3, typos 1.39.2, conftest 0.63.0, regal 0.36.1, buf 1.59.0)get_expected_versions(),load_installed_versions(),save_installed_versions(),get_tools_needing_update()main()to compare installed vs expected versions and skip tools already at correct versionBehavior:
--force-reinstall: reinstalls everything regardless of versionHow is this PR tested?
Verified all scenarios:
.installed_versions.json- all tools installedDoes this PR require documentation update?
Release Notes
Is this a user-facing change?
What component(s), interfaces, languages, and integrations does this PR affect?
Components
area/build: Build and test infrastructure for MLflowHow should the PR be classified in the release notes? Choose one:
rn/none- No description will be included. The PR will be mentioned only by the PR number in the "Small Bugfixes and Documentation Updates" sectionShould this PR be included in the next patch release?
Original prompt
Implement this to update
bin/install.pyso that it tracks installed tool versions and only reinstalls tools when their versions change or when a force reinstall is requested.💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.