Monad breaking change announcement: Approved verb names enforcement.

In order to prevent a mass usability nightmare with developers picking their own improvised cmdlet verbs, the Monad team, based on customer feedback, decided to enforce the use approved verbs.

The idea is to provide a more uniform and consistent interface to the end user. If a user needs to get something, he or she should know that what they are looking for is a get-something cmdlet. The user can then use the command discovery cmdlet (get-command get-*) to look for a getters and so forth...

With this change, if a non standard verb is to be used, the developer will be forced to add “__” to the beginning of the cmdlet name in order to make their cmdlet usable:

Example: in order to create a “play-nice” cmdlet where “play” is not an approved verb the developer will need to prepend the verb name with two underscore characters as follows “__play”.

Users can still get around this issue by simply aliasing the underscored cmdlet name as follows:

Set-Alias Play-Nice __Play-Nice

In order to ensure we have a complete list of valid verbs, we need to get your feedback on the list below to ensure we did not miss anything.

Please speak now or forever hold your peace J

Ubiquitous Verbs

Definition

Common Parameters

Obsoletes

Pair

Add

Add, append or attach an element

At, After, Before, Create, Filter, ID, Name, Value, Whatif

append, attach, concatenate, insert

Remove

Clear

Remove all the elements or content of a container

flush, erase, release, unmark, unset, nullify

Copy

Copy a resource to another name or another container

Acl, Overwrite, Recurse, Strict, Whatif

duplicate, clone, replicate

Get

/object /content /children

All, As, Compatible, Continuous, Count, Encoding, Exclude, Filter, Include, ID, Interval, Name, Path, Property, Recurse, Scope, Sortby,

read, open, cat, type, dir, obtain, dump, acquire, examine, find, search

Set

Lock

To protect from changes or deletion

secure, fasten

Unlock

Move

Move a resource

transfer, name, migrate

New

create a new resource

Description, ID, Name, Value

create, generate, build, make, allocate

Remove

Remove

Remove a resource from a container

(Get), Drain, Erase, Force, Whatif

delete, disconnect, detach, drop, purge, flush, erase, release

Add/New

Rename

Give a resource a new name

Set

/object /content /children

Passthru,

write, reset, assign, configure

Get

Join

to unite so as to form one unit

combine, unite, link, 1connect, relate, associate

split

Split

To become separated into parts, especially to undergo lengthwise division. Divided into portions, parts, or fragments

Divide, separate, fragment, disunite

join

Unlock

To undo the Lock operation. To give access to; open

unsecure, unfasten

Lock

Data Verbs

Definition

Obsoletes

Pair

Backup

Restore

Compare

Compare this resource with another one and produce a set of differences

Diff

Convert

Change from one encoding to another or from one unit base to another (e.g. feet to meters)

Export

Make a copy of a set of resources using an interchange format

(get), Add, As, AsScript, Delete, Description, FileName, Location, Strict, Whatif

extract, backup

Import

Import

Create a set of resources using an interchange format

FileName, Location

bulk load, load

Export

Initialize

Prepare a resource for use. Assign a beginning value to something

erase, renew, rebuild, reinitialize, setup

Limit

Limit the consumption of a resource or apply a constraint on a resource

quota

Merge

Take multiple instances and create a single instance

coalesce

Restore

Rollback state to a predefined snapshot/checkpoint

Checkpoint

Update

update or refresh a resource from a source of truth

refresh, renew, recalculate, reindex

Mount

Attach a named entity to a hierarchy at the pathname location. To set in position

fix, organize, prepare

Dismount

Dismount

To get off. To detach.

detach, take-down

Mount

out

direct to a port. Output something to a port.

output.

Lifecycle Verbs

Definition

Obsoletes

Pair

Disable

Stop and/or configure something to be unavailable (e.g unable to not start again)

Enable

Enable

Configure to be available (e.g. able to start)

Disable

Install

Settle in an indicated place or condition (optionally initializing for use)

setup, load

Uninstall

Restart

Terminate existing activity and begin it again (with the same or checkpointed configuration)

recycle

Resume

Begin an activity again after it was suspended

Suspend

Start

Begin an activity

launch, initiate, boot

Stop

Stop

Discontinue or cease an activity

End, kill, terminate, cancel

Start

Suspend

Suspend an activity temporarily

Pause

Resume

Uninstall

Install

Diagnostics verb

Definition

Obsoletes

Pair

Debug

Interactively interact with a resource or activity for the purpose finding a flaw or better understanding of what is occurring.

Measure

calculate/identify resources consumed by a specified operation or retrieve statistics about a resource

Ping

Determine whether a resource is alive and responding to requests

Resolve

Map a shorthand name will be bound to a longname

where, which

Test

Verify the operational validity or consistency of a resource

diagnose, verify, analyze, salvage, verify

Trace

Trace activities performed by a specified operation

Communications

Definition

Obsoletes

Pair

Send

Convey by an intermediary to a destination

put, broadcast, mail, fax,

receive

Receive

Take or acquire from a source

read, accept, peek,

send

Connect

Associate subsequent activities with a resource

disconnect

Disconnect

Connect

write

communicate or express. Display data.

display, communicate

read

read

To obtain (data) from a storage medium, such as a magnetic disk.

input

write

Security

Definition

Obsoletes

Pair

Grant

Revoke

Revoke

Grant

Block

prevent access to or usage of

unblock

Unblock

allow access to or usage of

block

Other Verbs

Definition

Obsoletes

Pair

Use

 

Wassim