Commit Graph
100 Commits
Author SHA1 Message Date
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 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
Andrew Schwartzmeyer b47cf338a9 Delete Runtime facade
Deprecated with new lockfile parser.
2016-03-22 20:32:50 -07:00
Andrew Schwartzmeyer ef91bf76d0 Revert "Disable xUnit tests on Travis"
This reverts commit a7e6a946b7.

Resolves #727.
2016-03-22 12:21:32 -07:00
Andrew Schwartzmeyer 75acfaeb88 Bump .NET Core packages to build 23922 2016-03-22 12:21:15 -07:00
Andrew Schwartzmeyer d5d0d29cf9 Fix use of install.ps1 on AppVeyor
Resolves #718.

The 1.0.0 builds are no longer in the "beta" channel.

Update version to 1888.
2016-03-21 14:31:41 -07:00
Andrew Schwartzmeyer a7e6a946b7 Disable xUnit tests on Travis
The .NET Core xUnit runner is incompatible with build 23921. We have to
disable running the tests until dotnet/cli#1975 is resolved.
2016-03-21 14:31:41 -07:00
Andrew Schwartzmeyer 78defa739d Update CorePsTypeCatalog 2016-03-21 14:31:40 -07:00
Andrew Schwartzmeyer f904be118b Update runtime facade 2016-03-21 14:14:58 -07:00
Andrew Schwartzmeyer 3e5dc14014 Downgrade packages from rc3 to rc2
Since 'rc3' is 'vnext', not just closer to the actual release.
2016-03-21 14:14:58 -07:00
Andrew Schwartzmeyer 4c13f22216 Bump .NET packages to build 23921
- Bumps NETStandard.Library to 1.5.0-rc3, fixes #663.
- Remove reference to Unsupported.Platform.API, fixes #639.
2016-03-21 14:14:58 -07:00
Andrew Schwartzmeyer deba3a516c Stop deploying ps1xml files for xUnit 2016-03-21 14:14:58 -07:00
Andrew Schwartzmeyer 4af3564aba Stop deploying ps1xml files
Note that we leave the ps1xml file parsing code alone in monad, as
third-party code may use the InitialSessionState interfaces directly and
thus ask for these files to be parsed. The removal of these files is a
pure performance work-around, where instead of parsing the XML, a
pre-parsed C# version of the file is loaded.
2016-03-18 09:46:23 -07:00
Andrew Schwartzmeyer 08c67aa2bb Bump monad and windows-build submodules 2016-03-18 09:46:23 -07:00
Andrew Schwartzmeyer 1665d6c525 Add SessionStateTests to AssemblyLoadContext collection 2016-03-17 19:11:41 -07:00
Andrew Schwartzmeyer 60ef5cd58d Add xUnit tests readme 2016-03-17 18:20:05 -07:00
Andrew Schwartzmeyer 6d93a1766b Add all classes to AssemblyLoadContext collection
To ensure that the initializer is called before any other code. This is
as close to a global init hook as I can find.
2016-03-17 18:15:39 -07:00
Andrew Schwartzmeyer b820817c84 Fix AssemblyLoadContext fixture
Resolves #676.
2016-03-17 17:36:06 -07:00
Andrew Schwartzmeyer 6ec3dc308e Build Linux configuration for xUnit tests 2016-03-17 17:18:01 -07:00
Andrew Schwartzmeyer 41260dd9c8 Run xUnit tests on Travis 2016-03-17 17:13:16 -07:00
Andrew Schwartzmeyer 79a9294379 Enable exit code from xUnit runner 2016-03-17 17:12:54 -07:00
Andrew Schwartzmeyer 1457082fd0 Fix powershell -c 'throw error'
When executing a single command block, two bugs existed.

1) Exceptions were not reported, instead it core dumped
2) The error code was not set, instead 0 was returned

Fixing 1) required calling `Execute` instead of `ExecuteHelper` as the
latter handles exception through `ReportException`.

Fixing 2) required setting the listener's error code when an exception
was thrown, and resetting it for each command when an interactive
session is running.
2016-03-17 13:32:10 -07:00
Andrew Schwartzmeyer b89a908e57 Build on Travis using PowerShell build module 2016-03-17 12:47:43 -07:00
Andrew Schwartzmeyer 412709c619 Bump Travis CI version to 1675
The latest in the feed, per the readme.
2016-03-17 12:47:43 -07:00
Andrew Schwartzmeyer 934304c17d Add download script to obtain PowerShell release
This requires that $GITHUB_TOKEN be set. Travis sets this as a secure
environment variable; a user can provider their own.
2016-03-17 12:47:43 -07:00
Andrew Schwartzmeyer 38a53d68b4 Improve readme 2016-03-16 23:49:26 -07:00
Andrew Schwartzmeyer 6e98692827 Revert "Update README.md"
This reverts commit 0908997a8e.

Fixes #675
2016-03-15 21:14:58 -07:00
Andrew Schwartzmeyer 3eeda101c3 Bump NETStandard.Library to 1.5.0-rc2-23911
The rc3-23914 version does not restore `System.Private.Uri` correctly,
but this version does. Bug reported to dotnet/corefx#6883.
2016-03-14 17:03:58 -07:00
Andrew Schwartzmeyer 9bd361abe1 Bump .NET package builds to 23914 2016-03-14 16:55:25 -07:00
Andrew Schwartzmeyer 447b3ef729 Update xUnit runner to netstandardapp1.5
This was enabled in dotnet/coreclr.xunit#12
2016-03-14 16:51:49 -07:00
Andrew Schwartzmeyer 830c6b50d2 Fix runtime facade package versions
These packages had their semantic versions get updated, but the
corresponding packages in the facade were forgotten.
2016-03-14 16:51:05 -07:00
Andrew Schwartzmeyer 5901e70dd0 Revert work-around in Json.Tests.ps1
This resolves #627.
2016-03-14 13:39:32 -07:00
Andrew Schwartzmeyer c87d99bba0 Bump omi-provider with AppContext.BaseDirectory fix 2016-03-14 13:38:25 -07:00
Andrew Schwartzmeyer 2beb92ce43 Add note on writing good commit messages 2016-03-14 12:29:07 -07:00
Andrew Schwartzmeyer 342a7530c7 Update FullCLR detailed build instructions
This was left out of date as of #655. It is also needed to be a
subsection of the detailed build notes section.

Some typos and superfluous information were fixed.
2016-03-14 12:29:07 -07:00
Andrew Schwartzmeyer a2974fa7fe Move Git installation instructions to contributing
The readme is getting quite large, so in an effort to shorten it, the
Git installation instructions (which have nothing to do with PowerShell,
but are helpful for new users), are now in `CONTRIBUTING.md`. Thus, if
someone is totally new to Git, they will be far more likely to review
our contributing guidelines, and so read our rules and best practices.

Cloning the source code was cleaned up so that initializing the
submodules is done in a separate step. This simplifies the first step,
making it more likely to succeed (and narrowing the possible failures).
2016-03-14 12:29:07 -07:00
Andrew Schwartzmeyer 724f9c4d4e Remove PsModulePath step from Windows instructions
This gets automatically set correctly thanks to #646.
2016-03-14 11:21:16 -07:00
Andrew Schwartzmeyer f3f4fa281d Fix PSRP build notes
These got split up. Moved them all to detailed build notes section.
2016-03-14 11:20:46 -07:00
Andrew Schwartzmeyer 9d709e8eaa Update note on PowerShellGitHubDev module 2016-03-14 11:19:56 -07:00
Andrew Schwartzmeyer dd25c4c50b Remove DSC build notes
This should have been removed with the DSC submodule.
2016-03-14 11:19:22 -07:00
Andrew Schwartzmeyer 5515c23854 Move repo permissions note to contributing docs
And remove the skip CI note, as it is already noted in CONTRIBUTING.md.
2016-03-14 11:18:44 -07:00
Andrew Schwartzmeyer 44a991c24d Upgrade CLI to build 1718
Per dotnet/cli#1783, this should resolve PowerShell/PowerShell#638.

Unfortunately, per dotnet/cli#1839, the Ubuntu package feed is
out-of-date. So now Travis and AppVeyor aren't quite in sync. This is
not great, but the Ubuntu version of CLI does not have the same
regression that the Windows version had.

The readme has been updated to note how to install an actually
up-to-date copy on Linux.
2016-03-14 10:49:31 -07:00
Andrew Schwartzmeyer ed1536ed7f Bump monad with quick bugfix 2016-03-09 15:10:59 -08:00
Andrew Schwartzmeyer 7148cfc427 Print dotnet --version on AppVeyor 2016-03-09 14:26:19 -08:00
Andrew Schwartzmeyer 7f60921094 Target net451 instead of dnx451 for FulLCLR 2016-03-09 14:25:35 -08:00
Andrew Schwartzmeyer 6624814a69 Bump monad submodule with PsModulePath fix 2016-03-09 13:46:37 -08:00
Andrew Schwartzmeyer 887ac21256 Remove accidentally committed temporary file
This file was used to convert the test from UTF-8 with BOM to ASCII, and
got caught in a `git commit -a`.
2016-03-08 19:15:22 -08:00
Andrew Schwartzmeyer 2c649d51f1 Update readme and known issues
[ci skip]
2016-03-08 10:12:28 -08:00
Andrew Schwartzmeyer 05ef797849 Add -Clean switch to Start-PSBuild
And use full names of cmdlets.
2016-03-07 16:43:05 -08:00
Andrew Schwartzmeyer 4e76a6261f Validate -Runtime 2016-03-07 16:43:05 -08:00
Andrew Schwartzmeyer e349704fa1 Add Start-PSPackage -Type switch to build any output
If not specified, "deb" is used as default on Linux. This should be
updated to check the distribution and required package build
dependencies.

Dependency names switched per package type, since specific package names
are different. Should check if this causes an issue on OS X when the
names are empty.
2016-03-07 16:43:05 -08:00
Andrew Schwartzmeyer 9c41d1eff7 Bump monad and windows-build submodules with SD updates 2016-03-07 16:35:22 -08:00
Andrew Schwartzmeyer e1c0f68098 Add switch to Start-PSBuild any specific -Runtime
Much better argument passing to CLI. Thanks @vors.
2016-03-07 16:08:50 -08:00
Andrew Schwartzmeyer 5671a1113d Add CentOS 7.1 runtime 2016-03-07 15:31:08 -08:00
Andrew Schwartzmeyer 57181103cf Bump .NET CLI to build 1638 2016-03-07 14:17:31 -08:00
Andrew Schwartzmeyer 24eaf8bad8 Add newly required packages
These packages are new requirements as of the 23907 build due to
refactoring of the .NET libraries.
2016-03-07 14:17:31 -08:00
Andrew Schwartzmeyer faec94ffcf Add Microsoft.NETCore.Unsupported.Platform.API package
This package contains the Windows runtime assemblies of packages that
are not actually supported on Linux. The assemblies exist in the Linux
runtime folder. While the code cannot be executed, this allows
PowerShell to use the Windows specific types in its function calls
without crashing (and allows compiling with these types in the first
place). This is *not* an ideal work-around, but we are waiting on a
better package from .NET that contains Linux runtime assemblies that
throw `PlatformNotSupported` exceptions on use.
2016-03-07 14:17:31 -08:00
Andrew Schwartzmeyer 93f8a3360f Bump versions of upgraded packages
These packages had their minor and patch versions updated in addition to
the updated build number.
2016-03-07 13:59:11 -08:00
Andrew Schwartzmeyer e12f5a427e Bump .NET packages to 23907 2016-03-07 13:59:11 -08:00
Andrew Schwartzmeyer 876a3164b8 Bump libpsl-native with OS X fixes 2016-03-04 20:02:46 -08:00
Andrew Schwartzmeyer 0df9b76322 Fix Start-Process tests
OS X's ping command requires the flags to be specified before the
arguments. I also reduced the ping count so that the tests execute a bit
faster. This resolves #556.
2016-03-04 17:35:13 -08:00
Andrew Schwartzmeyer 6382bfb069 Enable Add-Type test on Windows
Resolves #606.
2016-03-04 15:55:55 -08:00
Andrew Schwartzmeyer a93e77d6c9 Import Platform module in pester.sh for Travis 2016-03-04 15:46:54 -08:00
Andrew Schwartzmeyer 2fbc07fa72 Import Platform module on AppVeyor 2016-03-04 15:44:39 -08:00
Andrew Schwartzmeyer 0c6b14adab Programmatic indentation and whitespace-cleanup of tests 2016-03-04 14:52:27 -08:00
Andrew Schwartzmeyer 0aaf74bdcc Convert Pester tests to ASCII
Instead of UTF-8 with BOM.

Resolves #417.
2016-03-04 14:48:30 -08:00
Andrew Schwartzmeyer 901160cb78 Fix Get-Location tests
These should never have passed.
2016-03-04 14:42:36 -08:00
Andrew Schwartzmeyer 15f8433d98 Use $PSScriptRoot instead of assigning $here 2016-03-04 14:42:08 -08:00
Andrew Schwartzmeyer c37a0c4a64 Increase New-TimeSpan difference to reduce errant failures 2016-03-04 14:41:33 -08:00
Andrew Schwartzmeyer 579287c53d Fix ExecutionPolicy tests to -Skip instead of return 2016-03-04 14:40:51 -08:00
Andrew Schwartzmeyer 4feb665203 Update PSVersionTable tests for PSEdition 2016-03-04 14:40:33 -08:00
Andrew Schwartzmeyer 615eca6fd5 Use -Skip:$IsWindows
Uses the $IsWindows etc. booleans from the Microsoft.PowerShell.Platform
module instead of sourcing Test-Common repeatedly.
2016-03-04 14:39:18 -08:00
Andrew Schwartzmeyer de6a452f63 Pester test formatting cleanups 2016-03-04 14:38:01 -08:00
Andrew Schwartzmeyer 7673c4e90f Add Microsoft.PowerShell.Platform module
- Exports the IsCore, IsLinux, IsOSX, and IsWindows variables
- Imported by the default PSL profile
- Can be used automatically in Pester tests and Open PowerShell sessions
- Should maybe become a default module once it is polished
- PowerShellGitHubDev module does not explicitly use it because on
  FullCLR PowerShell (normal Windows development) it will not be
  imported automatically
2016-03-04 12:11:01 -08:00