Commit Graph
100 Commits
Author SHA1 Message Date
Andrew Schwartzmeyer bc7030dae0 Deprecate build.sh script
If `powershell` is installed, run `Start-PSBuild` to ensure DWIM. Else,
direct user to Linux / OS X build documentation.

Resolves #767.
2016-04-07 14:19:35 -07:00
Andrew Schwartzmeyer e97ccc1c5f Refer to contributing guidelines in building documentation
For #771.
2016-04-07 13:56:20 -07:00
Andrew Schwartzmeyer d7f60447ec Quick markdown cleanups 2016-04-07 13:56:20 -07:00
Andrew Schwartzmeyer 4960e6e39c Refactor submodule documentation
Moved notes on submodules out of contributing guidelines and into
`docs/git/submodules.md` as most developers will touch them infrequently
now.
2016-04-07 13:56:20 -07:00
Andrew Schwartzmeyer fe0ad12598 Update test documentation 2016-04-04 19:20:26 -07:00
Andrew Schwartzmeyer 51fcd5cdb4 Update Windows Full building documentation 2016-04-04 19:18:15 -07:00
Andrew Schwartzmeyer 9bad78a435 Update Windows Core building documentation 2016-04-04 19:08:03 -07:00
Andrew Schwartzmeyer 3ad6afbec4 Update OS X building documentation 2016-04-04 19:08:03 -07:00
Andrew Schwartzmeyer 11d07d7f42 Update Linux building documentation 2016-04-04 19:08:03 -07:00
Andrew Schwartzmeyer a6fd5c70d9 Fix FullCLR build script for build instead of publish 2016-04-01 23:10:34 -07:00
Andrew Schwartzmeyer 4a7a521077 Fix powershell-native output directory
Thanks Stack Overflow https://stackoverflow.com/a/7750816
2016-04-01 23:10:33 -07:00
Andrew Schwartzmeyer 1b3bd12230 Don't load Netwonsoft.Json from path
It's already loaded.
2016-04-01 22:35:00 -07:00
Andrew Schwartzmeyer d27ae18ca0 Skip Add-Type.Tests.ps1
This broke and needs to be fixed.
2016-04-01 22:35:00 -07:00
Andrew Schwartzmeyer b9d8e890c5 Remove deprecated pester.sh script 2016-04-01 22:35:00 -07:00
Andrew Schwartzmeyer aa21bfc635 Use Start-PSPester on Travis 2016-04-01 22:35:00 -07:00
Andrew Schwartzmeyer a3cd2b3453 Add Start-PSPester function to replace pester.sh
Super basic function that should be rewritten.
2016-04-01 22:35:00 -07:00
Andrew Schwartzmeyer b19fdb24ac Throw in Get-PSOutput 2016-04-01 22:35:00 -07:00
Andrew Schwartzmeyer 68879655a5 Formatting and function extractions 2016-04-01 22:35:00 -07:00
Andrew Schwartzmeyer f3f0bc0b11 Fix Pester path for Travis 2016-04-01 22:35:00 -07:00
Andrew Schwartzmeyer c66375e82d Fix paths for AppVeyor 2016-04-01 22:35:00 -07:00
Andrew Schwartzmeyer a158bf654d Disable Travis cache 2016-04-01 20:49:23 -07:00
Andrew Schwartzmeyer 4601340f54 Use Start-PSxUnit on Travis 2016-04-01 20:49:03 -07:00
Andrew Schwartzmeyer 3895492da1 Remove deprecated update-content.sh 2016-04-01 20:47:58 -07:00
Andrew Schwartzmeyer b8cec0a00e Remove deprecated xunit.sh script 2016-04-01 20:46:24 -07:00
Andrew Schwartzmeyer 8e397ec1a1 Add Start-PSxUnit function
Replaces `./xunit.sh` to run xUnit tests on Linux. Pretty basic, can
definitely be extended to support other flavors.
2016-04-01 20:45:32 -07:00
Andrew Schwartzmeyer 067609cdce Add runtimes back to xUnit runner
Per dotnet/cli#2201
2016-04-01 20:25:12 -07:00
Andrew Schwartzmeyer 151b5525c6 Merge src/Modules and host specific Modules 2016-04-01 19:40:18 -07:00
Andrew Schwartzmeyer 6d691de665 Log location of PowerShell build output 2016-04-01 19:15:52 -07:00
Andrew Schwartzmeyer 5a1666c984 Fix programatic references to Linux.Host 2016-04-01 19:15:41 -07:00
Andrew Schwartzmeyer 5c1fb845c4 Rename Linux.Host to Host 2016-04-01 18:56:26 -07:00
Andrew Schwartzmeyer 61825110d0 Add Modules to mapping.json 2016-04-01 18:56:26 -07:00
Andrew Schwartzmeyer a9f1603a97 Rename dotnet restore arguments variable 2016-04-01 18:15:43 -07:00
Andrew Schwartzmeyer ff73a5cd98 Move Pester to src/Modules 2016-04-01 18:09:30 -07:00
Andrew Schwartzmeyer 9571b220b2 Initialize googletest submodule on Travis 2016-04-01 18:04:25 -07:00
Andrew Schwartzmeyer 774dcb7996 Migrate libpsl-native googletest submodule 2016-04-01 18:02:20 -07:00
Andrew Schwartzmeyer 0102a55da5 Add 'src/libpsl-native/' from commit '4bb241ad11c54985617343fbeb8700cfdcdf7ae0'
git-subtree-dir: src/libpsl-native
git-subtree-mainline: 2264613ae3
git-subtree-split: 4bb241ad11
2016-04-01 17:59:08 -07:00
Andrew Schwartzmeyer 2264613ae3 Remove libpsl-native submodule 2016-04-01 17:57:58 -07:00
Andrew Schwartzmeyer 2b46e0d5eb Add $script:Output to store location of executable 2016-04-01 17:56:07 -07:00
Andrew Schwartzmeyer fde63f4bc0 Add win81-x64 runtime
It's what AppVeyor uses.
2016-04-01 17:52:00 -07:00
Andrew Schwartzmeyer 540acd59d1 Install latest .NET CLI packages on Travis 2016-04-01 17:52:00 -07:00
Andrew Schwartzmeyer 2ddf3e9ff0 Bump .NET CLI version on AppVeyor 2016-04-01 16:52:14 -07:00
Andrew Schwartzmeyer 1293c63289 Deploy powershell.exe as content for ConsoleHost
CMake will now output the artifacts of the native build into the
ConsoleHost project, where .NET CLI picks it up as content and deploys
it automatically.
2016-04-01 16:48:16 -07:00
Andrew Schwartzmeyer bf470de5ca Obtain runtime from dotnet --info
This is a breaking change that requires developers to update their
version of .NET CLI. In order to stop specifying where dotnet should
output the artifacts, we need to be able to guess their location
correctly, which requires knowing the current RID (and framework).
2016-04-01 14:48:41 -07:00
Andrew Schwartzmeyer 6cf8e39d1a Refactor native build steps
Move dependency checks to precheck section and make conditional more
sensible.
2016-04-01 14:48:41 -07:00
Andrew Schwartzmeyer aa5c30d42e Whitespace and style cleanups 2016-04-01 14:48:41 -07:00
Andrew Schwartzmeyer 34f6b44d99 Remove --runtime argument to dotnet restore 2016-04-01 14:48:41 -07:00
Andrew Schwartzmeyer 5c1e295e9a Remove -Output switch from PowerShellGitHubDev
This is a breaking that stops publishing PowerShell by default, and
instead relies on `dotnet build`. Thus the artifacts will be output to a
new (RID, framework, and project dependent) location.

Publishing will still be needed to produce packages, but this logic will
be moved into `Start-PSPackage`.
2016-04-01 14:47:30 -07:00
Andrew Schwartzmeyer b9232256fb Remove duplicate #if CORECLR from SMA/CoreCLR 2016-04-01 13:16:35 -07:00
Andrew Schwartzmeyer 6ad880722c Add PAL_DBG_CHANNELS note 2016-04-01 13:16:35 -07:00
Andrew Schwartzmeyer c128bbfe62 Add COREHOST_TRACE debugging note 2016-04-01 13:16:35 -07:00
Andrew Schwartzmeyer 646d234d1f Revert "Remove runtimes sections from projects"
This reverts commit 47fd1a45bc.

Per dotnet/cli#2029, RID inference is no longer supported by NuGet, and
so the runtimes section needs to exist again.
2016-04-01 13:01:15 -07:00
Andrew Schwartzmeyer b88980590c Put version back to make VS Code happy 2016-04-01 10:26:50 -07:00
Andrew Schwartzmeyer 39f92b436d Bump windows-build
This commit was forgotten.
2016-03-31 13:31:21 -07:00
Andrew Schwartzmeyer f49e2b259c Update CorePsTypeCatalog.cs 2016-03-31 13:22:04 -07:00
Andrew Schwartzmeyer d7b104110e Bump .NET Core packages to 23931-00 2016-03-31 12:33:44 -07:00
Andrew Schwartzmeyer b79af07fbb Add Linux and Windows installation instructions 2016-03-30 23:30:26 -07:00
Andrew Schwartzmeyer 4b58168a87 Fix up Git docs 2016-03-30 23:30:26 -07:00
Andrew Schwartzmeyer f03c5f4c0b Ignore all libraries in host 2016-03-30 23:30:26 -07:00
Andrew Schwartzmeyer 666d036fd8 Move debugging docs 2016-03-30 23:30:26 -07:00
Andrew Schwartzmeyer b8435da8db Fix up .vscode files 2016-03-30 23:30:26 -07:00
Andrew Schwartzmeyer f1d27d518c Move PSRP notes 2016-03-30 23:30:26 -07:00
Andrew Schwartzmeyer 6f8daacf31 Add test/README.md 2016-03-30 23:30:26 -07:00
Andrew Schwartzmeyer 609a4c31e9 Fix up Pester test documentation 2016-03-30 23:30:25 -07:00
Andrew Schwartzmeyer 9785be2bb0 Remove long deprecated docker script 2016-03-30 21:33:57 -07:00
Andrew Schwartzmeyer c52c5001cb Add build instructions matrix to readme 2016-03-30 21:33:57 -07:00
Andrew Schwartzmeyer d6c5242c52 Move Windows .NET Full instructions 2016-03-30 21:33:57 -07:00
Andrew Schwartzmeyer 444d42f0d3 Move Windows .NET Core build instructions 2016-03-30 21:33:57 -07:00
Andrew Schwartzmeyer 6f0c671853 Document OS X dependency installation instructions 2016-03-30 21:33:57 -07:00
Andrew Schwartzmeyer 1937ad5784 Move Linux instructions to docs/building/linux.md 2016-03-30 21:33:57 -07:00
Andrew Schwartzmeyer 19e870aad2 Refactor readme header 2016-03-30 21:30:06 -07:00
Andrew Schwartzmeyer 3d06cace7c Remove deprecated dependencies doc 2016-03-30 21:30:06 -07:00
Andrew Schwartzmeyer fd51ebe78f Remove obsolete testing docs 2016-03-30 21:30:06 -07:00
Andrew Schwartzmeyer 9819c2bafb Move Git documents to subfolder 2016-03-30 21:30:06 -07:00
Andrew Schwartzmeyer e972cf27b7 Bump monad submodule with ALC/TPA fixes 2016-03-29 14:38:21 -07:00
Andrew Schwartzmeyer 37d825c741 Don't send a path to the ALC 2016-03-29 13:18:35 -07:00
Andrew Schwartzmeyer 497afcd237 Fix build.sh for new location of libpsl-native 2016-03-29 11:46:16 -07:00
Andrew Schwartzmeyer 489af53052 Bump libpsl-native submodule 2016-03-29 11:18:31 -07:00
Andrew Schwartzmeyer 03c452c98c Deploy native library automatically 2016-03-29 11:18:12 -07:00
Andrew Schwartzmeyer 4bb241ad11 Output libraries to host directory 2016-03-29 11:17:48 -07:00
Andrew Schwartzmeyer eb938415bc Fix use of ResourceManager in monad 2016-03-28 10:49:08 -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 6433650edf Add System.IO.MemoryMappedFiles dependency
This is a runtime dependency that causes an internal exception to be
thrown and caught when not available.
2016-03-26 17:26:18 -07:00
Andrew Schwartzmeyer aedaf53813 Bump windows-build submodule with resources fixes 2016-03-26 15:31:45 -07:00
Andrew Schwartzmeyer 3d8a3b9d45 Replace Eventing's namedResource section with resource 2016-03-26 15:30:48 -07:00
Andrew Schwartzmeyer af9296035c Replace ConsoleHost's namedResource section with resource 2016-03-26 15:30:45 -07:00
Andrew Schwartzmeyer b363fc909e Replace Security's namedResource section with resource 2016-03-26 15:30:26 -07:00
Andrew Schwartzmeyer 76fd8bd436 Replace Management's namedResource section with resource 2016-03-26 15:30:07 -07:00
Andrew Schwartzmeyer 3979d4c206 Replace Utility's namedResource section with resource 2016-03-26 15:29:48 -07:00
Andrew Schwartzmeyer 9a52f1eaa7 Replace SMA's namedResource section with resource
Specifically this enables us to leverage `dotnet-resgen` to
auto-generate the `resx` files into `resources` files for the default
culture, which are then compiled into the SMA assembly.

This requires a change to the C# bindings. The Windows build system
takes `file.resx` and compiles `file.resources`, but CLI prepends the
assembly name, thus compiling `SMA.file.resources`. So the resource
manager in the generated bindings must be adjusted to look for
`SMA.file` instead of `file`.

Note that C# bindings cannot yet be auto-generated.

Given localized resources of the form `file.en-US.resx`, `dotnet-resgen`
will create a satellite assembly and publish it to
`en-US/SMA.resources.dll`, so #666 will not be a technical problem.
2016-03-26 15:29:17 -07:00
Andrew Schwartzmeyer 18ba3f3365 Fix VS Code attach debugging configuration
Needs to be `processName`, not `program`. Go figure.
2016-03-26 15:27:15 -07:00
Andrew Schwartzmeyer f9e7e6c89c Handle Start-PSBuild -Restore -Runtime ...
If a runtime is given, we need to restore for that particular runtime as
well.

This also enables `Warning` `dotnet restore` output, and increases the
verbosity to `Info` if `-Verbose` is used.
2016-03-25 15:08:30 -07:00
Andrew Schwartzmeyer 47fd1a45bc Remove runtimes sections from projects
No longer necessary to restore/build. Removing them allows NuGet to
restore only the packages necessary for the current platform, vastly
reducing cache sizes and restore time.

My `~/.nuget/packages` directory was almost 1GB smaller with this
change.
2016-03-25 14:29:18 -07:00
Andrew Schwartzmeyer 840d14e6df Add attach configuration 2016-03-25 14:16:38 -07:00
Andrew Schwartzmeyer c7124578ed Bump packages back to rc3
The primary reason to do this is that the VS Code debugger is not
compatible with rc2.

Secondarily, we want to continue tracking CoreCLR/FX master branch,
which means to continue with the latest release candidates. Since we are
releasing in August, we will be able to pick up the converged RTM
version before release.

The only advantage of rc2 is that it is frozen; but we have this anyway
because we snap to particular builds.
2016-03-25 13:03:07 -07:00
Andrew Schwartzmeyer 94e3a905bd Add VS Code launch and task files
This enables building PowerShell through VS Code. The build task
launches the installed version of PowerShell and runs
`Start-PSBuild` (after importing the module).

This enables a `launch` debug task to immediately debug the `powershell`
process, without having to attach to an external process.

The defaults of `justMyCode` and `stopAtEntry` have been reversed, so
that all code is debugged, and the process is stopped at entry for
easier debugging.

Note that an interactive PowerShell process requires access to `stdin`,
which the debug console does not provide, so once it requests access,
`System.Console` will throw a (correct) exception.
2016-03-24 16:26:05 -07:00
Andrew Schwartzmeyer ea41c39859 Fix CoreCLR.Eventing dependency versions 2016-03-22 21:49:56 -07:00
Andrew Schwartzmeyer e88e463315 Add regression test .NET class interop
This bug arose because of a shortcut previously taken when generating
input for the type catalog generator. With a proper parser created, the
input to the generator is now correct, and so this test should succeed.
2016-03-22 21:41:46 -07:00
Andrew Schwartzmeyer d78852dd13 Update CorePsTypeCatalog with reference assemblies
Resolves #720
2016-03-22 21:17:05 -07:00
Andrew Schwartzmeyer 4f3d778b58 Update type catalog generator build script 2016-03-22 21:16:14 -07:00
Andrew Schwartzmeyer e3960a832e Add type catalog parser project
Parses PowerShell's `project.lock.json` file and emits the list of
reference assemblies suitable for the type catalog generator.
2016-03-22 20:55:19 -07:00