Commit Graph
632 Commits
Author SHA1 Message Date
Ilya 5890c51e20 Cleanup '#if CORE' in CorePsPlatform.cs (#4415) 2017-07-31 13:02:14 -07:00
Steve Lee ab764eeac1 Length script property for List View didn't include a name for the property so it defaulted to using the script as the property name (#4437) 2017-07-31 12:56:41 -07:00
Ilya baa56f9c71 Cleanup '#if CORE' in CorePsStub.cs (#4416) 2017-07-31 12:55:28 -07:00
Ilya 86573cf926 Cleanup '#if CORE' in ComAdapter.cs (#4418) 2017-07-31 12:55:08 -07:00
Ilya 5bc204f26d Cleanup '#if CORE' in CompletionCompleters.cs (#4419) 2017-07-31 12:54:50 -07:00
Ilya 97e3cc2c35 Cleanup '#if CORE' in ExtensibleCompletion.cs (#4420) 2017-07-31 12:54:26 -07:00
Ilya 684ff97e79 Cleanup '#if CORE' in CommandProcessor.cs (#4421) 2017-07-31 12:54:13 -07:00
Ilya 5cfbf83447 Clean up '#if CORE' in ConnectionFactory.cs (#4422) 2017-07-31 12:54:01 -07:00
Ilya ea81506232 Cleanup '#if CORE' in DynamicInstructionN.cs (#4423) 2017-07-31 12:53:37 -07:00
Ilya 91df98f565 Cleanup '#if CORE' in InstructionFactory.cs (#4424) 2017-07-31 12:51:05 -07:00
Ilya 1841682c08 Clean up '#if CORE' in Utilities.cs (#4425) 2017-07-31 12:50:44 -07:00
Ilya ea3c207636 Cleanup '#if CORE' in ModuleIntrinsics.cs (#4426) 2017-07-31 12:50:15 -07:00
Ilya 5ce4e03ca5 Cleanup '#if CORE' ParameterBinderBase.cs (#4427) 2017-07-31 12:49:32 -07:00
Ilya 2bfe094b12 Cleanup '#if CORE' in PSVersionInfo.cs (#4430) 2017-07-31 12:49:11 -07:00
Ilya 927266225f Clean up '#if CORE' in remoterunspace.cs (#4431) 2017-07-31 12:48:38 -07:00
Dongbo Wang 1462ac300b Clean up ClrFacade.cs - remove ClrFacade.PtrToStructure (#4379) 2017-07-29 22:34:31 -07:00
Dongbo Wang 2c43140276 Clean up ClrFacade.cs - remove ClrFacade.SizeOf<T>() (#4377) 2017-07-29 17:40:19 -07:00
Dongbo Wang 4eeeb4552c Remove ClrFacade.GetUninitializedObject and 'if CORECLR' cleanup (#4375) 2017-07-29 17:16:23 -07:00
Dongbo Wang dce0bab626 Clean up ClrFacade.cs - remove ClrFacade.DestroyStructure (#4378) 2017-07-29 17:04:38 -07:00
Dongbo Wang 16f408c2f7 Clean up ClrFacade.cs - remove ClrFacade.StructureToPtr (#4380) 2017-07-29 16:44:44 -07:00
Ilya 184a9bc85e Clean up '#if CORE' - use SecurityZone from CoreFX (#4368)
Make `System.Management.Automation references` to package `System.Security.Permissions`, which brings back `SecurityZone` and `System.Security.Policy.Zone`.
2017-07-28 12:13:15 -07:00
Ilya 2dd371952d Clean up '#if CORECLR' in ClrFacade.cs (#4366) 2017-07-28 11:37:25 -07:00
Steve Lee 03d4e9120b Support Invoke-Item -Path <folder> (#4262)
On CoreFx, UseShellExecute for Process start is false by default to be cross platform compatible.
In the case of a folder, Process.Start() returns Access Denied as it's not an executable.
On Windows, we can use the ShellExecute path to have explorer open the folder. On Unix, we use `xdg-open` and `open` for Linux and macOS respectively.
2017-07-27 22:17:38 -07:00
Steve Lee cf7b9f3de1 Fix Implicit Remoting test failure on nightly run (#4323)
Retry setting winrm config if it fails with MaxConcurrentUsers > 100
2017-07-26 10:08:52 -07:00
Steve Lee 0cd7a4a0c9 Fix error message when 'HelpMessage' property of 'ParameterAttribute' is set to empty string (#4334)
- Fix invalid value error message on some properties of ParameterAttribute to point to the specific properties.
- Avoid wrapping argument exception into not a useful 'requires' exception.
2017-07-26 09:20:43 -07:00
Dongbo Wang 0d8eff6446 Fix array expression to not return null or throw error (#4296)
This change fixes 3 issues:
- According to [PowerShell Language Specification Version 3.0](https://www.microsoft.com/en-us/download/details.aspx?id=36389), as quoted: "_The result is the (possibly empty) unconstrained 1-dimensional array_", `@(...)` should only return `object[]` array.
- `@([object[]]$null).GetType()` fails with error `"You cannot call a method on a null-valued expression."`
- `@([System.Collections.Generic.List[object]]$null)` fails with error `"Object reference not set to an instance of an object."`
2017-07-24 21:52:30 -07:00
bergmeister ffd39b2853 PSScriptAnalyzer fixes by category (#4261)
- Fix PSScriptAnalyzer warnings of type PSAvoidUsingCmdletAliases for 'ForEach-Object' (alias is '%' or 'foreach')
- Fix PSScriptAnalyzer warnings of type PSAvoidUsingCmdletAliases for 'Where-Object' (alias is '?' or 'where')
- Fix PSScriptAnalyzer warnings of type PSAvoidUsingCmdletAliases for 'Select-Object' (alias is 'select')
- Fix PSScriptAnalyzer warnings of type PSPossibleIncorrectComparisonWithNull. Essentially, $null has to be on the left-hand side when using it for comparison.
- A Test in ParameterBinding.Tests.ps1 needed adapting as this test used to rely on the wrong null comparison
- Replace a subset of tests of kind '($object -eq $null) | Should Be $true' with '$object | Should Be $null'
2017-07-21 21:03:49 -07:00
Steve Lee 44e377525b Register-PSSessionConfiguration fails if SesionConfig folder doesn't exist (#4271) 2017-07-18 10:07:05 -07:00
Dongbo Wang 069c7a4b6f Enable DataRow/DataRowView adapters in PowerShell Core (#4258) 2017-07-17 11:27:01 -07:00
James Truher [MSFT] 71392a2666 Disable UTC and SQM telemetry by enclosing the code in '#if LEGACYTELEMETRY' (#4190) 2017-07-17 09:44:54 -07:00
Dongbo Wang c5f3a19caf Run PowerShell class static methods in the correct Runspace/SessionState (#4209)
Summary
----------
When the same script file gets executed in multiple Runspaces, the RuntimeType generated from the powershell class defined in the file will be shared among those Runspaces. For different Runspaces, different SessionState should be used to run the static methods.

Fix
---
We use the `SessionStateKeeper` to query for the correct `SessionState` to use for a static method call.
We already use `SessionStateKeeper` to track the `Runspace/SessionState` where a PowerShell class is defined, and thus we can leverage this for the static method invocation.
2017-07-14 18:05:48 -07:00
Paul Higinbotham 7fa0dd0549 Fix for implicit remote regression in restricted session (#4222) 2017-07-14 12:28:22 -07:00
Paul Higinbotham 02737e2fe4 Fixes CIM deserialization bug (#4234) 2017-07-14 09:52:24 -07:00
Ilya dc76c86f7a ValidateSetAttribute enhancement: support set values to be dynamically generated from a custom ValidateSetValueGenerator (#3784)
Currently `ValidateSetAttribute` accepts only explicit constants as valid values. This is a significant limitation. Sometimes we need to get valid values dynamically, ex., Azure VMs, logged-on users and so on. The PR add follow possibilities:
- pass a _custom type_ (a valid values generator) implementing `IValidateSetValuesGenerator` interface to get valid values dynamically.
- pass a _custom type_ (a valid values generator) derived from `CachedValidValuesGeneratorBase` abstract class to get valid values dynamically and _cache_ the list to share with other ValidateSetAttribute attributes.
2017-07-13 21:28:32 -07:00
Travis Plunk 1278c8948c make sure we don't return null for share module path (#4219)
* make sure we don't return null for share module path
fall back to environment if call to get special path doesn't work

* address PR comments
2017-07-11 11:23:43 -07:00
Oisin Grehan d9828fe937 Add 'semver' as core (contrained-safe) accelerator for S.M.A.SemanticVersion (#4142) 2017-07-11 10:56:28 -07:00
jeffbi a9b8e98449 Remove unneeded test hooks and tests due to behavior change in .NET Core (#4200) 2017-07-08 15:18:48 -07:00
jeffbi 1688703caf Make Get-ChildItem follow symlinks on demand, with checks for link loops (#4020)
Add the dynamic parameter `-FollowSymlink` to `Get-ChildItem`.
Add a mechanism for tracking visited directories.
Add native code to get device/inode information on Unix/Windows.
Add warning when refusing to enter an already-visited directory.
2017-07-06 12:28:27 -07:00
Tim Curwick d1e05efbf1 Added comma to the list of replaced characters in assemblyname (#4136) 2017-07-06 11:32:54 -07:00
Steve Lee 36eaab2809 Static analysis: Fix usage of XmlReader to ensure XmlResolver is null (#4108)
* the default XmlResolver will attempt to resolve external resources, recommendation is to explicitly set to null which
will raise exception if malicious xml attempts to cause xmlreader to access external resources

* added DTDProcessing and related to XmlReaderSettings
2017-07-06 09:09:57 -07:00
Bruce Payette ece27ff687 Fix spurious error generated when importing cmdlets from an in-memory assembly (#4117) 2017-06-30 15:36:38 -07:00
Dongbo Wang 3e35fb9918 Move powershell to 2.0.0-preview3-25426-01 using the .NET CLI 2.0.0-preview2-006502 (#4144) 2017-06-30 13:07:14 -07:00
Paul Higinbotham a2922d6ac4 Fix for SSH remoting when SSH client abruptly terminates (#4123)
* Fix for SSH remoting when SSH client abruptly terminates

* Put error message in localizable string resource

* Renamed error string per code review request

* Removed extra error==null check
2017-06-29 11:14:33 -07:00
Ilya a8e3d8968f Refactor MSBuild project files by adding the common property file 'PowerShell.Common.props' (#4106)
`AssemblyVersion` and `FileVersion` are now inferred from the `Version` property, which is inferred by `VersionPrefix`. So now both `AssemblyVersion` and `FileVersion` are 6.0.0.0 for each of PowerShell assemblies, and the `ProductVersion` and `InformationalVersion` are 6.0.0.
2017-06-29 10:25:49 -07:00
Andrew ecefb50d0d Fixing Import-Module on Linux for special cases of NestedModules/RootModule path format (#4010)
* IPMO fix for some cases of NestedModules/RootModule path syntax

* Added tests for #3693 fix

* Updated tests
2017-06-28 16:35:33 -07:00
Steve Lee 40c479d071 Address static analysis issues in SSH remoting (#4083)
* address static analysis issues
- remoteRunspaces is not used TFS:10618323
- not checking return value of ResumeThread() TFS:10618344

* fixed magic number use

* changed magic number to Uint.MaxValue
2017-06-28 16:27:54 -07:00
Keith Hill 27e47f9ee1 Implement Unicode escape parsing (#3958)
* Implement Unicode variable width `u{xxxxxx} escape sequences.
2017-06-27 22:55:57 -07:00
Paul Higinbotham 2ee9705751 Add missing timestamper cert to the newer catalog signing APIs for Get-AuthenticodeSignature (#4061)
* Fixed missing functionality to add timestamper cert for the newer catalog signing APIs for Get-AuthenticodeSignature
2017-06-27 14:59:52 -07:00
Andrew e2e07b1830 Change New-ModuleManifest encoding to UTF8NoBOM on non-Windows platforms (#3940)
* Change New-ModuleManifest encoding to UTF8NoBOM

* Addressed PR feedback

* Fixed test for Travis CI

* Updated tests
2017-06-27 12:48:25 -07:00
Mike Richmond a291834f39 Revert "Set assembly versions by MSBuild" (#4091) 2017-06-23 10:17:25 -07:00