Commit graph

126 commits

Author SHA1 Message Date
Andrew Schwartzmeyer 54874180ce Remove build and doc references to Git submodules (#8177)
As of #7892, the PowerShell repository no longer uses Git submodules.
This is fantastic from a workflow standpoint, and so all the notes about
how to deal with submodules (and all the build steps explicitly
initializing and updating submodules) can be safely removed.
2018-11-05 10:39:29 -08:00
Ilya 371d25a74b Update to .NET Core 2.1.5 with SDK 2.1.403 (#7936) 2018-10-03 13:31:56 -07:00
Dongbo Wang 0f0c46dfe5 Update to .NET Core 2.1.4 with SDK 2.1.402 (#7834) 2018-09-21 13:25:03 -07:00
Ilya c34d3ef332 Update to latest package references, runtime framework, and SDK (#7646)
* Move to .Net Core SDK 2.1.401 and runtime 2.1.3

* Update package references
2018-08-30 18:39:44 -07:00
Travis Plunk b15709f444 update to latest package references, runtime framework, and SDK (#7272)
* update to latest package references

* update runtime framework

* update sdk

* automatically read NuGet package dependency info from csproj, where version info is fully qualified

* update file.wxs
2018-07-13 09:00:35 +05:00
Ilya 839ecb866f Move to dotnet core 2.1.1 (#7161) 2018-06-28 23:10:10 -07:00
Christoph Bergmeister fbbca53f4c AppVeyor build matrix: more efficient build job split to reduce total time by another 5 minutes (#7021)
Closes #6944

Following PR #6945, further, reduce the total build time (without any disadvantages) by around 5 minutes by making sure there is a more even split between the 2 build jobs (the 2nd build job used to be much shorter).
Therefore this PR moves also the xUnit and Pester-Admin tests into the 2nd build job. If it is a daily/feature test commit, then the feature tests will also happen (only) in the 2nd build job. Because both jobs now run tests, the failfast option was removed. The final question from my side is whether running tests in 2 build jobs is OK for the daily build, which uploads code coverage results?

The time to wait for the AppVeyor build results is now 15 +/- 2 minutes, which is a huge improvement to what used to be around 28 minutes before the build matrix was introduced.
2018-06-11 14:18:51 -07:00
Christoph Bergmeister 2ec3056f9e Use Appveyor matrix for faster PR builds (#6945)
Related: #6944

Reduce PR build time by 5 minutes by:

Having Packaging as a separate build job in a matrix -> runs in parallel in PR builds because the Microsoft account is a paid account that allows that (at no additional costs)
Not caching the dotnet folder anymore, which is too large and the overhead of zipping/unzipping/upload/download does not pay off (and fails in forked builds that are on a free AppVeyor account due to the size).
Setting the environment variable DOTNET_SKIP_FIRST_TIME_EXPERIENCE to 1 because the initialization of the dotnet CLI cache (1 minute) does not pay off for the whole build.
The total build time of builds on a fork that is on a free AppVeyor account and therefore does not have parallelism, remains the same due to the time saving of redundant caching.

This is just a simple example of what we can easily achieve, we could continue this pattern and split the test runs as per the referenced issue to bring PR builds down to 10 minutes (but this will incur an increase for fork builds on free AppVeyor accounts)
2018-06-05 10:48:44 -07:00
Steve Lee 5dc7a6cb07 Add Windows Compatibility Pack 2.0.0 to PS Core and adopt the official .NET Core 2.1 (#6958)
To support PowerShell modules built with .NET Windows Compatibility Pack, we decided that it was best to ship the WCP assemblies with PS Core. This also adds many new .NET APIs be default while only adding ~3.5 MB additional disk footprint (to a ~137 MB install currently).
Also update the build to adopt the official .NET Core 2.1.
2018-06-03 22:06:26 -07:00
Travis Plunk 948532ac83
Don't cache files that change every build (#6901)
Don't cache files that change every build
Fixes #6894
2018-05-21 14:18:56 -07:00
Steve Lee ed282ce0ef Update PowerShell to build against netcoreapp.2.1-rc1 (#6873) 2018-05-16 23:18:53 -07:00
Ilya 84344cbb32 Update PowerShell to build with .NET Core SDK 2.1.300-rc1-008662 (#6718)
* Build Update
- Change `TargetFramework` to `netcoreapp2.1` and removed unnecessary `RuntimeFrameworkVersion` from `PowerShell.Common.props`
- Update dotnet SDK to 2.1.300-rc1-008662
- Update `TypeGen` target in `Build.psm1` to work with 2.1
- Rename macOS runtime to `osx-x64` as the old build logic expects 10.12 and breaks running on 10.13 system.
- Remove `PackageReference` to `System.Memory` as it's part of dotnetcore 2.1
- Update search for `crossgen` executable to find the matching version

* Test Update
- Update test tools `WebListener` to latest `asp.net core`
- Marked `AuthHeader Redirect` tests as `Pending` due to change in CoreFX
2018-05-02 16:58:39 -07:00
Steve Lee f760fde0b7 Remove support for file to opt-out of telemetry, only support env var (#6601)
Since a PR added support to opt out of telemetry via an environment variable, we can remove the,
always intended to be a temporary, solution of deleting a file to opt out of telemetry since the
environment variable can be defined at the system level and exist before even installing PowerShell Core.

Because the variable is defined as opt out, a value of true, yes, or 1 means no telemetry is sent.
2018-04-13 10:29:39 -07:00
Travis Plunk a099786cdc
Update to DotNet 2.0.6 (#6403)
Update to DotNet 2.0.6
  - this addresses [Microsoft Security Advisory CVE-2018-0875: Hash Collision can cause Denial of Service](https://github.com/PowerShell/Announcements/issues/4)
  - This is a port of d607f207b9 to 6.1
2018-03-15 14:54:00 -07:00
Ilya 05ca36463a Build: Update PowerShell to build with .NET Core SDK 2.1.4 (#6054) 2018-01-31 14:56:20 -08:00
Ilya 89bdb1796c Update PowerShell to build with .NET Core 2.0.5 (#5903) 2018-01-16 17:36:37 -08:00
Dongbo Wang d966f59a11
Update PowerShell to build with .NET Core runtime 2.0.4 (#5677) 2017-12-12 13:53:22 -08:00
Dongbo Wang b3e7fd374f Move to the official .NET Core 2.0 (#4603)
* Migrate to official .NET Core 2.0

* [Feature] Remove chmod code as the issue has been fixed in dotnet
2017-08-16 17:32:46 -07:00
Travis Plunk e829053e9e Add ability to package all of powershell core as a NuGet Package (#4363)
So that PowerShell can be installed using PackageManagement cmdlets find-package and install-package.
2017-08-01 14:35:50 -07:00
Travis Plunk 56be2ae8a0 Start using vs 2017 image (#4340) 2017-07-25 17:56:15 -07:00
Travis Plunk a10d1c2281 Merge beta.4 release changes (#4247)
* Fix the path on windows containers (#4241)

* Updated string to reflect beta.4 version (#4238)

* Add beta.4 changelog (#4245)

* first pass at beta.4 changelog

* grammar and spelling fixes (#1)

* sort and add new words to dictionary (#4248)
2017-07-13 17:30:58 -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
Dongbo Wang 05dffcd1aa Update release version 2017-06-20 14:14:38 -07:00
Dongbo Wang b4973fc920 Move PowerShell back to .NET Core 2.0.0-preview1-002106-00 (#4026) 2017-06-15 16:29:25 -07:00
Dongbo Wang 8731747c3e Move to latest .NET Core and enable -SkipCertificateCheck on OSX (#3887) 2017-06-13 17:58:20 -07:00
Dongbo Wang a543161d42 Update docs for beta.2 release (#3922) 2017-06-02 14:17:27 -07:00
Dongbo Wang ee779b58e0 Update docs for beta.1 release (#3748)
* First iteration

* Second iteration

* Third iteration

* Fourth iteration

* Fifth iteration

* Revert the temporary workaround

* beta.1 release only support Mac OSX 10.12+
2017-05-10 09:49:02 -07:00
Dongbo Wang 1b16f77e21 Update powershell to use .NET Core 2.0.0-preview1-002106-00 (#3699)
Use 2.0 CLI/SDK of version `2.0.0-preview1-005952` to keep in sync with the .NET Core 2.0 //Build dogfood instructions. The version of `Microsoft.NetCore.App` in use is `2.0.0-preview1-002106-00`.
2017-05-04 17:09:03 -07:00
Dongbo Wang 7a55bf98b2 Move powershell to .NET Core 2.0 (#3556)
This change moves powershell to .NET Core 2.0. Major changes are:
1. PowerShell assemblies are now targeting `netcoreapp2.0`. We are using `microsoft.netcore.app-2.0.0-preview1-001913-00`, which is from dotnet-core build 4/4/17. We cannot target `netstandard2.0` because the packages `System.Reflection.Emit` and `System.Reflection.Emit.Lightweight`, which are needed for powershell class, cannot be referenced when targeting `netstandard2.0`.
2. Refactor code to remove most CLR stub types and extension types.
3. Update build scripts to enable CI builds. The `-cache` section is specified to depend on `appveyor.yml`, so the cache will be invalidated if `appveyor.yml` is changed.
4. Ship `netcoreapp` reference assemblies with powershell to fix the issues in `Add-Type` (#2764). By default `Add-Type` will reference all those reference assemblies when compiling C# code. If `-ReferenceAssembly` is specified, then we search reference assemblies first, then the framework runtime assemblies, and lastly the loaded assemblies (possibly a third-party one that was already loaded).
5. `dotnet publish` generates executable on Unix platforms, but doesn't set "x" permission and thus it cannot execute. Currently, the "x" permission is set in the build script, `dotnet/cli` issue [#6286](https://github.com/dotnet/cli/issues/6286) is tracking this.
6. Replace the use of some APIs with the ones that take `SecureString`.
7. osx.10.12 is required to update to `netcoreapp2.0` because `dotnet-cli` 2.0.0-preview only works on osx.10.12.
8. Add dependency to `System.ValueTuple` to work around a ambiguous type identity issue in coreclr. The issue is tracked by `dotnet/corefx` [#17797](https://github.com/dotnet/corefx/issues/17797). When moving to newer version of `netcoreapp2.0`, we need to verify if this dependency is still needed.
2017-04-17 11:52:38 -07:00
Dongbo Wang b5c1473484 Alpha.18 release doc updates (#3492) 2017-04-06 21:27:48 -07:00
Dongbo Wang 3a960db5b0 Update docs for alpha.17 release (#3298) 2017-03-10 11:32:19 -08:00
Dongbo Wang d60dc730a4 doc updates for release alpha.16 (#3160)
* doc changes for alpha.16 release

* update spelling ignore file for new release
2017-02-16 09:09:45 -08:00
Jason Shirk 3aeaeb06da cache packages in appveyor (#3019) 2017-01-26 11:34:39 -08:00
Jason Shirk (POWERSHELL) 4f02f48c69 Update links and docs for alpha.15 2017-01-18 15:09:50 -08:00
Jason Shirk (POWERSHELL) dd584a817a Update alpha.13 to alpha.14 2016-12-14 15:04:15 -08:00
Dongbo Wang 6f92140886 Add back -Configuration 'Release' to make sure AppVeyor CIs produce 'Release' bits (#2773) 2016-11-23 12:54:52 -08:00
Aditya Patwardhan ead4df4097 Moved publishing of code coverage artifacts to test_script phase (#2760)
* Moved publishing of code coverage artifacts to after_test phase

The webhook for build completion is called after the after_test phase
hence we needed to publish code coverage artifacts before that. Moved the
logic for compression and publish the artifacts after running tests.

* Added check for daily build

* Address code review comments.

* Addressed code review comments

Addressed comments about definition of artifacts.
Defined new function for after_test phase.
2016-11-23 12:22:18 -08:00
Dongbo Wang 581050ec43 Update docs with release alpha.13 (#2765)
* Update docs with release alpha.13
* Additional doc updates
* Update the 'Get PowerShell' table
2016-11-22 17:50:45 -08:00
Mike Richmond ea6cacafd7 Change log and 6.0.0-alpha.12 version number updates (#2593) 2016-11-03 14:23:05 -07:00
Dongbo Wang 289e6958ef Update docs/scripts to use the alpha.11 release packages (#2498) 2016-10-18 13:09:09 -07:00
Andrew Schwartzmeyer d264501f31 Update documentation names and links for alpha.10 2016-09-15 13:59:46 -07:00
Travis Plunk 89b3970cfa Added image requirement to appveyor.yml to make it easier to run on your own appveyor instance 2016-08-29 13:36:45 -07:00
Travis Plunk 6b994dbb2d Move the PowerShell code in appVeyor.yml to a module 2016-08-29 13:18:14 -07:00
Andrew Schwartzmeyer 7f63daafd9 Fix AppVeyor for public repo 2016-08-18 00:06:55 -07:00
Andrew Schwartzmeyer 1e265e915e Update links for alpha.9
Also adds the Windows 8.1 build to the readme, and bumps the AppVeyor
build number.
2016-08-16 14:43:34 -07:00
Travis Plunk 6c1224fb4b Merge pull request #1757 from TravisEz13/FixAppVeyorRelease
Made core build use release configuration
2016-08-12 13:02:34 -07:00
Travis Plunk 8233b5e332 Fix typo when getting Core build output location
Fail build if we fail to build PowerShell.exe before running tests
Fail build if we fail to push an artifact because it doesn't exist.
2016-08-12 12:35:46 -07:00
Travis Plunk 4ba6153c2a Update additional places build configuration needs to be specified 2016-08-12 12:26:05 -07:00
Travis Plunk 3a02842ecb Made core build use release configuration 2016-08-12 12:14:48 -07:00
Andrew Schwartzmeyer 6b4666ce36 Update AppVeyor build number to 6.0.0-alpha.8 2016-08-11 18:38:45 -07:00