Soliciting New Verbs

PowerShell Team

PowerShell Team

With the recent changes in v2 to increase the visibility of the cmdlet design guidelines, we want to make sure we have a solid set of verbs on the approved verb list before we ship v2. We’ve already talked with a number of partners and customers and have made some recent changes to the verb list. In addition, we’d love to have feedback from our community on any holes you perceive we have in our current list of approved verbs.

To provide some context, here are the things we think about when deciding whether to add a new verb:

  • Little or no overlap with existing approved verbs
  • Broadly applicable to multiple technologies – must be domain agnostic
  • Used consistently with similar meaning across multiple contexts
  • Pairing with an opposite is good, but not required

When suggesting a new verb, it’s most helpful if you can include the following information in your suggestion:

  • Verb name
  • Description
  • Category
  • List of at least 5 significantly different applicable domains
  • List of at least 3 alternative verbs from the approved list
  • Pair with (optional)

For example, we recently approved Open and Close as new verbs in v2. Our internal discussions boiled down to the following:

  • Verb name: Open
  • Description: To set a resource to its opened state or make it accessible, visible, or available
  • Category: Common
  • List of at least 5 significantly different applicable domains: file, port, dialog, door, archive, container, account, mailbox, queue, chamber, scriptblock
  • List of at least 3 alternative verbs from the approved list: Set, Use, Enable, Show
  • Pair with: Close

Here is our current list of approved verbs:

VerbCategory
——————-
AddCommon
ClearCommon
CloseCommon
CopyCommon
EnterCommon
ExitCommon
FormatCommon
GetCommon
HideCommon
JoinCommon
LockCommon
MoveCommon
NewCommon
OpenCommon
PopCommon
PushCommon
RedoCommon
RemoveCommon
RenameCommon
ResetCommon
SearchCommon
SelectCommon
SetCommon
ShowCommon
SplitCommon
SwitchCommon
UndoCommon
UnlockCommon
BackupData
CheckpointData
CompareData
CompressData
ConvertData
ConvertFrom   Data
ConvertToData
DismountData
EditData
ExpandData
ExportData
ImportData
InitializeData
LimitData
MergeData
MountData
OutData
PublishData
RestoreData
SaveData
UnpublishData
UpdateData
CompleteLifecyle
DisableLifecycle
EnableLifecycle
InstallLifecycle
InvokeLifecycle
RegisterLifecycle
RestartLifecycle
ResumeLifecycle
StartLifecycle
StopLifecycle
SuspendLifecycle
UninstallLifecycle
UnregisterLifecycle
WaitLifecycle
DebugDiagnostic
MeasureDiagnostic
PingDiagnostic
RepairDiagnostic
ResolveDiagnostic
TestDiagnostic
TraceDiagnostic
ConnectCommunications
DisconnectCommunications
ReadCommunications
ReceiveCommunications
SendCommunications
WriteCommunications
BlockSecurity
GrantSecurity
RevokeSecurity
UnblockSecurity
UseOther

Thanks,
Dan Harman
Program Manager
Windows PowerShell

PowerShell Team
PowerShell Team

Follow PowerShell Team   

No Comments.