Commit graph

987 commits

Author SHA1 Message Date
xtqqczze
6affae574c Correct case of $DebugPreference special variable 2020-01-13 19:28:14 +00:00
xtqqczze
94a73caa41 Correct case of $IsWindows special variable 2020-01-13 19:27:21 +00:00
xtqqczze
72d52b7d08 Correct case of $IsMacOS special variable 2020-01-13 19:26:54 +00:00
xtqqczze
17d0e931fa Correct case of $IsLinux special variable 2020-01-13 19:26:28 +00:00
xtqqczze
9e5bb4eee7 Correct case of $PSModuleAutoLoadingPreference special variable 2020-01-13 19:26:01 +00:00
xtqqczze
bb58e2aab6 Correct case of $false special variable 2020-01-13 19:25:35 +00:00
xtqqczze
47a3b4e293 Correct case of $true special variable 2020-01-13 19:25:09 +00:00
xtqqczze
6014f4bac3 Correct case of $null special variable 2020-01-13 19:24:42 +00:00
xtqqczze
4a9d70fdcd Correct case of $PWD special variable 2020-01-13 19:24:10 +00:00
xtqqczze
679702ba05 Correct case of $PSDefaultParameterValues special variable 2020-01-13 19:21:25 +00:00
xtqqczze
b6a687bf21 Correct case of $error special variable 2020-01-13 19:19:39 +00:00
xtqqczze
6663261238 Correct case of $args special variable 2020-01-13 19:17:48 +00:00
xtqqczze
89e33f5772 Correct case of $Matches special variable 2020-01-13 19:15:17 +00:00
xtqqczze
fbe459d480 Correct case of $OFS special variable 2020-01-13 19:05:05 +00:00
xtqqczze
d58e1ff13b Correct case of $MyInvocation special variable 2020-01-13 19:04:32 +00:00
xtqqczze
4f5bb46268 Remove BOM, insert newline at EOF 2020-01-13 18:36:47 +00:00
xtqqczze
743983390e Update pester syntax to v4 (#11544)
* Capitalize 'Should' command and fix whitespace

```powershell
$_ -ireplace '\s?\|\s?should\b',' | Should'
```

* Capitalise and apply hyphen to 'Not' parameter

```powershell
$_ -ireplace '(\| Should) not\b','$1 -Not'
```

* Capitalise and apply hyphen to 'Be' parameter

```powershell
$_ -ireplace '(\| Should(?: -Not)?) -?be\b','$1 -Be'
```

* Capitalise and apply hyphen to 'BeExactly' parameter

$_ -ireplace '(\| Should(?: -Not)?) -?beexactly\b','$1 -BeExactly'

* Capitalise and apply hyphen to 'BeGreaterThan' parameter

```powershell
$_ -ireplace '(\| Should(?: -Not)?) -?begreaterthan\b','$1 -BeGreaterThan'
```

* Use 'BeTrue' parameter

```powershell
$_ -ireplace '(\| Should(?: -Not)?) -Be\s\$?true\b','$1 -BeTrue'
```

* Use 'BeFalse' parameter

```powershell
$_ -ireplace '(\| Should(?: -Not)?) -Be\s\$?false\b','$1 -BeFalse'
```

* Capitalise and apply hyphen to 'Match' parameter

```powershell
$_ -ireplace '(\| Should(?: -Not)?)\s-?match\b','$1 -Match'
```

* Capitalise and apply hyphen to 'Throw' parameter

```powershell
$_ -ireplace '(\| Should(?: -Not)?)\s-?throw\b','$1 -Throw'
```

* Capitalise and apply hyphen to 'BeNullOrEmpty' parameter

```powershell
$_ -ireplace '(\| Should(?: -Not)?)\s-?benullorempty\b','$1 -BeNullOrEmpty'
```

* Capitalise 'Because' parameter

```powershell
$_ -ireplace '\s-because\b',' -Because'
```

* Fix 'BeNullOrEmpty'
2020-01-11 20:41:59 +05:00
xtqqczze
70d9ed4d55 Remove Unicode BOM from text files (#11546) 2020-01-11 12:15:34 +05:00
Paul Higinbotham
b19e2b9d4c Various test fixes for debugger and remoting (#11528) 2020-01-08 16:23:38 -08:00
Aditya Patwardhan
0097802cee
Normalize line endings before comparing string in tests (#11499) 2020-01-08 13:33:28 -08:00
James Truher [MSFT]
57da778205 DSC test fixes for Alpine and Raspbian (#11508) 2020-01-07 16:57:08 -08:00
Ilya
e8d472b65b Ignore headers with null values in web cmdlets (#11424) 2020-01-07 12:25:30 -08:00
spongemike2
1376d310bb Make web cmdlets skip processing the content headers with a null or empty value for backward compatibility (#11421) 2020-01-06 12:11:55 -08:00
Ilya
99cf9fd859
Re-balance CI tests (#11420) 2020-01-05 13:01:42 +05:00
Ilya
b221c2afa2
Correct pwsh run (#11486) 2020-01-05 12:17:41 +05:00
Andrew
ea48e07c48 Added setting to disable implicit WinPS module loading (#11332) 2020-01-03 10:32:00 -08:00
Steve Lee
27e1664e52 Add retry to Enter-PSHostProcess test (#11360) 2019-12-20 15:35:50 -08:00
Aditya Patwardhan
ed27f36223
Fix test failing when UnixStat feature is disabled (#11370) 2019-12-20 15:32:50 -08:00
xtqqczze
7a7365279c Avoid variable names that conflict with automatic variables (#11392) 2019-12-20 12:09:03 -08:00
Joel Sallow (/u/ta11ow)
7b33cfe847 Test-Connection: Fallback to hop IP Address on -Traceroute without -ResolveDestination (#11335) 2019-12-19 09:51:34 -08:00
Ilya
dfb5b047b1
Revert "Update formatter to not write newlines if content is empty (#11193)" (#11342)
This reverts commit 51d2523f5f.
2019-12-18 00:53:19 +05:00
Steve Lee
03f10f052d Add -AsPlainText to ConvertFrom-SecureString (#11142) 2019-12-11 15:40:41 -08:00
Steve Lee
ed1f6e3144 Make approved features non-experimental (#11303) 2019-12-10 15:41:43 -08:00
Andrew
0c46e3e71d Added WindowsPS version check for WinCompat (#11148) 2019-12-10 10:40:13 -08:00
Andrew
f8a321ae2b Fix error-reporting in some WinCompat scenarios (#11259) 2019-12-09 15:20:40 -08:00
Ilya
12bf5306e2 Add null host name check in WSMan (#11288) 2019-12-09 10:52:03 -08:00
Steve Lee
ee4eba5348 Update calculation of char width to respect CJK chars correctly (#11262) 2019-12-05 08:09:56 +05:00
Travis Plunk
3cdab0d18d
Add Unblock-File for macOS (#11137) 2019-12-02 17:51:36 -08:00
Brendan Burns
d38541fdce Add an implementation of Stop-Computer for Linux and macOS (#11151) 2019-12-02 17:29:11 -08:00
Steve Lee
51d2523f5f Update formatter to not write newlines if content is empty (#11193) 2019-12-02 10:51:02 -08:00
Ilya
2ee1760342 Fix regression in Get-PSCallStack (#11210) 2019-12-02 10:43:35 -08:00
Travis Plunk
72780f333e
Make unreliable DSC test pending (#11131) 2019-11-22 14:18:41 -08:00
Steve Lee
2f672538b2 Add Type member to Exceptions containing type of exception for Get-Error (#11076) 2019-11-22 12:57:52 -08:00
Ilya
8d944fdec2
Write an error if argument is a directory in Get-FileHash cmdlet (#11114) 2019-11-21 15:15:19 +05:00
Steve Lee
0aaced35ad Update Get-Error to not modify the original $Error object (#11125) 2019-11-21 15:14:33 +05:00
Steve Lee
9b71696e33 Add OutputType to Get-Error cmdlet and preserve original typenames (#10856)
- Added OutputType attribute. 
- Cmdlet adds the PSExtendedError typename and removes Exception and ErrorRecord typenames so that the formatting is used. The formatter then removes PSExtendedError and puts back the original typename so that $Error should be the same before calling Get-Error. 
- While testing, had to make some changes to how InvocationInfo is retrieved so that ParseException which contains a nested ErrorRecord which as InvocationInfo is handled correctly. 
- Combined Exception and ErrorRecord formatter into one.
2019-11-19 08:54:58 +05:00
Joel Sallow (/u/ta11ow)
440837944a Test-Connection - Improve Logic and Output (#10697) 2019-11-18 11:32:59 -08:00
Andrew
b218e6f6cc Support using non-compatible Windows PowerShell modules in PowerShell Core (#10973) 2019-11-18 10:44:55 -08:00
Steve Lee
2e553038c5 Allow pwsh to inherit $env:PSModulePath and enable powershell.exe to start correctly (#11057) 2019-11-15 17:29:04 -08:00
James Truher [MSFT]
fe712f8de2 Experimental Feature: Provide Unix stat information in filesystem output (#11042) 2019-11-15 17:26:11 -08:00
Ilya
ff37337f95 Add Culture parameter to Select-String cmdlet (#10943) 2019-11-15 17:07:39 -08:00
Ilya
fe40fbf6e1 Unload test modules (#11061) 2019-11-14 17:54:48 -08:00
Daniel Sturm
9e02343b18 ConvertFrom-Json: Unwrap Collections by default (#10861) 2019-11-14 16:41:00 -08:00
Joel Sallow (/u/ta11ow)
57a4d4c721 Group-Object - Use Case-Sensitive Hashtable for -CaseSensitive -AsHashtable (#11030)
Prior to this change, Group-Object -AsHashtable -CaseSensitive would give a key duplication error when given entries that only differ by casing. This was due to always using a case-insensitive hashtable, despite the request for -CaseSensitive behaviour.
2019-11-13 09:16:45 +05:00
Steve Lee
e185f89591 Handle exception if enumerating files fails when rebuilding path to have correct casing (#11014) 2019-11-12 08:53:33 -08:00
Steve Lee
2a45ccc787 Fix ConciseView to show Activity instead of myCommand (#11007)
ConciseView shows MyCommand as the prefix to the error message, but for a scriptblock, MyCommand is the whole scriptblock. Fix is to use CategoryInfo.Activity if available first. Also handle case where it's a script function by seeing if it's a command and showing MyCommand in that case rather than the Activity.
2019-11-10 16:21:10 +05:00
Vincent Damewood
04a1fc3b74 Allow Web Cmdlets to Ignore HTTP Error Statuses (#10466)
* Add -SkipHttpErrorCheck to web request cmdlets

The -SkipHttpErrorCheck flag causes web request cmdlets
(Invoke-WebRequest and Invoke-RestMethod) to ignore HTTP statuses that
are error statuses and treat them as successful requests. This allows
users to handle the responses using their own error handler and gives
them access to the full, unmodified response body and headers.

* Add -ResponseStatusVariable to Invoke-RestMethod

This allows the user to specify a variable to set to the integer value
of the respons's status code, Analogous to using
-ResponseHeadersVariable to retrieve the headers of the response. This
can be used to distinguish error messages from success messages when
used with -SkipHttpErrorCheck.

* Fix coding-style error

The summary for the SkipHttpErrorCheck property didn't conform
to style guidelines. This changes the summary to start with
"Gets or sets".

* Add tests for -SkipHttpErrorCheck

This flag supresses terminating errors on web cmdlets.
The tests are written to check that it properly
supressed the errors.

* Add test for -StatusCodeVariable

Th -StatusCodeVariable parameter specifies an output
variable for the status code with Invoke-RestMethod.
This test makes sure it functions properly.

* Fix typos and style for -SkipHttpErrorCheck tests

Variables had different cases from each other and some parameter
names were lower case.

* Fix typos and style for -StatusCodeVariable test

Variables had different cases from each other and some parameter
names were lower case.

* Add failure tests when missing -SkipHttpErrorCheck

These tests ensure that Web Cmdlets fail when -SkipHttpErrorCheck
is missing.

* Clean up tests for -SkipHttpErrorCheck

Per discussion on the pull requests. This commit fixes up
style problems with the tests for -SkipHttpErrorCheck.

* Add more status tests for -StatusCodeVariable

Previously, the -StatusCodeVariable flag in Invoke-RestMethod
only had tests for 200 status. This commit adds tests for 404
and 500 statuses and removes -SkipHttpErrorCheck from the 200
check.

* Fix response body in -StatusCodeVariable test

The test was copy/pastes from the 200 status test. The body
indicated success. This commit fixes that so it is also an
error indicator.
2019-11-07 12:38:24 -08:00
Steve Lee
ef64321db9 Fix piping more than one CommandInfo to Get-Command (#10929) 2019-11-07 11:59:24 -08:00
Steve Lee
7ddfb825e4 Add back Get-Counter cmdlet for Windows (#10933) 2019-11-05 16:48:11 -08:00
Dongbo Wang
518a479909 Make ConvertTo-Json treat [AutomationNull]::Value and [NullString]::Value as $null (#10957) 2019-11-05 14:32:52 -08:00
Steve Lee
b74a26bb91 Added cross-platform Get-Clipboard and Set-Clipboard (#10340)
Co-Authored-By: Ilya <darpa@yandex.ru>



Co-Authored-By: Ilya <darpa@yandex.ru>
2019-11-04 11:28:58 -08:00
Steve Lee
4b8462766f Fix setting original path of filesystem object to not have extra trailing slash (#10959) 2019-11-02 22:09:08 +05:00
Steve Lee
70ab772da7 Support $null for convertto-json (#10947)
ConvertTo-Json doesn't allow $null to be passed in even though it can be valid resulting json. Fix is to remove the check that the input is not null. NewtonSoft.Json handles it just fine.
2019-11-01 23:54:31 +05:00
Steve Lee
a3d73d751f Handle IO Exception as non-terminating (#10950) 2019-11-01 10:06:40 -07:00
PRASOON KARUNAN V
5a76137d14 Take ComputerName via Pipeline in Get-HotFix (#10852)
* add process record for Get-hotfix
* update new FWLink
2019-11-01 08:02:19 +05:00
Steve Lee
df811929eb Fix tab completion for parameters so that it shows common parameters as available (#10850) 2019-10-31 13:09:37 -07:00
Steve Lee
0b12ea057a Add back Update-List command (#10922) 2019-10-30 11:05:30 -07:00
romero126
fab1e12fb7 Update tests to accurately describe test actions. (#10928) 2019-10-30 09:13:55 +05:00
Steve Lee
4ff9924cbf Add $env:__SuppressAnsiEscapeSequences to control whether to… (#10814) 2019-10-24 12:45:26 -07:00
Ilya
be54be4162
Add limit check in Get-WinEvent (#10648)
ReadEvent() returns the error if our query contains number of logs more then 256.
So add the limit check and issue user-friendly error message.
2019-10-23 22:28:59 +05:00
Steve Lee
90fb1ea41d Fix stringdata test to correctly validate keys of hashtables (#10810) 2019-10-23 10:37:48 +05:00
Steve Lee
26c380de6e Fix command runtime so StopUpstreamCommandsException doesn't get populated in -ErrorVariable (#10840) 2019-10-22 16:38:32 -07:00
Robert Holt
2a518fcfe2 Support the pipeline chain operators && and || in PowerShell language (#9849) 2019-10-17 14:43:46 -07:00
Steve Lee
d8d32d79c2 Implement Get-Error cmdlet as Experimental Feature (#10727) 2019-10-15 14:32:14 -07:00
Joel Sallow (/u/ta11ow)
2e951793af Format-Hex: Improve mixed-collection piped input and piped streams of input (#8674) 2019-10-15 11:04:45 -07:00
Eugene Samoylov
d528bf5d3d Fix for Get-Content -ReadCount 0 behavior when -TotalCount is set (#10749) 2019-10-14 17:32:37 -07:00
Stephen Valdinger
6a807a2a1c Add -Delimiter to ConvertFrom-StringData (#10665)
@steviecoaster Thank you!
2019-10-11 14:03:02 -07:00
Steve Lee
1fa73e360f Add back Get-HotFix cmdlet (#10740) 2019-10-11 22:51:43 +05:00
Marco Schmid
0f9ca32d6d Adding positional parameter for ScriptBlock when using Invoke-Command with SSH (#10721) 2019-10-10 11:29:31 -07:00
Derek Xia
4a4dc4c751 Adds emphasis to Select-String default formatter (#8963) 2019-10-08 16:11:10 -07:00
Ilya
6a36bb4b7d
$PSCulture follows CurrentThread.CurrentCulture (#10138) 2019-10-07 14:17:11 +05:00
Steve Lee
8cf9c01800 Add ConciseView for $ErrorView (#10641) 2019-10-04 16:52:57 -07:00
Paul Higinbotham
adfbac0c9d Set current working directory of each ForEach-Object -Parallel running script to the same location as the calling script. (#10672) 2019-10-04 10:04:04 -07:00
Ilya
d7458c45b2 Add Get-ChildItem test (#10507) 2019-10-03 17:15:41 -07:00
PRASOON KARUNAN V
768e79a999 Adding -SecurityDescriptorSDDL parameter to New-Service (#10483) 2019-10-03 17:12:17 -07:00
romero126
0e90120b9a Replace Ambiguous language for tests from switch to parameter for accuracy (#10666) 2019-10-03 20:54:08 +05:00
Ilya
91bf34679c
Read special reparse points without accessing it (#10662)
* Enhance enum FileDesiredAccess with zero value GenericZero
* Use the GenericZero as desired access mode to read reparse point without access it

From docs:
If desired access is zero, the application can query certain metadata such as file, directory, or device attributes without accessing that file or device, even if GENERIC_READ access would have been denied
2019-10-03 19:41:18 +05:00
Steve Lee
77ddec1614 Add back newline for grouping with Format-Table and -Property (#10653) 2019-10-02 12:11:55 -07:00
Steve Lee
d8eca6a729 Remove [ValidateNotNullOrEmpty] from -InputObject on Get-Random to allow empty string (#10644)
* Remove [ValidateNotNullOrEmpty] from -InputObject on Get-Random

* address feedback to allow $null for -InputObject

* address Ilya's feedback

* address CodeFactor issues
2019-10-01 04:32:43 +00:00
dependabot-preview[bot]
83453d1e5c Bump PSDesiredStateConfiguration from 2.0.3 to 2.0.4 (#10603) 2019-09-23 15:42:39 -07:00
Travis Plunk
60ffea59e3
Update PSDesiredStateConfiguration to 2.0.3 and bring new test… (#10516) 2019-09-12 14:39:11 -07:00
Kirk Munro
cc0fed479a Add APIs for breakpoint management in runspaces and enable attach to process without BreakAll for PSES (#10338) 2019-09-05 11:30:25 -07:00
Dongbo Wang
f6c220cdd9
Revert the PR "Make ForEach-Object faster for its commonly used scenarios" (#10485)
It turns out this optimization brings in a breaking change: `$MyInvocation` is different comparing to before the optimization change. I tried to fix the breaking change, but couldn't without introducing more hacky code. Given that, that PR should be reverted.
2019-09-04 22:12:30 -07:00
PRASOON KARUNAN V
f6877022c3 Fix wrong output for New-Service in variable assignment and -OutVariable (#10444) 2019-09-03 11:11:14 -07:00
Dongbo Wang
ff29282713 Make ForEach-Object faster for its commonly used scenarios (#10454) 2019-08-30 12:09:19 -07:00
James Truher [MSFT]
3943f18c28 Alpine validation changes (#10428) 2019-08-24 11:35:34 -07:00
Kirk Munro
8b9f4124ce Add support to ActionPreference.Break to break into debugger (#8205) 2019-08-23 10:34:10 -07:00
Steve Lee
82e3480bbf Increase built-with-PowerShell module versions to 7.0.0.0 (#10356) 2019-08-22 15:33:30 -07:00
Ilya
356355c325
Block type update in Add-Type cmdlet (#9609) 2019-08-22 09:35:36 +05:00
Kirk Munro
8128803f2e Add experimental check for ForEach-Object -Parallel tests (#10354) 2019-08-19 14:02:19 -07:00
Steve Lee
5974afaa8d Add support for AppX reparse points (#10331) 2019-08-13 17:45:41 -07:00
Paul Higinbotham
fbfc57a00c Implement ForEach-Object -Parallel feature (#10229) 2019-08-13 13:40:58 -07:00
Travis Plunk
11d8cd3230 Make module name matching for get-module -FullyQualifiedName… (#10329) 2019-08-12 14:45:08 -07:00
Dongbo Wang
0d817aa547 Update 'Microsoft.PowerShell.CoreCLR.Eventing' to resolve conflict with 'System.Diagnostics.EventLog' (#10305)
* Update 'Microsoft.PowerShell.CoreCLR.Eventing' to resolve conflicts
* Add reference to 'System.Diagnostics.EventLog' to build Microsoft.PowerShell.Commands.Diagnostics on Unix
* Stop compiling Get/New-WinEvent on Unix
2019-08-08 17:44:54 +05:00
Paul Higinbotham
7034c8ba55 Fix debugger disable performance regression (#10269) 2019-08-05 13:27:49 -07:00
Jos Koelewijn
48c7e112db Add -Raw switch to Select-String for convenience (#9901) 2019-07-19 13:21:39 -07:00
Aditya Patwardhan
7dfcff9287 Merged PR 9168: Disable Enter-PSHostProcess cmdlet when system in lock down mode
This is based on an issue, where Enter-PSHostProcess on a locked down (WDAC enforced) machine allows any admin to connect to any another local hosted PowerShell process and execute commands as that user. This amounts to privilege escalation on the policy locked down machine and something we want to prevent.

Fix is to check for system lock down and disable Enter-PSHostProcess cmdlet with an error message.
2019-07-16 00:49:24 +00:00
Travis Plunk
c64a28eaf1 Merged PR 5767: Fix RegEx DoS issues
Fix RegEx DoS issues
2019-07-15 19:52:01 +00:00
Aditya Patwardhan
ea4895c849
Mark Set-Service tests with password as Pending (#10146) 2019-07-12 16:50:58 -07:00
Steve Lee
431ef0372a Fix test password generation rule to meet Windows complexity requirements (#10143) 2019-07-12 12:11:45 -07:00
PRASOON KARUNAN V
ffb1549aa9 Add -SecurityDescriptorSddl parameter to Set-Service (#8626) 2019-07-11 13:23:57 -07:00
Ilya
5d98b901be
Cleanup workflow code (#9638)
* Remove WorkFlowInfo type

* Remove condition for UseSharedProcess

* Remove PSWorkflowJob condition

* Remove workflow from ValidateSet

* Remove workflow from CommandTypes enum

* Remove workflow from EventManager

* Remove workflow from Get-Help

* Remove WorkflowFileExtension ".xaml" from ModuleIntrinsics

* Remove WorkflowFileExtension ".xaml" from ModuleCmdletBase

* Remove workflow from PSModuleInfo

* Remove workflow from CustomShellCommands

* Remove workflow from InitialSessionStateProvider

* Remove WriteWorkflowDebugNotSupportedError()

* Remove unneeded resource strings from Module.cs

* Remove xaml from valid extension list
2019-07-07 01:03:03 +05:00
Mark Kraus
2285ece613 Set request headers when request body is empty in Web Cmdlets (#10034) 2019-07-02 12:01:06 -07:00
Amit Saraf
7bce46bc5b Download latest version (6.2.0) of PSDesiredStateConfiguration nuget package. (#9932) 2019-06-27 10:22:32 -07:00
robdy
aa07eef187 Add test for New-Item -Force (#9971) 2019-06-25 11:03:07 -07:00
Steve Lee
981c990d74 Make UseAbbreviationExpansion and TempDrive official features (#9872) 2019-06-13 13:05:37 -07:00
Steve Lee
89db7505d6 Have console host not enter command prompt mode when using Read-Host -Prompt (#9743)
`Read-Host` calls into `$Host.UI.Prompt()`.  However, this method is also used when the host prompts for mandatory parameters that aren't provided.  The method expects to be called when given a `FieldDescription` and if the input starts with `!` it enters `CommandPromptMode`.  In this mode, you can type `!?` to request help, for example.  However this mode is not something you can use via `Read-Host` (only if calling `$Host.UI.Prompt()` directly passing in a well constructed `FieldDescription`).  When using `Read-Host -Prompt`, the cmdlet creates a `FieldDescription` where the name is the prompt and the rest of the properties are empty.

The fix is that if `Label` is empty, we can assume it's being called from `Read-Host` rather than being called to prompt for a mandatory parameter and thus not enter `CommandPromptMode`.
2019-06-09 07:55:11 -07:00
Amit Saraf
689434e535 Support DSC compilation on Linux. (#9834) 2019-06-07 11:50:14 -07:00
kwkam
f0133bed8e Fix Get-ChildItem -Path with wildcard char (#9257)
Unescape non-literal, non-glob path before existence checking.
2019-05-31 10:14:39 -07:00
Aditya Patwardhan
ead353e5e4 Pin version of netDumbster to 2.0.0.4 (#9748) 2019-05-28 14:40:03 -07:00
Travis Plunk
bb726da6fd
Disable the debugger when in system lock-down mode (#9645)
Disable the debugger when in system lock-down mode

Fixing master for CVE-2019-0733
2019-05-22 15:19:23 -07:00
Steve Lee
29e21470d9 Port PowerShell to .NET Core 3.0 (#9597) 2019-05-21 13:43:51 +08:00
Steve Lee
a96b4c0404 Update use of "PowerShell Core" to just "PowerShell" (#9513) 2019-05-10 15:34:27 -07:00
Aditya Patwardhan
ade85b4faa
Multiple test fixes and improved logging for fragile tests (#9569) 2019-05-10 10:56:12 -07:00
Steve Lee
346ab8c9d4 Change MatchType for EnumerationOptions to be Win32 (#9529) 2019-05-06 17:20:08 -07:00
Mark Kraus
935e164a6d Add Support for Null Usernames in Web Cmdlet Basic Auth (#9536) 2019-05-06 17:15:04 -07:00
Aditya Patwardhan
2737e74d86 Fix null reference when Microsoft.PowerShell.Utility is loaded as a snapin in hosting scenarios (#9404) 2019-05-03 15:16:41 -07:00
ThreeFive-O
0735c95c3f Add unit and feature tests for Send-MailMessage (#9213) 2019-05-02 10:37:50 -07:00
xtqqczze
a702f68974 Ensure Wait-UntilTrue returns $true in Pester tests (#9458) 2019-05-01 17:03:43 -07:00
Dongbo Wang
687697bc90 Fix the failed test and update 'Publish-TestResults' to make AzDO fail the task when any tests failed (#9457) 2019-04-25 14:01:05 -07:00
Andrew
095be4655e
Return correct casing of filesystem path during normalization (#9250)
* return correct casing of filesystem path during normalization

* handle UNC case

* handle case to add trailing separator back

* add support for NTFS streams syntax

* add case-sensitive test

* only apply correct casing to directories

* handle 8.3 path syntax

* fix short path processing
2019-04-23 13:31:43 -07:00
pougetat
0bd93777fc Adding tests for Remove-Module (#9276) 2019-04-22 10:49:58 -07:00
Tyler James Leonhardt
13fd3af810 New New-PSBreakpoint cmdlet & new -Breakpoint parameter for Debug-Runspace (#8923)
This PR does 4 things:

* Adds a new cmdlet `New-PSBreakpoint` which creates new `Breakpoint` objects and writes them to the pipeline
* Adds a `-Breakpoint` parameter to `Debug-Runspace` which will receive `Breakpoint` objects
* Makes the constructors for `*Breakpoint` public for use with the API
* Makes `Debugger.GetBreakpoint(string id)` and `Debugger.GetBreakpoints()` public since `SetBreakpoints` is public

Note: `New-PSBreakpoint` and `Set-PSBreakpoint` (which already exists) are similar... but `Set-PSBreakpoint` also sets the breakpoints in the _current_ runspace. This is not ideal if we want to set breakpoints in a _different runspace than the current one_.

## PR Context  

The "Attach to process" debugging experience in the PowerShell extension for VSCode is _ok_ but it's not great.

The reason it's not great is due to the `BreakAll` feature of PowerShell debugging which, when you run `Debug-Runspace`, will break at the first piece of code that gets run. This is not ideal when you "Attach to process" _and then_ run your code in the other runspace.

Today, the experience drops you in `PSReadLine`'s psm1 if PSRL is available or in the vscode PowerShell helper psm1.

It's unexpected for the user and not ideal.

This PR will allow the extension to pass in the breakpoints that need to be set initially with `BreakAll` turned off for none of this silly behavior.

### Silly behavior example

If you want a repro, try this:

PowerShell instance 1:
```
Enter-PSHostProcess -Id $otherprocesspid
Debug-Runspace 1
```

PowerShell instance 2:
```
./runfoo.ps1
```

Note that you end up NOT `runfoo.ps1`
2019-04-13 19:14:53 -07:00
Travis Plunk
5913c88aaf
Mark tests in macOS CI which use applescript as pending/inconclusive (#9352)
Mark tests in macOS CI which use applescript as pending/inconclusive
2019-04-12 18:12:29 -07:00
Sytze Andringa
4884317d00 Added more tests for import-alias by file regarding parsing difficult aliases strings (#9247) 2019-04-11 10:40:24 -07:00
Travis Plunk
98b2e147c1
Only search for functions in Constrained Language help tests (#9301)
Only search for functions in Constrained Language help tests

## PR Context

Searching for only functions is faster
2019-04-08 11:01:33 -07:00
Steve Lee
b63696572f Fix skipping of tests in RemoteSession.Basic.Tests.ps1 (#9304)
Moved check if able to write to $PSHome as way to skip test to `BeforeAll` which already contained a check if running on Windows.

## PR Context

As part https://github.com/PowerShell/PowerShell/pull/9279, tests were updated to be skipped if the test requires writing to `$PSHome` but is not able to.  However, these tests already had a skip mechanism in place so the additional check caused the test to run when it should have skipped.

Co-authored-by: Travis Plunk <github@ez13.net>
2019-04-05 17:00:41 -07:00
Ilya
b927c46eb4
Add QuoteFields parameter to ConvertTo-Csv and Export-Csv (#9132) 2019-04-05 22:19:01 +05:00
Steve Lee
b8317de469 Update tests to account for when $PSHOME is readonly (#9279)
Co-Authored-By: SteveL-MSFT <slee@microsoft.com>


Co-authored-by: Travis Plunk <travis.plunk@microsoft.com>
2019-04-04 23:01:01 -07:00
Staffan Gustafsson
4ec36a0d4a Fixing progress for Get-ComputerInfo (#9236) 2019-04-04 16:15:43 -07:00
Rene Hernandez
75da390d1e Add ItemSeparator and AltItemSeparator properties in ProviderInfo (#8587)
Add two properties in `ProviderInfo` class: `ItemSeparator` and `AltItemSeparator`.
On windows, the default values for those two properties are `ItemSeparator = '\'` and `AltItemSeparator = '/'`.
On unix, the default values for those two properties are `ItemSeparator = '/'` and `AltItemSeparator = '\'`.

Registry provider is the only exception, both properties for it have the value `\`.
2019-04-02 09:59:36 -07:00
Steve Lee (POWERSHELL)
882e94f1cb add case-sensitive test 2019-03-30 09:40:14 -07:00
pougetat
0ee5278b40 Fix Get-Module -FullyQualifiedName option to work with paths (#9101) 2019-03-29 15:27:09 -07:00
Steve Lee
6bc2b55fdf return correct casing of filesystem path during normalization 2019-03-29 13:22:52 -07:00
pougetat
e553aef0fb Implement Get-Random -Count without specifying an InputObject list (#9111) 2019-03-26 16:50:20 +05:00
Steve Lee
3255d84627 Enable SecureString cmdlets for non-Windows (#9199)
On Unix systems, fallback to plaintext manipulation instead of using the DPAPI which is not available.

## PR Context

Currently, existing scripts that use SecureString cmdlets fail with an error complaining about crypt32.dll not being available.  This change allows these cmdlets to be used, but there is no encryption of the string.
.Net already [states](https://docs.microsoft.com/en-us/dotnet/api/system.security.securestring?view=netcore-2.1#remarks) that the contents of a SecureString are not encrypted on .Net Core.

Fix https://github.com/PowerShell/PowerShell/issues/1654

Co-authored-by: Travis Plunk <travis.plunk@microsoft.com>
2019-03-23 10:11:05 -07:00
Travis Plunk
94616f1789
Add Obsolete message to Send-MailMessage (#9178)
Add Obsolete message to Send-MailMessage

## PR Context

See https://github.com/PowerShell/PowerShell-RFC/pull/160

Co-authored-by: Steve Lee <slee@microsoft.com>
Co-authored-by: Ilya <darpa@yandex.ru>
2019-03-22 12:52:41 -07:00
Dongbo Wang
24d3152f00 Make Start-Job throw terminating exception when -RunAs32 is specified in 64-bit pwsh (#9143) 2019-03-18 10:23:29 -07:00
Jacob Scott
8f6982cc8a Made -Subject parameter of SendMail command no longer mandatory. (#8961) 2019-03-18 08:24:57 +05:00
pougetat
5277c79d67 Clean up Get-Random cmdlet (#9133) 2019-03-16 13:54:35 +05:00