Age | Commit message (Collapse) | Author |
|
* Add generic attribute tests
* Update cecil
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The new Cecil fixes the deterministic MVID and PDB checksum.
Details in https://github.com/mono/cecil/pull/31.
|
|
Bump sdk version in global.json
Fix new analyzer recommendations about AsSpan and Contains(char)
Disable ImplicitNamespaceImports
Update Microsoft.NetCore.App.Ref used by analyzer to take new Runtime attribute changes
Update analyzer to not use Message as a property in RequiresAssemblyFilesAttribute
Update cecil to use Microsoft.NETFramework.ReferenceAssemblies.net40 1.0.2 along with taking other cecil updates
|
|
|
|
|
|
Simple codefix that just adds RequiresUnreferencedCode to the containing
method if a RequiresUnreferencedCode analyzer warning fires.
|
|
Fixes #1717
|
|
|
|
* Mark dynamically accessed generic arguments
* Clean test
* Use MarkType for keeping generic args
Enable ComplexTypeHandling tests
* Use MarkTypeVisibleToReflection for generic arguments
Clean tests
* MarkType always
* Check for array types in TypeNameResolver
* Mark System.Array instead of its element type
* Whitespace
* PR feedback
* Pattern match
Whitespace
* Add extension method ResolveToMainTypeDefinition
* Add comment
* Use ResolveToMainTypeDefinition
|
|
With this change, the nuspec of the ref assembly package will
list cecil verision 0.11.2 as a dependency (instead of 5.0.0-rc*).
This allows consumers of the ref package to use the publicly
released cecil.
Co-authored-by: Sven Boemer <sbomer@gmail.com>
Co-authored-by: vitek-karas <vitek.karas@microsoft.com>
|
|
|
|
|
|
* Add type parser
* PR feedback
* Fix mono build
* Move corert code to external
* Match filepaths
|
|
|
|
* 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>
|
|
|
|
|
|
|
|
|
|
* Use SDK-style projects for linker and tests
* Clean up linker project file
Separate out the illink build properties from the monolinker
properties. Also disable building illink for net46 on unix/core
msbuild, which doesn't work due to missing reference assemblies. This
check is more specific than what we used to have, so that illink can
potentially be built with the mono runtime.
Building this project with "nuget restore" and "msbuild" will only
work with the default configuration because nuget restore does not set
the configuration and would see a different target framework from msbuild.
* Fix assembly title and description for illink
* Fix debug and optimization info for illink configurations
* Remove references to old illink solutions
* Update cecil submodule to latest mono/cecil
* Fix typo
* Update cecil configurations in illink.sln
* Fix cecil strongname build failure with arcade
Work around https://github.com/dotnet/arcade/issues/2321
* Remove unused configs from monolinker.sln
Also add a missing release config for cecil
* Set PublicKey and PublicKeyToken in cecil overrides
|
|
This uses arcade to bootstrap the dotnet cli, and enables optionally building illink.sln with arcade.
- `eng/dotnet.{sh/ps1}` replace `corebuild/dotnet.{sh/ps1}`, and bootstrap using arcade scripts
- References to the bootstrapping scripts have been updated
- Directory.Build.props and Directory.Build.targets import arcade for all SDK-style projects when `ArcadeBuild` is `true`
- The net46 build of ILLink.Tasks has been disabled to work around the lack of configuration/target-framework inference (due to cecil not using SDK projects yet). This makes it possible to run "dotnet pack" on the solution or to pack using arcade.
- Arcade versioning files have been introduced, and ILLink.Tasks always gets its version number from these, even when building with a plain .NET SDK (rather than the arcade SDK)
- Works around signing properties that are otherwise overridden due to cecil's nonstandard import order (it imports the arcade properties after setting its own project properties)
- Disables a warning that is an error in the more recent toolset used by arcade
- Re-orders some projects in illink.sln to work around build issues where solution configurations aren't always applied to child projects. This seems to build the dependent projects last, ensuring that they are built with the solution configuration.
|
|
This organizes the source and test projects as follows:
- source projects go in `src/project/projectfile.csproj`
- test projects go in `test/project/projectfile.csproj`
The uniform layout of projects is part of the arcade onboarding (see https://github.com/mono/linker/issues/452).
|