Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
Use new version of MicrosoftCodeAnalysisVersion in linker (Copy from runtime) to fix the dotnet format command
Run the dotnet format command
Reenable Lint check in ci pipelines
|
|
dede5f58dc9b7296de884ed62688b35d5b154b78 didn't fix the dependency
flow, because the packages for some reason are still being produced
with a preview7 in the runtimeconfig. Lacking better workarounds, this
change builds with the preview5 SDK that was selected in #2884 before
we decided to update to preview7 (due to a dotnet-format bug). This
disables the lint job to prevent those failures. We should turn it
back on once we can use preview7 (once dotnet/runtime and dotnet/sdk
are on preview7).
|
|
It did run linter, but didn't fail if any changes were to be applied, instead it actually applied them (and then dropped). So the job would actually never fail.
|
|
* Use internal machine pool for src build
* Update azure-pipelines.yml
|
|
|
|
|
|
See https://github.com/dotnet/core-eng/issues/14783.
Also switch to latest macOS/Ubuntu/Windows vmImage.
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
|
|
The Ubuntu 16.04 agents were removed from Azure DevOps: https://github.com/actions/virtual-environments/issues/3287
|
|
|
|
|
|
Latest lint writes formatDiagnosticLog.binlong next to the solution file when running with --verbosity diagnostic. There's no way to redirect or disable this - https://github.com/dotnet/format/issues/1041.
So this change disables --verbosity diagnostic for local runs of lint and adds it only to the CI (where the machine will clean the enlistment anyway).
|
|
Co-authored-by: Marek Safar <marek.safar@gmail.com>
|
|
We don't run tests there so we get a warning about missing test result files in the official build.
|
|
|
|
|
|
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
|
|
|
|
|
|
|
|
|
|
* Update dependencies from https://github.com/dotnet/arcade build 20200506.5
- Microsoft.DotNet.ApiCompat: 5.0.0-beta.20228.4 -> 5.0.0-beta.20256.5
- Microsoft.DotNet.Arcade.Sdk: 5.0.0-beta.20228.4 -> 5.0.0-beta.20256.5
* Add restore to lint.sh/cmd
* Remove lint restore from azure-pipelines.yml
* Make sure the Lint step fails on violations
* Disable https listening in WebApiTest.cs
It doesn't play nice with CI environments.
* Disable WebApi test on CI on macOS
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
|
|
Fixes command line build on windows in the analyzer project (latest Arcade has conflicts when building net core and net desktop projects at the same time. since we don't need desktop I removed it)
Fixes editorconfig to correctly specify LF as EOL character so that it works on Windows.
Added running the lint (auto-formatter) in command line (lint.sh/lint.cmd). CI now runs this command in a `--dry-run` mode so using it before submitting a PR should guarantee correct formatting.
|
|
* Apply consistent formatting based on .editorconfig
```
dotnet format -f <path>
```
* Add lint step to the CI
* Use local tool
* Suppress publish logs warning
* Fix more style errors
* Fixes bad merge
* Write something to log dir
* Move lint job to global scope
So it doesn't get the arcade publish logs/test steps injected.
* Split sources and tests reporting
* Include also src folder in the run
* Exclude cecil sources
* Remove duplicate line
* Trigger notification
* Format more code
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
|
|
* Enable CI in the feature/dataflow branch
#1004 turned off the CI on all but select branches.
* Update eng/azure-pipelines.yml
Co-Authored-By: Marek Safar <marek.safar@gmail.com>
Co-authored-by: Marek Safar <marek.safar@gmail.com>
|
|
|
|
|
|
- Move Mono build out of common arcade template to get rid of missing xunit test results warning.
- Use Microsoft copyright for Mono.Linker.csproj, it is required by arcade.
|
|
* Set ILLink.Tasks.Tests to be test project
* Unconditionally use arcade
* Fix ILLink.Tasks test project
- Renamed to ILLink.Tasks.IntegrationTests because it depends on the .nupkg and arcade schedules Test projects before Pack
- Fixed path to nupgk in nuget config
- Move override of Test target for NUnit project from root Directory.Build.targets. For some reason Condition doesn't work there so the target would always be overriden.
- Disabled MusicStore tests
They were already disabled in https://github.com/mono/linker/commit/04eb53822f98749bdf6ab47009ba7c269f504eae because of https://github.com/mono/linker/commit/04eb53822f98749bdf6ab47009ba7c269f504eae but looks like that got reverted somehow
* Make arcade enabled builds the default and remove special illink_ configs
Mono builds can be done with /p:MonoBuild=true
* Remove .net framework targets from netcore build
* Update ILLink.Tasks to netcore3.0
* Fix netcore condition
* More netcore3.0 updates
* Try to mimic weird arcade behaviour
* Enable test results publishing in arcade
* Remove DisableArcadeImport property and use temp folder for ILLink.Tasks test projects instead
* Fix net471 build on Unix
* Use a temp folder in the repo and write empty Directory.Build.props/targets instead
This works better with arcade temp folder overrides.
* Revert "Try to mimic weird arcade behaviour"
This reverts commit 3923c5410bf2d17073373924dc53020c91fea346.
* Force always downloading a local dotnet
We need this for the ILLink.Tasks tests.
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
|
|
|
|
We don't need assets from other platforms.
|
|
|
|
We can easily replace the Jenkins build with one on Azure Pipelines now.
|
|
|
|
|
|
|
|
|
|
|
|
Delay expansion of Build.BuildNumber. This variable is not available
during the static evaluation phase.
|
|
This enables the unit tests to run on .NET Core. CodeDom compilation doesn't exist on core, so I've added the ability to compile in-process with Roslyn APIs. This still uses NUnit, using a recent version of NUnit package references with "dotnet test". This doesn't change how tests run on mono.
Finding the right reference assemblies for compilation is a bit different on .NET Core. As described in https://github.com/dotnet/roslyn/wiki/Runtime-code-generation-using-Roslyn-compilations-in-.NET-Core-App, they can either be found using packages (what the SDK does), or we can just compile against the implementation assemblies. In this change, I'm compiling against implementation assemblies, since that's fairly similar to what the tests do on mono, where they find them in the GAC.
For mono, the common references only included mscorlib. For .NET Core, I'm getting the common references from the "Trusted Platform Assemblies" (TPA) of the test process. As a result, package references of the test project become references during testcase compilation. Explicit references specified via `ReferenceAttribute` in a testcase are looked for alongside the host process's implementations as well (since we have no way to resolve a reference from just the filename since there is no GAC).
Other changes:
- Roslyn outputs the `DebuggableAttribute` by default but mcs does not, so when running on .NET Core, we don't check for the `DebuggableAttribute`.
- Check for core types in `System.Private.CoreLib` instead of `mscorlib`.
- There are some more edge cases that I'm in the process of cleaning up and will update soon.
At the moment, I'm trying to get the tests up and running, and I'm using plenty of compile-time conditions to modify the behavior on core. It would be nice not to have to do this - I haven't given it much thought, but maybe we could provide an abstraction that contains knowledge of the platform libraries, so that we don't have to have a hard dependency on `"mscorlib.dll"` and `"System.Private.CoreLib.dll"` everywhere? @mrvoorhe please let me know if you have any thoughts. Does the approach I'm taking so far seem sane to you?
@marek-safar
|
|
* Fix public build definition
* Specify DotNetSignType
* Don't pass official build ID to public jobs
Use new azure-pipelines syntax to reduce duplication of conditions
|
|
* Add .yml build definition
* Add linux linker build
* Remove left-over pool section
* Set helixRepo for telemetry
* Add windows build, and use recommended pool
* Add dotnet-core blob feed
* Add helix variable group
* Checkout submodules
* Remove dependency on NuGet.ProjectModel
* Specify release configuration
* Sign with 3rd-party certs
* Fix signing props
* Publish build logs
* Set _DotNetPublishToBlobFeed
* Use new variable syntax
* Use _BuildConfig variable for arcade templates
* Set msbuild variable for blob feed publish
* Add blob feed url
* Add blob feed token and pass build id
* Add _TeamName for microbuild
* Fix syntax
* Set DotNetSignType from _SignType
* Publish only on windows
* Only publish build asset manifest on windows
* Only pass signing variables to windows
* Add displayName for build command
* Put publish args in a variable
* Remove Nuget.ProjectModel dependency
* Use jobs.yml template and add ci build
* Disable custom certificate for ILLink.CustomSteps signing
* Generate assembly info for ILLink.CustomSteps
* Remove unnecessary properties from ILLink.CustomSteps project
* Clean up Signing.props
|