Repository navigation
tools.vpm: fix installing of modules with conflicting names, extend tests - #19961
Merged
spytheman merged 6 commits intoNov 23, 2023
Merged
Conversation
ttytm
force-pushed
the
tools/vpm/validate-manifest-before-install
branch
from
November 21, 2023 14:19
3e43ab4 to
9cb9129
Compare
remove obsolete last_errors, since the loop continues on error
spytheman
reviewed
Nov 21, 2023
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.
fixes: https://discord.com/channels/592103645835821068/618363736503353374/1176466062682882058
This includes validating module data running the actual install. This is also a major step to improve dependency resolution.
🤖[deprecated] Generated by Copilot at 9025e7a
This pull request refactors and tests the
vpmtool for managing modules in V. It uses thevmod.Manifeststruct for module metadata, improves the handling of module identifiers and statuses, and removes unused or redundant code. It also adds or updates tests for thefetch_manifestfunction and the installation of modules.🤖[deprecated] Generated by Copilot at 9025e7a
manifestto theModulestruct to store the parsed data from thev.modfile of a module (link)vexeto hold the quoted path of the V executable and use it instead of theVEXEenvironment variable in the tests and the source code (link, link, link, link, link, link, link, link, link, link, link, link, link, link, link, link, link)fetch_manifestto download and decode the manifest from the module URL, handle different cases of branch names, URL formats, and missing or invalid manifests, and relocate the module based on the manifest name (link, link, link, link, link)get_installedto theModulestruct to check the installation status and version of a module using thegit ls-remotecommand and set theis_installedandinstalled_versionfields accordingly (link)install.vfile to thecommon.vfile as part of theinstall_modulesfunction, which is shared by both theinstall.vand theupdate.vfiles (link, link, link)last_errors, which was used to compare the number of errors before and after installing a module (link, link)vexe, which was used to get the path of the V executable from theVEXEenvironment variable (link)