Commit graph

6686 commits

Author SHA1 Message Date
Ilya
a9f106da58 Move xUnit tests in new folder (#8356)
## Motivation

I have a PR where there are many new xUnit tests.
It would also be useful to create new xUnit tests for public APIs.
The number of xUnit tests will increase and their ordering is required.

## PR Summary

- Move C# xUnit tests in new folder. This allows to put new xUnit tests in directory structure in accordance with directory structure where cs files are.
- Use an xUnit TestCaseOrderer attribute to sequentially process tests for `powershell.config.json`.
- Update README.md
- A race condition was fixed which allowed  to run all XUnit tests in single batch job.
2018-12-13 14:22:07 -08:00
dependabot[bot]
cd8319aac7 Bump NJsonSchema from 9.13.2 to 9.13.3 (#8457)
Bumps [NJsonSchema](https://github.com/rsuter/NJsonSchema) from 9.13.2 to 9.13.3.
- [Release notes](https://github.com/rsuter/NJsonSchema/releases)
- [Commits](https://github.com/rsuter/NJsonSchema/commits)
2018-12-13 13:32:13 -08:00
RDIL
0514d837bf Add gitkracken files to gitignore (#8434) 2018-12-12 12:56:25 -08:00
Travis Plunk
c76a3d7bb4
Create release process issue template (#8417)
* create release process issue template
* Add a security issue template as well
2018-12-12 12:24:12 -08:00
Darwin
5478cf6f66 support for linuxmint in installpsh-debian.sh (#8440)
Add #8437 - add linuxmint support
2018-12-11 14:40:38 -08:00
Aditya Patwardhan
551ed10b36 Fix EnvironmentVariable test and add missing null check in CommandHelpProvider (#8408)
* Disable NewItemUnauthorizedAccessError tests.
* Added expected value for $env:HOMEPATH for user with temporary profile.
* Added a missing null check in CommandHelpProvider.cs
2018-12-11 14:20:22 -08:00
Aditya Patwardhan
ee5fc080e2 Remove dotnet dependency to start WebListener (#8390)
WebListener.exe (which was already being built) is sufficient to start web listener. Remove the dependency on `dotnet` being present to start the web listener.

Use `Start-Process` instead of `Start-Job` to launch the WebListener.
2018-12-11 14:15:32 -08:00
Steve Lee
ac2b453ba7 Enable install-powershell.ps1 to use MSI (#8418) 2018-12-11 13:58:49 -08:00
Steve Lee
f17601298b Reset output attributes if column had ESC char when using Format-Table; Replace ... with unicode ellipsis (#8326)
change ellipsis when truncating to single unicode character
reset console output if previous column contains ESC
update existing format-table tests

If content included a VT100 ESC sequence (like changing color), this affected all output after that cell in the table.  Fix is to detect that a cell contained ESC and reset the console after it.  Also, change the 3 character ellipsis `...` to use the single unicode character `…` so that more text is available.

Fix https://github.com/PowerShell/PowerShell/issues/7767
2018-12-11 13:56:46 -08:00
dependabot[bot]
5ba2eaada7 Bump Markdig.Signed from 0.15.4 to 0.15.5 (#8444)
Bumps [Markdig.Signed](https://github.com/lunet-io/markdig) from 0.15.4 to 0.15.5.
2018-12-11 10:49:48 -08:00
Travis Plunk
59c514f7a7
Merge release-v6.2.0-preview.3 to master
Release v6.2.0 preview.3
2018-12-10 17:25:51 -08:00
Travis Plunk
457cbddbb8
Update Third Party Notices (#8415)
Update ThirdPartyNotices
  - update the TPN in license.rtf
  - add the additional attributions needed to generate the TPN
2018-12-10 16:30:16 -08:00
Aditya Patwardhan
93de4832b2 Merged PR 6225: Change log for 6.2.0-preview.3 release 2018-12-11 00:19:49 +00:00
Aditya Patwardhan
3bbfd5aa80 Address Joey's feedback 2018-12-10 16:07:36 -08:00
Aditya Patwardhan
09a2230eab Fix spellings 2018-12-10 11:27:18 -08:00
Aditya Patwardhan
d4fe7ab86b Address Dongbo's comments 2018-12-10 11:11:47 -08:00
Aditya Patwardhan
2dcc2261a7 Added missing codeblocks 2018-12-10 11:08:37 -08:00
Aditya Patwardhan
b34d9a2eda Address Steve's comments 2018-12-10 10:50:45 -08:00
Dongbo Wang
f1bc79f75f
Remove the no longer used RunspaceConfigurationEntry types (#8424) 2018-12-09 20:57:26 -08:00
Dongbo Wang
2a12fb53e5
Remove unneeded catch/throw from 'mkdir' and 'oss' functions (#8425) 2018-12-09 20:53:32 -08:00
Meir Blachman
b7b386d209 Remove comments after closing brackets (#8344) 2018-12-08 21:53:30 +05:00
Aditya Patwardhan
158e6e4ba0 Intial draft of changelog 2018-12-07 17:46:03 -08:00
Andrew
a1299cd6d4 Adding yml for Windows Release builds (#8374) 2018-12-07 10:59:27 -08:00
dependabot[bot]
e01e708422 Bump NJsonSchema from 9.13.1 to 9.13.2 (#8422)
Bumps [NJsonSchema](https://github.com/rsuter/NJsonSchema) from 9.13.1 to 9.13.2.
2018-12-07 10:57:56 -08:00
Christoph Bergmeister [MVP]
2f2b5d07fb Recommend Azure DevOps extension inside VS-Code for better YAML editing. (#8403)
This enhances the editing experience for YAML inside VS-Code (syntax highlighting and autocompletion).
For more details, see https://marketplace.visualstudio.com/items?itemName=ms-azure-devops.azure-pipelines
2018-12-07 10:55:52 -08:00
Aditya Patwardhan
1d32d05157 Merged PR 6201: Update docs and csproj version
Update docs and csproj version
2018-12-07 18:24:07 +00:00
dependabot[bot]
b55dc807cf Bump NJsonSchema from 9.12.7 to 9.13.1 (#8412) 2018-12-06 14:43:39 -08:00
dependabot[bot]
61e5c5110b Bump Microsoft.PowerShell.Native from 6.2.0-preview.2 to 6.2.0-preview.3 (#8411) 2018-12-06 14:43:31 -08:00
Dongbo Wang
2dcf52f3fc
Update folder path for storing optimization profile and add test to validate loaded assemblies and libraries on startup (#8406)
- Update folder path for storing optimization profile file.
- Add test to validate loaded assemblies and libraries on startup.
2018-12-06 14:26:09 -08:00
Dongbo Wang
c1e171622a
More changes and cleanup to reduce the startup time (#8396)
Major changes are:
- Rename `s_wasSystemPolicyDebugPolicy` to `s_allowDebugOverridePolicy` to make it less confusing. Also slightly refactor `HelperSecurity.psm1` and `ConstrainedLanguageDebugger.Tests.ps1` to remove unneeded code. There is no functional change in this commit.
- Remove the unneeded static property `IsInbox`, as PowerShell Core won't be shipped in-box with Windows in the foreseeable feature. Even if we do in future, we won't be needing it because Windows PowerShell will probably be gone by that time.
- Update 'BindRunspace' to avoid getting all commands and unneeded method calls.
- Avoid creating a `IsSafeValueVisitor` every time when `IsScriptBlockInFactASafeHashtable` runs.
2018-12-05 18:29:50 -08:00
Travis Plunk
50890b5ae7 Update the name of the artifact to be unique per artifact (#8405) 2018-12-05 16:21:08 -08:00
Travis Plunk
5f7dde584f
Create unified release build for macOS and Linux packages (#8399)
Create unified release build for macOS and Linux packages
  - Also, updated the definition with latest definitions from the definitions in use.

I will work on these in future PRs:

- Add compliance Job
- Add macOS Signing step
- Merging Windows into the YAML
2018-12-05 14:47:54 -08:00
Steve Lee
52aef57ab6 Add Enable-ExperimentalFeature and Disable-ExperimentalFeature cmdlets (#8318)
[breaking change]
Major changes are as follows:
- Add `Enable-ExperimentalFeature` and `Disable-ExperimentalFeature` cmdlets.
- Remove `-ListAvailable` from `Get-ExperimentalFeature`.
- Add `ArgumentCompleter` for `Get-ExperimentalFeature` cmdlet.
- Refactor some existing Experimental Feature tests.
- Make `ConfigScope` public and renamed `SystemWide` to `AllUsers`. Also update experimental feature code to prefer the current user config over the all user config.
2018-12-05 12:20:58 -08:00
Alex Earl
74de391193 Add Linux ARM64 build support (#8016) 2018-12-05 10:55:09 -08:00
Steve Lee
4c24f712eb Expose all cmdlets from PSDiagnostics if logman.exe is available (#8366) 2018-12-05 08:11:59 +05:00
Aditya Patwardhan
ddd69c845a
Update the timeout of CI builds (#8398) 2018-12-04 16:57:29 -08:00
Christoph Bergmeister [MVP]
7c021e42e9 Update resgen, typegen to use .Net Core 2.1 (#8369) 2018-12-04 09:40:40 -08:00
Aditya Patwardhan
13cf8af667 Remove dependabot attribution and generate changelog sections using CL-* labels (#8386)
* Remove dependabot attribution from change log.
* Create sections in generated change log using the `CL-*` labels.
2018-12-03 14:34:29 -08:00
Travis Plunk
142814c12a
Fix an intermittent failure in macOS logging tests (#8385)
Fix an intermittent failure in macOS logging tests
  - make tests wait for the correct number of log entries
  - make tests not fail with an `Index was outside the bounds of the array.` error
2018-12-03 14:29:49 -08:00
dependabot[bot]
ca204599ac Bump NJsonSchema from 9.12.6 to 9.12.7 (#8384) 2018-12-03 13:46:10 -08:00
Adam Gauthier
d150871af2 Change Newtonsoft deserializing bug comment to link to the new issue (#8377)
This is a follow up to reverted PR #8346. I removed a workaround that was used to avoid [a Newtonsoft.Json bug](https://github.com/JamesNK/Newtonsoft.Json/issues/1321) that caused some incomplete json array input to successfully be deserialized.

This bug being fixed, I thought the workaround was unnecessary, but after the merge some feature tests started to fail (which I did not run prior to merging).

It was discovered that the workaround is still needed because while the first Newtonsoft.Json bug was fixed, some cases of incomplete json array input still behave unexpectedly, namely json input `[`. 

This PR is just to update the comment explaining the workaround so it links to the newly created issue [here](https://github.com/JamesNK/Newtonsoft.Json/issues/1930).
2018-12-03 10:17:30 -08:00
dependabot[bot]
45f10a079c Bump PackageManagement from 1.2.3 to 1.2.4 in /src/Modules (#8383)
Bumps PackageManagement from 1.2.3 to 1.2.4.
2018-12-03 10:16:13 -08:00
Aditya Patwardhan
a62eb62701 Remove all reference to AppVeyor and Travis CI from docs (#8376) 2018-12-03 10:14:11 -08:00
Dongbo Wang
a11810bf33
Improve powershell startup time (#8341)
Major changes are as follows:
- Avoid `SecuritySupport.IsProductBinary` and unnecessary AMSI/suspicious code scan at startup time
   - Update `CompiledScriptBlockData.IsProductCode` to avoid unnecessary calls to `IsProductBinary`, which attempts to retrieve catalog signature of the target file.
   - Update `PerformSecurityChecks` to skip AMSI and suspicious code scan for the `.psd1` file that contains a safe `HashtableAst` only.
- Use customized `ReadOnlyBag` instead of `ImmutableHashSet` so that we can avoid loading the `System.Collections.Immutable.dll` completely.
- Replace `SHA1` with `CRC32` when generating module analysis cache file name
   - This remove the loading of `System.Security.Cryptography.Algorithms.dll` at startup
- Move `ConvertFrom-SddlString` to C# to remove the `Utility.psm1` file.
- Crossgen `Microsoft.ApplicationInsights.dll` and enable tiered compilation
   - Even pwsh with crossgen assemblies spends a lot time in jitting at the startup, about `191.6ms` comparing with `24.7ms` for Windows PowerShell.
   - Jitting `Microsoft.ApplicationInsights.dll` takes about `51.6ms`.
   - By crossgen `Microsoft.ApplicationInsights.dll` and enable tiered compilation, the jitting time drops to about `98.9ms`.
2018-12-02 12:52:39 -08:00
Travis Plunk
2a469b7d0f
Revert "Remove workaround for fixed invalid json array deserializing bug (#8346)" (#8375)
Revert "Remove workaround for fixed invalid json array deserializing bug (#8346)"

This reverts commit 60a4e2f346.

This change caused the test which verified the functionality this workaround enabled, to start failing
2018-11-30 14:32:11 -08:00
Aditya Patwardhan
3794a5e39f
Created a csproj to pin test modules and updated build.psm1 accordingly (#8350) 2018-11-30 11:49:38 -08:00
Paul Higinbotham
743a964392 Fix Export-ModuleMember bug for scriptblocks having no context (#8363)
Export-ModuleMember cmdlet throws an exception if module functions are exported across language boundaries (Windows only).  But a scriptblock LanguageMode property can be null if the scriptblock is created without a PowerShell context, and this can happen through the PowerShell API called from C#.  In this case Export-ModuleMember throws erroneously when no language mode restrictions are in play.

Fix is to check if LanguageMode is null before comparing context and scriptblock language modes.
2018-11-30 11:45:33 -08:00
dependabot[bot]
fc766e498f Bump NJsonSchema from 9.12.5 to 9.12.6 (#8371)
Bumps [NJsonSchema](https://github.com/rsuter/NJsonSchema) from 9.12.5 to 9.12.6.
- See full diff in [compare view](https://github.com/rsuter/NJsonSchema/commits)
[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=NJsonSchema&package-manager=nuget&previous-version=9.12.5&new-version=9.12.6)](https://dependabot.com/compatibility-score.html?dependency-name=NJsonSchema&package-manager=nuget&previous-version=9.12.5&new-version=9.12.6)
2018-11-30 11:10:11 -08:00
Aditya Patwardhan
13e2559392
Fix Get-Help for advanced functions with MAML help content (#8353) 2018-11-30 09:49:32 -08:00
Kirk Munro
e721f7bbc3 Debug parameter now sets debugpreference to continue (#8195)
With this commit, users who invoke a command with -Debug will no longer be presented with a prompt asking them if they want to enter a nested prompt, continue execution, or halt execution entirely. Instead, any messages sent to the debug stream will simply be sent to the debug stream and the script will continue execution.
2018-11-30 19:46:51 +05:00