commit 6c54251308f91125f8fc8044f70fac69459295fe
parent c074cbe995d1b4b7ed3cd571f388b7ebcf44d071
Author: yao-msft <50888816+yao-msft@users.noreply.github.com>
Date: Fri, 21 Jun 2024 10:45:56 -0700
Make Store package download stable (#4570)
Diffstat:
9 files changed, 9 insertions(+), 57 deletions(-)
diff --git a/doc/Settings.md b/doc/Settings.md
@@ -323,17 +323,6 @@ Currently, this means that properly attributed configuration units (and only tho
},
```
-### storeDownload
-
-This feature enables packages to be downloaded from the Microsoft Store.
-You can enable the feature as shown below.
-
-```json
- "experimentalFeatures": {
- "storeDownload": true
- },
-```
-
### configureExport
This feature enables exporting a configuration file.
diff --git a/schemas/JSON/settings/settings.schema.0.2.json b/schemas/JSON/settings/settings.schema.0.2.json
@@ -276,11 +276,6 @@
"type": "boolean",
"default": false
},
- "storeDownload": {
- "description": "Enable support for downloading packages from the Microsoft Store",
- "type": "boolean",
- "default": false
- },
"configureExport": {
"description": "Enable support for the configure export command",
"type": "boolean",
diff --git a/src/AppInstallerCLICore/Workflows/DownloadFlow.cpp b/src/AppInstallerCLICore/Workflows/DownloadFlow.cpp
@@ -247,7 +247,6 @@ namespace AppInstaller::CLI::Workflow
if (installerDownloadOnly)
{
context <<
- EnsureFeatureEnabled(Settings::ExperimentalFeature::Feature::StoreDownload) <<
MSStoreDownload <<
ExportManifest;
}
diff --git a/src/AppInstallerCLITests/MSStoreDownloadFlow.cpp b/src/AppInstallerCLITests/MSStoreDownloadFlow.cpp
@@ -242,8 +242,6 @@ std::vector<SFS::AppContent> GetSfsAppContentsOverrideFunction(std::string_view
TEST_CASE("MSStoreDownloadFlow_Success", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -287,8 +285,6 @@ TEST_CASE("MSStoreDownloadFlow_Success", "[MSStoreDownloadFlow][workflow]")
TEST_CASE("MSStoreDownloadFlow_Success_SkipDependencies", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -328,8 +324,6 @@ TEST_CASE("MSStoreDownloadFlow_Success_SkipDependencies", "[MSStoreDownloadFlow]
TEST_CASE("MSStoreDownloadFlow_Success_SkipLicense", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -364,8 +358,6 @@ TEST_CASE("MSStoreDownloadFlow_Success_SkipLicense", "[MSStoreDownloadFlow][work
TEST_CASE("MSStoreDownloadFlow_Success_SpecificLocale", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -404,8 +396,6 @@ TEST_CASE("MSStoreDownloadFlow_Success_SpecificLocale", "[MSStoreDownloadFlow][w
TEST_CASE("MSStoreDownloadFlow_Success_SpecificArchitecture", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -445,8 +435,6 @@ TEST_CASE("MSStoreDownloadFlow_Success_SpecificArchitecture", "[MSStoreDownloadF
TEST_CASE("MSStoreDownloadFlow_Success_SpecificPlatform", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -486,8 +474,6 @@ TEST_CASE("MSStoreDownloadFlow_Success_SpecificPlatform", "[MSStoreDownloadFlow]
TEST_CASE("MSStoreDownloadFlow_Fail_TargetSkuNotFound", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -507,8 +493,6 @@ TEST_CASE("MSStoreDownloadFlow_Fail_TargetSkuNotFound", "[MSStoreDownloadFlow][w
TEST_CASE("MSStoreDownloadFlow_Fail_LocaleNotApplicable", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -528,8 +512,6 @@ TEST_CASE("MSStoreDownloadFlow_Fail_LocaleNotApplicable", "[MSStoreDownloadFlow]
TEST_CASE("MSStoreDownloadFlow_Fail_ArchitectureNotApplicable", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -550,8 +532,6 @@ TEST_CASE("MSStoreDownloadFlow_Fail_ArchitectureNotApplicable", "[MSStoreDownloa
TEST_CASE("MSStoreDownloadFlow_Fail_PlatformNotApplicable", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
@@ -572,8 +552,6 @@ TEST_CASE("MSStoreDownloadFlow_Fail_PlatformNotApplicable", "[MSStoreDownloadFlo
TEST_CASE("MSStoreDownloadFlow_Fail_Licensing", "[MSStoreDownloadFlow][workflow]")
{
- auto enableFeature = TestUserSettings::EnableExperimentalFeature(AppInstaller::Settings::ExperimentalFeature::Feature::StoreDownload);
-
TestCommon::TempDirectory tempDirectory("TestDownloadDirectory", false);
std::ostringstream downloadOutput;
diff --git a/src/AppInstallerCLITests/TestCommon.cpp b/src/AppInstallerCLITests/TestCommon.cpp
@@ -262,14 +262,13 @@ namespace TestCommon
std::unique_ptr<TestUserSettings> result = std::make_unique<TestUserSettings>(keepFileSettings);
// Due to the template usage, this needs to be updated for any features that want to use it.
- switch (feature)
- {
- case Settings::ExperimentalFeature::Feature::StoreDownload:
- result->Set<Settings::Setting::EFStoreDownload>(true);
- break;
- default:
- THROW_HR(E_NOTIMPL);
- }
+ // Currently no feature is used. Uncomment below when a feature needs to be used.
+ // switch (feature)
+ // {
+ // default:
+ // THROW_HR(E_NOTIMPL);
+ // }
+ UNREFERENCED_PARAMETER(feature);
return result;
}
diff --git a/src/AppInstallerCommonCore/ExperimentalFeature.cpp b/src/AppInstallerCommonCore/ExperimentalFeature.cpp
@@ -46,8 +46,6 @@ namespace AppInstaller::Settings
return userSettings.Get<Setting::EFConfiguration03>();
case ExperimentalFeature::Feature::ConfigureSelfElevation:
return userSettings.Get<Setting::EFConfigureSelfElevation>();
- case ExperimentalFeature::Feature::StoreDownload:
- return userSettings.Get<Setting::EFStoreDownload>();
case ExperimentalFeature::Feature::IndexV2:
return userSettings.Get<Setting::EFIndexV2>();
case ExperimentalFeature::Feature::ConfigureExport:
@@ -87,8 +85,6 @@ namespace AppInstaller::Settings
return ExperimentalFeature{ "Configuration Schema 0.3", "configuration03", "https://aka.ms/winget-settings", Feature::Configuration03 };
case Feature::ConfigureSelfElevation:
return ExperimentalFeature{ "Configure Self Elevation", "configureSelfElevate", "https://aka.ms/winget-settings", Feature::ConfigureSelfElevation };
- case Feature::StoreDownload:
- return ExperimentalFeature{ "Store Download", "storeDownload", "https://aka.ms/winget-settings", Feature::StoreDownload };
case Feature::IndexV2:
return ExperimentalFeature{ "Index V2", "indexV2", "https://aka.ms/winget-settings", Feature::IndexV2 };
case Feature::ConfigureExport:
diff --git a/src/AppInstallerCommonCore/Public/winget/ExperimentalFeature.h b/src/AppInstallerCommonCore/Public/winget/ExperimentalFeature.h
@@ -26,9 +26,8 @@ namespace AppInstaller::Settings
Resume = 0x2,
Configuration03 = 0x4,
ConfigureSelfElevation = 0x8,
- StoreDownload = 0x10,
- ConfigureExport = 0x20,
- IndexV2 = 0x40,
+ ConfigureExport = 0x10,
+ IndexV2 = 0x20,
Max, // This MUST always be after all experimental features
// Features listed after Max will not be shown with the features command
diff --git a/src/AppInstallerCommonCore/Public/winget/UserSettings.h b/src/AppInstallerCommonCore/Public/winget/UserSettings.h
@@ -74,7 +74,6 @@ namespace AppInstaller::Settings
EFResume,
EFConfiguration03,
EFConfigureSelfElevation,
- EFStoreDownload,
EFIndexV2,
EFConfigureExport,
// Telemetry
@@ -158,7 +157,6 @@ namespace AppInstaller::Settings
SETTINGMAPPING_SPECIALIZATION(Setting::EFResume, bool, bool, false, ".experimentalFeatures.resume"sv);
SETTINGMAPPING_SPECIALIZATION(Setting::EFConfiguration03, bool, bool, false, ".experimentalFeatures.configuration03"sv);
SETTINGMAPPING_SPECIALIZATION(Setting::EFConfigureSelfElevation, bool, bool, false, ".experimentalFeatures.configureSelfElevate"sv);
- SETTINGMAPPING_SPECIALIZATION(Setting::EFStoreDownload, bool, bool, false, ".experimentalFeatures.storeDownload"sv);
SETTINGMAPPING_SPECIALIZATION(Setting::EFIndexV2, bool, bool, true, ".experimentalFeatures.indexV2"sv);
SETTINGMAPPING_SPECIALIZATION(Setting::EFConfigureExport, bool, bool, false, ".experimentalFeatures.configureExport"sv);
// Telemetry
diff --git a/src/AppInstallerCommonCore/UserSettings.cpp b/src/AppInstallerCommonCore/UserSettings.cpp
@@ -262,7 +262,6 @@ namespace AppInstaller::Settings
WINGET_VALIDATE_PASS_THROUGH(EFResume)
WINGET_VALIDATE_PASS_THROUGH(EFConfiguration03)
WINGET_VALIDATE_PASS_THROUGH(EFConfigureSelfElevation)
- WINGET_VALIDATE_PASS_THROUGH(EFStoreDownload)
WINGET_VALIDATE_PASS_THROUGH(EFIndexV2)
WINGET_VALIDATE_PASS_THROUGH(EFConfigureExport)
WINGET_VALIDATE_PASS_THROUGH(AnonymizePathForDisplay)