Commit graph

166 commits

Author SHA1 Message Date
Aditya Patwardhan b18adb85d4 Add OpenCover PS Module to collect code coverage (#2585)
* Add OpenCover PS Module to collect code coverage

OpenCover PS Module helps is collecting Code Coverage using the OpenCover
toolset. The module helps in comparing two code coverage runs as well.

* Change OpenCover.psd1 to ASCII

* Fix an error in path for OpenCover

Fixed an error on path for OpenCover. Also used ZipFile class instead of
cmdlet as it might not be available on CI system.

* Convert module to be Powershell v4 compliant

Changed implementation from classes to PSObjects and implemented
Expand-ZipArchive.

* Added CodeCoverage as a configuration to project.json files

Added CodeCoverage as the new configuration for all the project.json
files. When Start-PSBuild is executed with configuration as CodeCoverage,
we change the degubType to 'full' as required by OpenCover toolset.

Also made changes to appveyor.psm1 to build a CodeCoverage package on
daily builds and publish it as a zip.

* Addressed code review comments

Changed from Add-Member to use pscustomobject type accelator. Removed
[gc]::collect.

* Added explicit garbage collection

* Addressed code review comments

- Make sure that the build Start-PSPackage gets is not a code coverage
  build
- Add debugType = full for FullCLR
- Remove configurations from PackageManagement files as it is not needed.
- Build CodeCoverage build first in AppVeyor.

* Resolve merge conflict

* Fix indentation

* Fix newline at end of file

* Added command discovery for locating OpenCover.console.exe
2016-11-11 11:12:07 -08:00
Dongbo Wang f96dcbb016 Update project version to 6.0.0 to match our release version 2016-11-04 16:33:35 -07:00
Dongbo Wang f02b6ef97a Exclude 'Registry' and 'Certificate' providers from UNIX PS since they don't work on UNIX platform.
With this change, 'Registry' and 'Certificate' providers won't be compiled for UNIX PS.
2016-10-14 10:02:44 -07:00
Dongbo Wang 1ea555810c Fix Get-Credential to not prompt twice when no parameter is specified 2016-09-27 09:49:28 -07:00
McAndersDK 5738f37b74 Added support for title in get-Credential, and message set to optional. (#1904)
* Update CredentialCommands.cs

Added possibility to add title to the credential prompt window.
Added possibility to only supply username without giving a message.

* Added Test for Get-Credential new feature. (Title, and Message only optional.)
2016-09-16 14:53:55 -07:00
George Chakhidze e8190a569b Use prefixed QNames in XPath expressions used by all implementations of ICmdletProviderSupportsHelp interface
Also includes these bugfixes:
  - WSManConfigProvider.GetHelpMaml: Tried to load XML from
    MemoryStream that was created from file name string. Use XmlReader
    instead.
  - WSManConfigProvider.GetHelpMaml: Use Path.Combine instead of
    platform-specific directory separator character.
  - WSManConfigProvider.GetHelpMaml: CmdletHelpPath MAML XML element
    attribute `ID` name casing seems inconsistent with other help.xml
    files. XPath 1.0 does not support case-insensitive expressions,
    use both `id` and `ID` in query.
  - Add Pester test to verify that Get-Help shows provider-specific help.

Fixes #2088
2016-09-13 09:40:14 +04:00
Dongbo Wang 58a2ba730d Merge pull request #2046 from xiaoyinl/use-https-links
Use HTTPS links for go.microsoft.com
2016-09-01 17:23:09 -07:00
Josh Soref eb3fd7ae6c Spelling comments (#2066)
* spelling: comments in src/Microsoft.Management.Infrastructure.CimCmdlets

* spelling: comments in src/Microsoft.PackageManagement.ArchiverProviders

* spelling: comments in src/Microsoft.PackageManagement.CoreProviders

* spelling: comments in src/Microsoft.PackageManagement.MetaProvider.PowerShell

* spelling: comments in src/Microsoft.PackageManagement.MsiProvider

* spelling: comments in src/Microsoft.PackageManagement.MsuProvider

* spelling: comments in src/Microsoft.PackageManagement.NuGetProvider

* spelling: comments in src/Microsoft.PackageManagement.PackageSourceListProvider

* spelling: comments in src/Microsoft.PackageManagement

* spelling: comments in src/Microsoft.PowerShell.Activities

* spelling: comments in src/Microsoft.PowerShell.Commands.Diagnostics

* spelling: comments in src/Microsoft.PowerShell.Commands.Management

* spelling: comments in src/Microsoft.PowerShell.Commands.Utility

* spelling: comments in src/Microsoft.PowerShell.ConsoleHost

* spelling: comments in src/Microsoft.PowerShell.Core.Activities

* spelling: comments in src/Microsoft.PowerShell.CoreCLR.AssemblyLoadContext

* spelling: comments in src/Microsoft.PowerShell.CoreCLR.Eventing

* spelling: comments in src/Microsoft.PowerShell.Diagnostics.Activities

* spelling: comments in src/Microsoft.PowerShell.GraphicalHost

* spelling: comments in src/Microsoft.PowerShell.LocalAccounts

* spelling: comments in src/Microsoft.PowerShell.Management.Activities

* spelling: comments in src/Microsoft.PowerShell.PSReadLine

* spelling: comments in src/Microsoft.PowerShell.PackageManagement

* spelling: comments in src/Microsoft.PowerShell.ScheduledJob

* spelling: comments in src/Microsoft.PowerShell.Security.Activities

* spelling: comments in src/Microsoft.PowerShell.Security

* spelling: comments in src/Microsoft.PowerShell.Utility.Activities

* spelling: comments in src/Microsoft.PowerShell.Workflow.ServiceCore

* spelling: comments in src/Microsoft.WSMan.Management.Activities

* spelling: comments in src/Modules

* spelling: comments in src/Schemas

* spelling: comments in src/libpsl-native

* spelling: comments in src/powershell-native

* spelling: comments in build.psm1

* spelling: comments in src/System.Management.Automation/CoreCLR

* spelling: comments in src/System.Management.Automation/DscSupport

* spelling: comments in src/System.Management.Automation/cimSupport

* spelling: comments in src/System.Management.Automation/commands

* spelling: comments in src/System.Management.Automation/engine/Modules
2016-08-26 13:46:03 -07:00
xiaoyinl f538eeb416 Use HTTPS links for go.microsoft.com
I replace all occurrences of http://go.microsoft.com with https://go.microsoft.com in text files.
2016-08-23 21:21:31 -04:00
Adam Driscoll c829d9e915 Adding debugType portable to project.json. (#1959)
* Adding debugType portable to project.json.

* Move debugType.

* Update project.json

* Update project.json

* Update project.json

* Update project.json

* Update project.json

* Update project.json

* Update project.json

* Update project.json

* Moving debugType into correct places. Removing from non-core builds.

* Added missed files.

* Fixing project.json debugType placement.
2016-08-23 10:38:25 -07:00
PowerShell Team 403ae3f53f Initial run of code formatter
I (Jason Shirk) ran https://github.com/dotnet/codeformatter with the default rules, basically:

    codeformatter /nocopyright "/c:DEBUG,UNIX,CORECLR" @files.rsp

This caused a few problems building, which were fixed up manually.

Notable changes:

`this.` is removed unless needed to disambiguate.
private instance fields are renamed to have a `_` prefix.
private static fields are renamed to have a `s_` prefix.

I left some projects alone (like PackageManagement) and also left some generated code alone.
2016-08-01 15:57:03 -07:00
PowerShell Team 0dd425da19 Integrate changes between [SD:717473] and [SD:725290] 2016-07-28 18:02:24 -07:00
Jason Shirk (POWERSHELL) 673dd2c355 Change preprocessor macro LINUX to UNIX 2016-07-22 10:49:45 -07:00
Andrew Schwartzmeyer 790a07222e Disable some XML documentation warnings
Some projects have more warnings than I can fix.
2016-07-18 19:07:32 -07:00
Andrew Schwartzmeyer b6f26ad7cc Enable XML documentation generation
This is enabled for PowerShell projects, but not PackageManagment,
WSMan, Cim, or MMI.
2016-07-18 18:40:42 -07:00
Dongbo Wang 15fbd76df8 Exclude the unneeded gen/*.cs files from the build for each target framework 2016-07-07 09:32:21 -07:00
Dongbo Wang c502b31509 Exclude the TimeZone/Computer/FileCatalog cmdlets for Linux. They use windows specific Win32 APIs 2016-07-06 13:04:51 -07:00
Dongbo Wang b4641986a2 Update project.json files to exclude certain .resx files for each target framework 2016-07-06 13:04:31 -07:00
PowerShell Team 49fea9dac9 Add missing files for OPS [SD:717473] 2016-07-06 13:03:56 -07:00
Dongbo Wang b4089414de Add back missing files to OPS -- map.json/project.json udpates 2016-07-05 16:18:24 -07:00
Andrew Schwartzmeyer 000206ac90 Bump framework to netstandard1.6
This is required to use the new .NET Core RTM packages, specifically the
`IEnumerable Append` API.
2016-06-27 15:30:47 -07:00
Sergei Vorobev 713ddfdf05 Remove authors section from product project.json 2016-06-16 19:33:19 -07:00
Andrew Schwartzmeyer 8e7c2ca30b Sign all assemblies with key 2016-06-16 15:48:18 -07:00
PowerShell Team 8ee6d6ca43 Update files from Source Depot changeset [SD:715912]
Corresponds to 77eda782aa78ba8b7a36c51ee619629ce6c990f2 in psl-monad.
2016-06-15 18:02:03 -07:00
Sergei Vorobev d92620dcf3 Move resgen artifacts from submodules into src subfolders
Submodule adds unnessesary complexity.
This commit removes dependency on pre-generated C# bindings.
Start-PsBuild -ResGen will call Start-ResGen.
It also has auto-detect logic to simplify first time expirience.
2016-06-15 10:34:10 -07:00
Andrew Schwartzmeyer d16cfbd04f Work-around dotnet bug
The include must be duplicated because the root `buildOptions` is not
being applied "whenever compiling the project."
2016-06-14 16:21:36 -07:00
Andrew Schwartzmeyer 01f1c5348d Exclude FullCLR files from CoreCLR build 2016-06-14 16:21:17 -07:00
Andrew Schwartzmeyer 69ce0e7107 Revert CORECLR guard from FullCLR files
This reverts the `if !CORECLR ... #endif` guard surrounding FullCLR
files by applying the original diff from the `source-depot` branch, thus
the accidentally overwritten BOMs were restored as well.
2016-06-14 16:06:48 -07:00
Sergei Vorobev 85e2ecd504 Add new map.json files 2016-06-13 17:39:11 -07:00
Andrew Schwartzmeyer 80aceb7a8a Move compile data to build options 2016-06-10 11:15:37 -07:00
Andrew Schwartzmeyer e3056303aa Rename compilationOptions to buildOptions in project.json files
This resolves #928. This is a breaking change in that you *must* be
running a recent version of .NET CLI.
2016-06-10 11:03:56 -07:00
PowerShell Team b38773eb79 Update files from Source Depot changeset [SD:709766]
Corresponds to 15b1623435d6a195d1e877ba5c43709d991f573a in psl-monad.
2016-05-31 14:12:49 -07:00
PowerShell Team b8dced8e80 Update files from Source Depot changeset [SD:706766]
Corresponds to e2ce37c87c0ab9795bfac2389edc1aff934bdb9e in psl-monad.
2016-05-23 13:14:28 -07:00
PowerShell Team d9bf6b037f Update files from Source Depot changeset [SD:704605]
Corresponds to 75764b265885c1a346d1b2dbcb281d61b71c5b31 in psl-monad.
2016-05-18 17:41:26 -07:00
PowerShell Team 78a18c3f70 Revert "Update files from psl-monad"
This reverts commit 9ed2c2a68b.
This commit is here to make source-depot branch a parent of master
2016-04-06 12:03:50 -07:00
PowerShell Team 9ed2c2a68b Update files from psl-monad
This commit uses psl-monad branch source-depot 28156300
And corresponds to [SD:692351]
2016-04-06 11:55:18 -07:00
Sergei Vorobev 2464d58a51 Fix file casing to enable C# binding generation
Use windows-build\gen\<project> instead of windows-builg\gen\<somename>
2016-04-04 14:18:10 -07:00
PowerShell Team 45140c5752 Move files from psl-monad submodule to super-project
This commit uses master branch 860eb5d
2016-03-30 20:01:33 -07:00
Sergei Vorobev fe5bb28fd1 Remove compileFiles and resource sections from project.json files 2016-03-30 17:16:50 -07:00
Sergei Vorobev abf005fc38 Update AssemlbyInfo.cs files to use snk from super-project
Conflicts:
	src/System.Management.Automation/AssemblyInfo.cs
2016-03-30 17:16:49 -07:00
PowerShell Team 60b3b304f2 Move files from psl-monad submodule to super-project
This commit uses psl-monad branch source-depot 7209cb9
And corresponds to [SD:688741]
2016-03-30 17:16:23 -07:00
Andrew Schwartzmeyer 2f29f43e42 Set default culture to en-US
So that the resource manager doesn't try to load a non-existent
satellite assembly (and thus throw).

The culture `en-US` is the default `CurrentCulture` on all platforms I
tested, specifically not `en`.

Note that there is a problem with the FullCLR build where some other
assembly is still attempting to reference `Logging.resources` instead of
`System.Management.Automation.Logging.resources`.
2016-03-26 18:49:13 -07:00
Andrew Schwartzmeyer b363fc909e Replace Security's namedResource section with resource 2016-03-26 15:30:26 -07:00
Andrew Schwartzmeyer 7f60921094 Target net451 instead of dnx451 for FulLCLR 2016-03-09 14:25:35 -08:00
Andrew Schwartzmeyer 966be6a792 Treat C# warnings as errors 2016-02-24 16:33:17 -08:00
Andrew Schwartzmeyer e6e4dcafbe Build with new framework and new CLI
All libraries now use the framework `netstandard1.5`, and import the
`dnxcore50` and `portable` frameworks. The app that is published,
Microsoft.PowerShell.Linux.Host, that is, the top-level dependency that
emits an executable, instead targets `netstandardapp1.5` and has a new
`runtimes` key so that .NET CLI's `restore` and `publish` commands know
which runtime implementations to resolve.

When switching to the new CLI, we needed to fix how we specified our
dependencies. In particular, the .NET CLI team helped me figure out how
to download packages that are reference assembly only on Linux, with
implementations on Windows. The result of this is the new `frameworks`
setup.

Additionally, we were incorrectly specifying our build dependencies;
that is, projects we also build (not packages). The solution was much
cleaner. We removed the `type: build` section and replaced it with the
version `1.0.0-*` that all our projects currently use.

The `project.json` files also had their names, descriptions,
indentation, and versions fixed.

The build scripts were simplified.
2016-02-18 10:06:56 -08:00
Sergei Vorobev 54c11c1e2c Add missed files to Microsoft.PowerShell.Security
This files are needed for FullCLR build.
They are responsible for some errors reported in BVT/DRT regression.
2016-02-17 17:43:56 -08:00
Andrew Schwartzmeyer bd79884b81 Update AssemblyInfo files for FullCLR build 2016-02-02 15:43:54 -08:00
Sergei Vorobev b4f8d5237c Add dnx451 to project.json files 2016-02-02 15:43:54 -08:00
Andrew Schwartzmeyer 92127e4cfc Uses spaces instead of tabs in project.json files 2016-02-02 15:43:54 -08:00
Andrew Schwartzmeyer 172ddc6ad1 Refactor project.json dependencies
The packages are now dependencies of the `dnxcore50` framework itself,
rather than globally. The `compilationOptions` were pruned, with
`CORECLR` moved to frameworks, `_CORECLR` removed for all but
`Management.Infrastructure`, and `LINUX` moved to a new `Linux`
configuration, used only in `build.sh`. This configuration is
purposefully absent from libraries that do not use `LINUX`, so that it
is not relied upon without strong consideration. The dependencies
were pruned to reduce duplication.
2016-02-02 15:43:54 -08:00
Andrew Schwartzmeyer a8be633089 Bump packages to rc3-23729 2016-02-02 15:43:54 -08:00
Andrew Schwartzmeyer 05205ecac7 Realign project.json files 2016-01-26 15:47:22 -08:00
Andrew Schwartzmeyer 19d8a6a0b2 Move monad-build to windows-build on GitHub
Better name since this submodule only has to do with the Windows build
system and generated artifacts.
2016-01-14 12:55:39 -08:00
Andrew Schwartzmeyer 735721e902 Bump .NET packages to build rc2-23712
This brings in the previously missing System.Console APIs and the fix for the echo TTY issue, fixing our remaining patches of the runtime.
2016-01-12 12:22:26 -08:00
Andrew Schwartzmeyer 251a875935 Major refactor of .NET dependencies
Much simpler now, thanks to NETStandard.Library.
2015-12-16 15:08:31 -08:00
Andrew Schwartzmeyer 1ef4d923ed Add AssemblyInfo files for Management and Utility
To set their versions to 3.0.0.0
2015-12-16 11:14:58 -08:00
Andrew Schwartzmeyer f6e5164bb0 Update compileFiles and namedResource from makegen
These are now auto-generated in monad-build.
2015-12-15 21:16:18 -08:00
Andrew Schwartzmeyer 2017bb3050 Update source file mapping 2015-12-08 16:24:40 -08:00
Andrew Schwartzmeyer 6fbb220df3 Brought back PowerShell's AssemblyLoadContext
Removes dependency on Microsoft.Extensions.Platform.Abstractions.

Makes use of native executable from `dotnet-cli` impossible; must use
`powershell` from monad-native.
2015-12-08 14:30:24 -08:00
Andrew Schwartzmeyer 96896b5942 Upgrade Microsoft.VisualBasic
How could we possibly even need this? I think we can remove it.
2015-12-08 14:22:01 -08:00
Andrew Schwartzmeyer 5ed21e794f Wild card and sort dependencies
These still need to be pruned.
2015-12-08 11:20:01 -08:00
Andrew Schwartzmeyer 5004839f63 Pin NuGet packages
Using new ASP.NET Release feed and pinned package versions.

Thanks Garret!
2015-12-01 10:56:56 -08:00
Andrew Schwartzmeyer 57ba5eb627 Change package versions back to 3.0.0.0
And fix correctly using assembly-info.cs
2015-11-23 19:43:46 -08:00
Andrew Schwartzmeyer 3bb7c2a994 Change source file paths for move to src subtree 2015-11-23 17:54:30 -08:00
Andrew Schwartzmeyer d6416e64e2 Move DNX assemblies to src subtree 2015-11-23 17:54:30 -08:00