diff --git a/.spelling b/.spelling new file mode 100644 index 0000000000..3ec340b9dd --- /dev/null +++ b/.spelling @@ -0,0 +1,720 @@ +# markdown-spellcheck spelling configuration file +# Format - lines beginning # are comments +# global dictionary is at the start, file overrides afterwards +# one word per line, to define a file override use ' - filename' +# where filename is relative to this configuration file +PowerShell +cmdlets +sudo +ps1 +NuGet +crontab +artifacts +cmdlet +remoting +WinRM +Win32 +powershell +powershell.exe +OpenSSH +env +ProgramFiles +ssh +CentOS +dockerfiles +ResGen +catalog +cataloged +macOS +CoreFX +homebrew +cmake +wget +FullCLR +CoreCLR +RFCs +behavior +StackOverflow +behaviors +enum +MS-PSRP +runtimes +json +hashtable +github +myget +submodule +submodules +AppVeyor +hotfix +whitespace +favor +artifact +favorite +DevOps +walkthrough +eBook +config +frontload +cmd +color +colors +lockfile +NUnit +TeamCity +ActiveDirectory +nupkg +nuget +analyzing +parameterized +booleans +param +nuspec +hashtables +nunit +exe +init +labeled + - demos/Azure/README.md +alpha.11 +AzureRM.NetCore.Preview +AzureRM.Profile.NetCore.Preview +AzureRM.Resources.NetCore.Preview +ProviderName +ExcludeVersion + - demos/crontab/README.md +DayOfWeek +u +Get-CronJob +Remove-CronJob +New-CronJob + - demos/DSC/readme.md +alpha.8 + - demos/install/README.md +download.sh + - demos/powershellget/README.md +PowerShellGet + - demos/python/README.md +_script.ps1 +_script.ps1. + - demos/rest/README.md +rest.ps1 +Invoke-WebRequest +ConvertFrom-Json + - demos/SSHRemoting/README.md +PSSessions +HostName +KeyPath +PSCredential +ssh.exe +sshd.exe +sshd +_config +PasswordAuthentication +sshs +NoLogo +NoProfile +RSAAuthentication +PubkeyAuthentication +TestUser +UbuntuVM1 +2kCbnhT2dUE6WCGgVJ8Hyfu1z2wE4lifaJXLO7QJy0Y +UbuntuVM1s +ComputerName +ComputerType +ConfigurationName +New-PSSession +Enter-PSSession +openssh-client +openssh-server + - demos/SystemD/readme.md +SystemD +journalctl +Get-SystemDJournal + - docker/README.md +andschwa's + - docs/building/internals.md +Catalog + - docs/building/macos.md +preview3 + - docs/community/governance.md +Calvo +AngelCalvo +khansen00 +PRs +PSReadline +Snover +jpsnover +Payette +BrucePay +lzybkr +SteveL-MSFT +Hemant +Mahawar +HemantMahawar +Aiello +joeyaiello +DON'Ts + - docs/debugging/README.md +OmniSharp +XTerm +CmdletProviderClasses +CommandDiscovery +CommandSearch +ConsoleHost +ConsoleHostRunspaceInit +ConsoleHostUserInterface +ConsoleLineOutput +DisplayDataQuery +FileSystemProvider +FormatFileLoading +FormatViewBinding +LocationGlobber +MemberResolution +MshSnapinLoadUnload +ParameterBinderBase +ParameterBinderController +ParameterBinding +PathResolution +PSDriveInfo +PSSnapInLoadUnload +RunspaceInit +SessionState +TypeConversion +TypeMatch +corehost + - docs/dev-process/breaking-change-contract.md +cdxml +p1 +int +cd + - docs/dev-process/map-json-files.md +System.Management.Automation.dll +sd +psl-monad +build.psm1 + - docs/FAQ.md +SS64.com +PoshCode +v6.0.0 +alpha.9 +TypeGen + - docs/git/submodules.md +GoogleTest +superproject + - docs/installation/linux.md +PSReadLine + - docs/installation/windows.md +Win8 +pwrshplugin.dll +Install-PowerShellRemoting +windir +System32 + - docs/KNOWNISSUES.md +cp + - docs/learning-powershell/create-powershell-scripts.md +NetIP.ps1. +RemoteSigned + - docs/learning-powershell/debugging-from-commandline.md +test.ps1 +Set-PSBreakpoint +celsius +_Debuggers + - docs/learning-powershell/powershell-beginners-guide.md +jen +dir +LastWriteTime + - docs/learning-powershell/README.md +PowerShell.com +PowerShellMagazine.com +TechNet +ScriptCenter +Pluralsight +Lynda.com + - docs/learning-powershell/using-vscode.md +OSs +helloworld.ps1 +launch.json + - docs/learning-powershell/working-with-powershell-objects.md +ForEach-Object + - docs/maintainers/issue-management.md +omi +PackageManagement + - docs/maintainers/pull-request-process.md +ci-system + - docs/maintainers/README.md +Sergei +Vorobev +vors +Dongbo +daxian-dbw +TravisEz13 +mirichmo +Schwartzmeyer +andschwa + - docs/maintainers/releasing.md +v6 +alpha.7 +Toolset +WiX +2012r2 + - docs/testing-guidelines/PowerShellCoreTestStatus.md +Get-Acl +Set-Acl +adhoc +Register-ArgumentCompleter +Get-AuthenticodeSignature +Set-AuthenticodeSignature +Export-BinaryMiLog +Import-BinaryMiLog +Get-ChildItem +Get-CimAssociatedInstance +Get-CimClass +Register-CimIndicationEvent +Get-CimInstance +New-CimInstance +Remove-CimInstance +Set-CimInstance +Invoke-CimMethod +Get-CimSession +New-CimSession +Remove-CimSession +New-CimSessionOption +Export-Clixml +Import-Clixml +Get-ComputerInfo +ConvertFrom-Csv +ConvertTo-Csv +Export-Csv +Import-Csv +Find-DscResource +Register-EngineEvent +Unregister-Event +Get-EventSubscriber +Get-ExecutionPolicy +Set-ExecutionPolicy +New-FileCatalog +Test-FileCatalog +Get-FileHash +Export-FormatData +Get-FormatData +Update-FormatData +New-Guid +Get-InstalledModule +Get-InstalledScript +Clear-ItemProperty +Copy-ItemProperty +Get-ItemProperty +Move-ItemProperty +New-ItemProperty +Remove-ItemProperty +Rename-ItemProperty +Set-ItemProperty +Get-ItemPropertyValue +ConvertTo-Json +Get-LocalGroup +New-LocalGroup +Remove-LocalGroup +Rename-LocalGroup +Set-LocalGroup +Add-LocalGroupMember +Get-LocalGroupMember +Remove-LocalGroupMember +Import-LocalizedData +Disable-LocalUser +Enable-LocalUser +Get-LocalUser +New-LocalUser +Remove-LocalUser +Rename-LocalUser +Set-LocalUser +Get-LogProperties +Set-LogProperties +New-ModuleManifest +Test-ModuleManifest +Update-ModuleManifest +Export-ModuleMember +Register-ObjectEvent +Find-PackageProvider +Get-PackageProvider +Import-PackageProvider +Install-PackageProvider +Get-PackageSource +Register-PackageSource +Set-PackageSource +Unregister-PackageSource +Import-PowerShellDataFile +Disable-PSBreakpoint +Enable-PSBreakpoint +Get-PSBreakpoint +Remove-PSBreakpoint +Get-PSCallStack +Set-PSDebug +Get-PSDrive +New-PSDrive +Remove-PSDrive +Enter-PSHostProcess +Exit-PSHostProcess +Get-PSHostProcessInfo +Get-PSProvider +Get-PSReadlineKeyHandler +Remove-PSReadlineKeyHandler +Set-PSReadlineKeyHandler +Get-PSReadlineOption +Set-PSReadlineOption +Get-PSRepository +Register-PSRepository +Set-PSRepository +Unregister-PSRepository +New-PSRoleCapabilityFile +Connect-PSSession +Disconnect-PSSession +Exit-PSSession +Get-PSSession +Receive-PSSession +Remove-PSSession +Get-PSSessionCapability +Disable-PSSessionConfiguration +Enable-PSSessionConfiguration +Get-PSSessionConfiguration +Register-PSSessionConfiguration +Set-PSSessionConfiguration +Unregister-PSSessionConfiguration +New-PSSessionConfigurationFile +Test-PSSessionConfigurationFile +New-PSSessionOption +Disable-PSTrace +Enable-PSTrace +New-PSTransportOption +Disable-PSWSManCombinedTrace +Enable-PSWSManCombinedTrace +Invoke-RestMethod +Find-RoleCapability +Debug-Runspace +Get-Runspace +Disable-RunspaceDebug +Enable-RunspaceDebug +Get-RunspaceDebug +New-ScriptFileInfo +Test-ScriptFileInfo +Update-ScriptFileInfo +ConvertFrom-SddlString +ConvertFrom-SecureString +ConvertTo-SecureString +Set-StrictMode +ConvertFrom-StringData +New-TemporaryFile +Get-TimeZone +Set-TimeZone +Get-TypeData +Remove-TypeData +Update-TypeData +Get-UICulture +Get-WinEvent +New-WinEvent +Connect-WSMan +Disconnect-WSMan +Test-WSMan +Invoke-WSManAction +Disable-WSManCredSSP +Enable-WSManCredSSP +Get-WSManCredSSP +Get-WSManInstance +New-WSManInstance +Remove-WSManInstance +Set-WSManInstance +Set-WSManQuickConfig +New-WSManSessionOption +Disable-WSManTrace +Enable-WSManTrace +ConvertTo-Xml +Select-xml + - docs/testing-guidelines/testing-guidelines.md +100ms +xUnit +Api +Runspace +MessageAnalyzer +TabCompletion +Interop +DotNet +NativeExecution +Microsoft.PowerShell.Archive +Microsoft.PowerShell.Core +Microsoft.PowerShell.Diagnostics +Microsoft.PowerShell.Management +Microsoft.PowerShell.Security +Microsoft.PowerShell.Utility + - docs/testing-guidelines/TestRoadmap.md +Syslog +OpenCover +corefx +DotCover +loopback +WSMan +Downlevel +KPIs +PowerBI +MVPs +org + - demos/Apache/readme.md +Get-ApacheVHost +Get-ApacheModule +Restart-ApacheHTTPserver +New-ApacheVHost + - docs/testing-guidelines/WritingPesterTests.md +FullyQualifiedErrorId +FQErrorId +TestDrive +Get-Childitem +PSDefaultParameterValues-skip +nGet-MultiLineString +nGet-ContentOut-String +StreamDescribeCIFeatureScenarioDescribeContextItContextContextBeforeAllAfterAllBeforeEachAfterEachshould +throw-testcasesItMockDescribe +ShouldShouldIt + - README.md +opencode +microsoft.com + - src/libpsl-native/README.md +libpsl-native +C#'s +codepage +Ansi + - src/Microsoft.PowerShell.PSReadLine/en-US/PSReadline.md +Microsoft.PowerShell.KeyHandler +_PSReadline +coloring +ScriptBlock +ConsoleKeyInfo +BriefDescription +HistorySearchBackward +EditMode +ContinuationPrompt +ContinuationPromptForegroundColor +ConsoleColor +ContinuationPromptBackgroundColor +EmphasisForegroundColor +EmphasisBackgroundColor +ErrorForegroundColor +ErrorBackgroundColor +HistoryNoDuplicates +AddToHistoryHandler +Func +ValidationHandler +ValidateAndAcceptLine +ToString +HistorySearchCursorMovesToEnd +MaximumHistoryCount +Int32 +MaximumKillRingCount +ResetTokenColors +ShowToolTips +ExtraPromptLineCount +DingTone +BellStyle +DingDuration +50ms +CompletionQueryItems +WordDelimiters +ForwardWord +KillWord +HistorySearchCaseSensitive +ReverseSearchHistory +HistorySaveStyle +SaveIncrementally +SaveAtExit +SaveNothing +HistorySavePath +AppData +host.Name +_history.txt +TokenKind +TokenClassification +ForegroundColor +BackgroundColor + - src/Microsoft.PowerShell.SDK/README.md +metapackage +project.json + - src/Modules/README.md +ps1xml +psm1 +psd1 + - src/Modules/Shared/Pester/CHANGELOG.md +GH-362 +GH-368 +TestName +Invoke-Pester's +BeforeEach +AfterEach +GH-326 +BeOfType +GH-327 +PSv3 +PSCommandPath +GH-333 +GH-322 +GH-323 +Assert-MockCalled +GH-324 +ExclusiveFilter +ParameterFilter +OutputXml +EnableExit +GH-281 +PassThru +CodeCoverage +GH-341 +GH-346 +v2 +ArgumentList +GH-354 +GH-358 +ExecutionContext +GH-307 +GetDynamicParameters +GH-295 +MyInvocation +GH-304 +Get-MockDynamicParameters +dynamicparam +GH-306 +GH-267 +GH-266 +Tests.ps1. +GH-272 +StrictMode +GH-274 +InModuleScope +GH-276 +GH-254 +ModuleName +GH-278 +GH-290 +ISESteroids +GH-249 +BeforeAll +AfterAll +ErrorAction +v3 +BeGreaterThan +BeLessThan +GH-223 +GH-232 +ExcludeTagFilter +GH-234 +FunctionName +GH-215 +OutputFile +OutputFormat +LegacyNUnitXml +GH-200 +GH-203 +GH-209 +nuget.exe +BeExactly +GH-192 +GH-195 +GH-149 +GH-150 +Validate-Xml +GH-152 +GH-155 +GH-156 +GH-158 +GH-163 +GH-164 +GH-165 +GH-166 +GH-167 +GH-147 +PesterThrowFailureMessage +GH-171 +Pester.bat +GH-172 +GH-174 +GH-168 +GH-176 +GH-185 +GH-183 +GH-186 +GH-187 +GH-188 +v3.0 +GH-190 +beta2 +GH-148 +GH-144 +GH-143 +GH-139 +GH-123 +ExecutionPolicy +pester.bat +GH-130 +GH-126 +GH-129 +ShouldArgs +GH-134 +PesterException +GH-136 +GH-135 +GH-137 +GH-52 +GH-71 +Get-TestDriveItem +GH-70 +GH-68 +Passthu +GH-69 +GH-58 +GH-50 +GH-49 +GH-61 +GH-90 +GH-92 +GH-86 +GH-98 +GH-99 +GH-100 +GH-94 +GH-109 +GH-107 +GH-113 +GH-95 +GH-102 +GH-84 +GH-46 +GH-114 +Write-UsageForNewFixture +GH-125 +GH-40 +GH-42 +EnableLegacyAssertions +EnableLegacyExpectations +GH-9 +GH-35 +GH-37 +BeNullOrEmpty +GH-39 +DisableOldStyleAssertions +GH-19 +GH-27 +GH-13 +should.not +_be +GH-38 +GH-26 + - src/Modules/Shared/Pester/README.md +v1.0. +powershell-bdd-testing-pester-screencast +pester-bdd-for-the-system-administrator + - src/powershell/README.md +powershell-unix + - src/TypeCatalogGen/README.md +TypeCatalogGen + - test/csharp/README.md +AssemblyLoadContext + - test/README.md +csharp +fullclr +shebang diff --git a/.travis.yml b/.travis.yml index db75aa4854..b2295b318b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -27,4 +27,11 @@ install: # Default bundler version is buggy - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then rvm use 2.2.1; gem uninstall bundler -v1.13.1; fi -script: ./tools/travis.sh +script: + - ./tools/travis.sh + # spellcheck + - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then + nvm install 6.4.0 && + npm install -g markdown-spellcheck@0.11.0 && + mdspell "**/*.md" --ignore-numbers --ignore-acronyms --report; + fi \ No newline at end of file diff --git a/docs/KNOWNISSUES.md b/docs/KNOWNISSUES.md index e1d66039cd..1f6da3be83 100644 --- a/docs/KNOWNISSUES.md +++ b/docs/KNOWNISSUES.md @@ -221,6 +221,6 @@ Remoting Endpoint Creation on Nano Server TP5 The [script](https://github.com/PowerShell/PowerShell/blob/master/docs/installation/windows.md) to create a new WinRM remoting endpoint (`Install-PowerShellRemoting.ps1`) encounters a bug in the in-box PowerShell Core on Nano Server TP5. -The bug causes the script to create an incorrect directory for the plugin and may result in creation of an invalid remoting endpoint. +The bug causes the script to create an incorrect directory for the plug-in and may result in creation of an invalid remoting endpoint. When the same command is run for the second time, the script executes as expected and successfully creates the WinRM remoting endpoint. The bug in in-box PowerShell Core on Nano Server TP5 does not occur in later versions of Nano Server. diff --git a/docs/debugging/README.md b/docs/debugging/README.md index 6683190014..fb074aa788 100644 --- a/docs/debugging/README.md +++ b/docs/debugging/README.md @@ -91,11 +91,11 @@ The `-PSHost` specifies the sink, in this case the console host, so we can see the tracing messages. The `-Name` chooses the list of tracers to enable. -LLDB with SOS plugin -==================== +LLDB with SOS plug-in +===================== The `./tools/debug.sh` script can be used to launch PowerShell inside of LLDB -with the SOS plugin provided by .NET Core. This provides an additional way to +with the SOS plug-in provided by .NET Core. This provides an additional way to debug PowerShell on Linux, but VS Code is recommended for a better user experience (and its single-stepping capabilities). diff --git a/docs/dev-process/breaking-change-contract.md b/docs/dev-process/breaking-change-contract.md index 6e42198991..f53d1cae0c 100644 --- a/docs/dev-process/breaking-change-contract.md +++ b/docs/dev-process/breaking-change-contract.md @@ -44,7 +44,7 @@ Examples: + Change in parsing of input and throwing new errors (even if parsing behavior is not specified in the docs) + Example: a script may be using a JSON parser that is forgiving to minor syntactic errors in the JSON text. Changing that parser to be more rigorous in its processing would result in errors being thrown when no error was generated in the past thus breaking scripts. -Judiciously making changes in these type of features require judgment: how predictable, obvious, consistent was the behavior? In general, a significant external preview of the change would need to be done also possibly requiring an RFC to be created to allow for community input on the proposal. +Judiciously making changes in these type of features require judgement: how predictable, obvious, consistent was the behavior? In general, a significant external preview of the change would need to be done also possibly requiring an RFC to be created to allow for community input on the proposal. ## Bucket 3: Unlikely Grey Area @@ -58,7 +58,7 @@ Examples: + Example: changes to formatting for an object type. We have always considered the output formatting of an object to be a user experience issue and thus open for change. Since PowerShell pipes objects not text, changes to the way an object is rendered to text is generally considered to be allowed. -As with type 2 changes, these require judgment: what is reasonable and what’s not? +As with type 2 changes, these require judgement: what is reasonable and what’s not? ## Bucket 4: Clearly Non-Public diff --git a/docs/installation/windows.md b/docs/installation/windows.md index f3085f796c..17dc975251 100644 --- a/docs/installation/windows.md +++ b/docs/installation/windows.md @@ -18,7 +18,7 @@ There is a shortcut placed in the Start Menu upon installation. # Instructions to Create a Remoting Endpoint -Beginning with 6.0.0-alpha.9, the PowerShell package for Windows includes a WinRM plugin (pwrshplugin.dll) and an installation script (Install-PowerShellRemoting.ps1). +Beginning with 6.0.0-alpha.9, the PowerShell package for Windows includes a WinRM plug-in (pwrshplugin.dll) and an installation script (Install-PowerShellRemoting.ps1). These files enable PowerShell to accept incoming PowerShell remote connections when its endpoint is specified. ## Motivation @@ -33,10 +33,10 @@ For more details, please see issue [#1193](https://github.com/PowerShell/PowerSh The script -1. Creates a directory for the plugin within %windir%\System32\PowerShell +1. Creates a directory for the plug-in within %windir%\System32\PowerShell 2. Copies pwrshplugin.dll to that location 3. Generates a configuration file -4. Registers that plugin with WinRM +4. Registers that plug-in with WinRM ## Registration The script must be executed within an Administrator-level PowerShell session and runs in two modes. diff --git a/docs/testing-guidelines/PowerShellCoreTestStatus.md b/docs/testing-guidelines/PowerShellCoreTestStatus.md index 5e0e1d6e17..6cb2853080 100644 --- a/docs/testing-guidelines/PowerShellCoreTestStatus.md +++ b/docs/testing-guidelines/PowerShellCoreTestStatus.md @@ -221,7 +221,7 @@ The follow table represents the test coverage of the PowerShell Core Cmdlets in |Remove-PSDrive|delivered|delivered|yes| |Enter-PSHostProcess|delivered|delivered|yes| |Exit-PSHostProcess|delivered|delivered|yes| -|Get-PSHostProcessInfo|delivered|delivered|fails on linux| +|Get-PSHostProcessInfo|delivered|delivered|fails on Linux| |Get-PSProvider|delivered|delivered|yes| |Get-PSReadlineKeyHandler|delivered|delivered|yes| |Remove-PSReadlineKeyHandler|delivered|delivered|| diff --git a/docs/testing-guidelines/TestRoadmap.md b/docs/testing-guidelines/TestRoadmap.md index b760100285..836b4b83a3 100644 --- a/docs/testing-guidelines/TestRoadmap.md +++ b/docs/testing-guidelines/TestRoadmap.md @@ -80,7 +80,7 @@ We need to be sure that we can easily enable remoting for the non-Windows platfo * Our current multi-machine tests do not test the connection code, they simply execute test code remotely and retrieve results and assume a good connection. The infrastructure used for these tests is STEX which is not an open environment. We will need to create automation to create and configure the test systems in the test matrix and then invoke tests on them. -It is not clear that our current CI systems can accomodate our needs here as neither AppVeyor or Travis can supply us with all of the OS images needed. +It is not clear that our current CI systems can accommodate our needs here as neither AppVeyor or Travis can supply us with all of the OS images needed. We may need to create our own heterogeneous environment in Azure, or look to other teams (MS Build Lab/Jenkins) for assistance. We need to investigate whether there are solutions available, and if not, design/implement an environment to meet our needs. @@ -136,7 +136,7 @@ We must start defining the release criteria for a production ready release of Po * 80% code coverage of high use cmdlets (cmdlets used by 70% of users, as captured via telemetry) * 90% code coverage of language elements (coverage error code paths may not be 100%) * 60% code Coverage on Windows via Github tests -* 100% of our mininum remoting matrix tested +* 100% of our minimum remoting matrix tested * Acceptance by 50% PowerShell MVPs (via Survey) * Acceptance by Partners (via Survey)