Now that I finally have a decent list of dependencies (though it may
still be too many), I have expanded the dependencies of the package so
that users get better error messages.
I've removed ca-certificates as that's not *necessarily* required (but
needed on Docker to download over HTTPS). This may be true of other
packages too.
* Rename Publish-EchoArgs to Publish-PSTestTools so it can be used
for other tools as well in the future
* Publish EchoArgs to the bin directory instead of run to match
convention
* Add source URL to EchoArgs header comment
* Use wildcard of "*.nuget.props" to match
"test/csharp/csharp.nuget.props" in .gitignore
So that it can be reinstalled separately if desired.
Also removed the set validation as it was now wrong,
and removed the warning about no Invoke-WebRequest on Core PowerShell
(it is ported now).
I don't like the duplicate parameter logic,
especially around -NoSudo.
* Working directory fix for submodule update
The git submodule update for googletest must be run from the script's root directory
* Added try-finally block around Push-Location
Great recommendation from @vors!
The edit is a best practice incase the user Ctrl-C's out of the script.
Tested locally by exiting out of:
try { Push-Location C:\Users\; Start-Sleep -Seconds 60 } finally { Pop-Location }
* 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
* [build.psm1] - mc.exe input file needs quotes
For filenames that have spaces or paths to that file that have spaces, the input filename needs to have quotes around it.
* Quoted more paths so tests run from directories with spaces
Found a few locations where paths weren't qutoed or escaped with '& ...' that are needed to get tests to run from build directories with spaces in them.
- .NET Core RID suffixes removed
- `el7.centos` suffix added to RPM
- `1ubuntu1.14.04.1` iteration used for DEB packages
`~` cannot be used after `ubuntu1` because GitHub release renames it to
a `.`; additionally, no packages lack the final suffix `.1`. While my
machine is `.5` I could find no packages that went past `.3`, so let's
use this to indicate that it works for `14.04.1` and forward.
We are *not* recreating the alpha.9 packages, but will we rename them
accordingly. This means that the filenames will be "correct" but the
meta-data will be out-of-date.
Moved Unix package code into New-UnixPackage, switching on $Types to
call the appropriate function given the list of types.
Also fixed bug with chmod on a symlink; it was unnecessary.
Start-PSPester must ensure that the environment variable `PSMODULEPATH`
is not set before starting the new PowerShell process.
If it is set, then the tests are not guaranteed to be correct,
as they will be operating with the host process's `PSMODULEPATH`,
thus ignoring their own modules.
I also refactored the Start-PSPester command setup code.
Due to https://github.com/Homebrew/brew/pull/597,
.NET Core's installation instructions of `brew link --force openssl` are
now invalid (for good reasons, due to security holes). Until .NET Core
updates their libraries to find the OpenSSL libraries correctly, we can
update them as part of `Start-PSBootstrap`.
See https://github.com/dotnet/cli/issues/3964
- introduce SDK project with our dependencies and CoreCLR framework
for runtime.
- Move dependencies for Full from ConsoleHost to powershell-win-full
- make powershell-win-full Top-level project
- Change build.psm1 to do publish for -FullCLR build
- Update docs
- Replace src\powershell top level project by two
new root-level projects:
- src\powershell-unix
- src\powershell-windows
- Break src\Modules into more granular structure:
- Shared
- Windows+Unix-Core
- Windows-Core
- Windows-Core+Full
- Windows-Full
- To be created: Unix-Core. We will do it as a separate PR
- Fix#1122 : Platform-specific set of Modules (and assemblies)
- Fix Start-TypeGen to work with new top level folders layout
This is somewhat temporary as we're about to investigate using upstream
Pester without needing to have it as a submodule, and failing that,
moving it to a vendor folder.
This is temporary. We need to rewrite the test context to ensure the
AssemblyLoadContext is used properly, since the default can no longer be
initialized.
- Add Start-PSBuild -Clean
- Normalize $env:PATH references in .\build.psm1
- Add more logging in Resolve-Xaml for troubleshooting
- Always use msbuild from the Microsoft.NET v4.0.30319
- Rename Resolve-Xaml into Start-XamlGen for consistency with Start-TypeGen and Start-ResGen
- Disable pwrshplugin build temporarely
New function smartly adds the probable location of the .NET CLI tools to
the path if `dotnet` is not found. If it is still not found, it restores
the path. All functions using `dotnet` should call `Find-Dotnet` first.
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.
- Split mappings.json into mappings.json for every project (folder under
src)
- Throw away src\monad prefix, now it's not relevant
- Remove New-MappingsFile
- Rename Copy-SubmoduleFiles to Copy-MappedFiles
- Make Copy-MappedFiles flexible about set of mappings.json that it
uses
Linux and OS X no longer install packages, instead they download the
1.0.0 uninstall and install scripts provided by .NET CLI, uninstall all
existing `dotnet` packages, and "install" the latest 1.0.0 preview2
version of `dotnet` to `~/.dotnet`, which `Start-PSBuild` automatically
picks up.
Additionally, `Start-PSBootstrap` only attempts to install dependencies
when it detects that it is on Ubuntu 14.04, otherwise it warns that
dependencies must be installed manually, and still installs `dotnet` via
their obtain script. This makes `Start-PSBootstrap` safe to run on
Debian, and usable on CentOS.
* Last PR had a typo in "TestAruments" which caused the configuration
not to get picked up
* Now bails appropriately if PowerShell wasn't built, instead of
rebuilding it every time
* Passes `-verbose` to the xUnit runner, not dotnet, so we can see which
test failed
This project was removed and provided as a package in the windows-build
submodule. The artifact uploading to AppVeyor fails because this was not
updated.