This repository was archived by the owner on Jan 29, 2026. It is now read-only.
Ship multiple versions side-by-side#303
Closed
SidneyCogdill wants to merge 3 commits intomicrosoft:mainfrom
Closed
Ship multiple versions side-by-side#303SidneyCogdill wants to merge 3 commits intomicrosoft:mainfrom
SidneyCogdill wants to merge 3 commits intomicrosoft:mainfrom
Conversation
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Alternative to #302. Resolves issue #300.
Under this approach, there's no need to create a separate
proxy4package and deprecate theproxypackage. Users who rely on Proxy 3 can upgrade to Proxy 4 directly.The v3 implementation is directly copied from
3.3.0tag with the following changes:PRO_XXX->PRO_3_XXX__msft_lib_proxy3.pro::v3namespaceThe change to build system and package management is much less invasive than the alternative. However, this does require keeping the older sources. The CMake 4.0 breakage (<3.5 is now unsupported; CMake 3.5 is released 10 years ago) shows that it's almost impossible to remove old APIs without breaking people's workflow. This will require keeping the old implementations almost forever. #302 doesn't have this issue (theoretically that is also keeping the old implementations forever, except it's kept by
gitrepo rather than the source code).I've tested locally and this allows Proxy 3 and Proxy 4 to run at the same time as long as they're accessed using
pro::v3andpro::v4.Just like the alternate PR, please look at the individual commits for incremental changes. GitHub fails to track the changes.