Skip to content

Conversation

@SteveL-MSFT
Copy link
Member

@SteveL-MSFT SteveL-MSFT commented Nov 20, 2018

PR Summary

Add Enable-ExperimentalFeature and Disable-ExperimentalFeature cmdlets. Remove -ListAvailable from Get-ExperimentalFeature (Breaking Change). Add ArgumentCompleter for Get-ExperimentalFeature cmdlet. Refactor some existing Experimental Feature tests. Make ConfigScope public and renamed SystemWide to AllUsers.

Implements PowerShell/PowerShell-RFC#148

PR Checklist

@SteveL-MSFT SteveL-MSFT added the Breaking-Change breaking change that may affect users label Nov 20, 2018
@SteveL-MSFT SteveL-MSFT added the Review - Committee The PR/Issue needs a review from the PowerShell Committee label Nov 20, 2018
@rjmholt rjmholt added the Documentation Needed in this repo Documentation is needed in this repo label Nov 20, 2018
Copy link
Collaborator

@rjmholt rjmholt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have left some small comments, but it all looks pretty good to me. We should also make sure we start the documentation process before merging this PR.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should write to file only if the features array changes.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems like this should be a separate issue for WriteValueToFile(). Opened #8325

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, I disagree. We can save even running WriteValueToFile() code, which involves opening the file and reading data, by simply keeping track of whether we actually have a change to record.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unless we are concerned with file contention. If so, then I assume the last write to should win, and it makes sense to ensure the file actually reflects the current config state.

@SteveL-MSFT SteveL-MSFT force-pushed the experimental-feature-cmdlets branch from 808b72b to c8743f3 Compare November 20, 2018 20:41
Copy link
Contributor

@PaulHigin PaulHigin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@iSazonov iSazonov added CL-BreakingChange Indicates that a PR should be marked as a breaking change in the Change Log CL-Engine Indicates that a PR should be marked as an engine change in the Change Log labels Nov 21, 2018
@iSazonov
Copy link
Collaborator

Can we assign two CL- labels?

@SteveL-MSFT SteveL-MSFT added Committee-Reviewed PS-Committee has reviewed this and made a decision and removed Review - Committee The PR/Issue needs a review from the PowerShell Committee labels Nov 28, 2018
@SteveL-MSFT
Copy link
Member Author

@PowerShell/powershell-committee reviewed this as part of the RFC review and approves of the breaking change and current cmdlet design

add enable/disable-experimentalfeature cmdlets
updated existing tests
address CodeFactor issues
fix AppVeyor failure
@SteveL-MSFT SteveL-MSFT force-pushed the experimental-feature-cmdlets branch from c8743f3 to 4ba6cbc Compare November 29, 2018 21:59
address Paul and Rob's feedback
@SteveL-MSFT SteveL-MSFT force-pushed the experimental-feature-cmdlets branch from 4ba6cbc to 6727dd7 Compare November 29, 2018 22:02
@SteveL-MSFT SteveL-MSFT removed the Documentation Needed in this repo Documentation is needed in this repo label Nov 29, 2018
@SteveL-MSFT
Copy link
Member Author

Doc PR submitted and linked

Copy link
Collaborator

@iSazonov iSazonov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We lost the comment perUserConfigFile -> _perUserConfigFile for private.

iSazonov and others added 2 commits November 29, 2018 21:30
…ture.Tests.ps1

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
…ture.Tests.ps1

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
iSazonov and others added 5 commits November 29, 2018 21:31
…ture.Tests.ps1

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
…ture.Tests.ps1

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
…ture.Tests.ps1

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
…ture.Tests.ps1

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
Copy link
Collaborator

@iSazonov iSazonov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@SteveL-MSFT You skipped two my comments for Should -BeFalse

iSazonov and others added 2 commits November 30, 2018 09:25
…ture.Tests.ps1

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
…ture.Tests.ps1

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
@SteveL-MSFT
Copy link
Member Author

@iSazonov it was hidden under GitHub collapsing it. Thanks for calling it out. Fixed.

@iSazonov
Copy link
Collaborator

@SteveL-MSFT HelpUri do not pass tests.

Copy link
Collaborator

@iSazonov iSazonov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems we need remove the cmdlets from release versions.

…ableDisableExperimentalFeatureCommand.cs

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
vexx32 and others added 2 commits December 4, 2018 14:08
…ableDisableExperimentalFeatureCommand.cs

Co-Authored-By: SteveL-MSFT <slee@microsoft.com>
address Dongbo's feedback
@daxian-dbw
Copy link
Member

@SteveL-MSFT One test for Enable/Disable-ExperimentalFeature cmdlets failed in CI runs. Can you please take a look?

@SteveL-MSFT
Copy link
Member Author

@daxian-dbw I forgot to update the tests to reflect that the cmdlet no longer outputs the feature object. Will update.

fix tests to reflect that no object is output from cmdlets on success
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Breaking-Change breaking change that may affect users CL-BreakingChange Indicates that a PR should be marked as a breaking change in the Change Log CL-Engine Indicates that a PR should be marked as an engine change in the Change Log Committee-Reviewed PS-Committee has reviewed this and made a decision

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants