Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use Arcade 8.0, use .NET 8.0, remove old features #2355

Open
wants to merge 36 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
e08f883
Use Arcade 8.0
joperezr Sep 12, 2024
6245714
Update dependent packages to repair build
pgrawehr Sep 18, 2024
16a6cf4
Remove netstandard2.0 support
pgrawehr Sep 18, 2024
a7d8229
Drop support for Windows 10 IoT
pgrawehr Sep 21, 2024
6d61f26
Remove .NET 4.8 build
pgrawehr Sep 21, 2024
f89ee1e
Update version to .NET 8.0
pgrawehr Sep 21, 2024
fe7c925
Remove centos docker image from build
pgrawehr Sep 30, 2024
dd80ee7
This test doesn't work on a linux VM without display
pgrawehr Oct 5, 2024
b51992a
Update Helix test runs to .NET 8.0
pgrawehr Oct 5, 2024
9066d70
Start updating the runtime
pgrawehr Oct 11, 2024
df3758b
Compilation works for some cases again
pgrawehr Oct 12, 2024
bf2a66e
Can properly (?) resolve static virtual calls
pgrawehr Oct 16, 2024
faa546b
Static cctors for BlinkingLed sample work
pgrawehr Oct 20, 2024
2cde9b4
Some test cases work again
pgrawehr Oct 20, 2024
0e034e0
More and more tests pass
pgrawehr Nov 3, 2024
2fb20b3
Implement RuntimeInformation, fix a bug causing IndexOf and LastIndex…
pgrawehr Nov 3, 2024
63e4a2b
Transmit locals and arguments with their correct size
pgrawehr Nov 9, 2024
d9a49db
Working on new enum handling
pgrawehr Nov 10, 2024
df393a7
Compiles again
pgrawehr Nov 23, 2024
e7afb02
EnumTest now works
pgrawehr Nov 23, 2024
15e05a7
Add cache of patched code
pgrawehr Nov 28, 2024
6e843ea
Use a dictionary for the methods list
pgrawehr Nov 28, 2024
e8e5a2b
Try to avoid some test overhead
pgrawehr Dec 1, 2024
f56e33d
Only 3 failing tests left
pgrawehr Dec 1, 2024
fcd800d
Add AnalysisStack, to simplify tracking dependencies
pgrawehr Dec 7, 2024
f3b558a
Fix some stack pushes
pgrawehr Dec 7, 2024
0b451e9
SetEvent/ResetEvent where incorrectly implemented
pgrawehr Dec 7, 2024
6ee3acf
Provide a working implementation for Events
pgrawehr Dec 8, 2024
d1e8841
All existing tests pass
pgrawehr Dec 8, 2024
dbb84f5
WeatherStation sample now also builds and runs
pgrawehr Dec 11, 2024
0f03039
Update Simulator Version
pgrawehr Dec 11, 2024
5f478c5
Disable a flaky test
pgrawehr Dec 14, 2024
0ba0b99
These tests have no dependencies
pgrawehr Dec 14, 2024
7b562d0
Compute suppressions on release build
pgrawehr Dec 15, 2024
9c78a6e
Improve stability of test
pgrawehr Dec 24, 2024
6190c19
Update firmware to prevent a crash in Span<T> ctor
pgrawehr Dec 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,7 @@
<PropertyGroup>
<Language>C#</Language>
<LangVersion>9</LangVersion>
<!-- Generate snupkg package -->
<IncludeSymbols>true</IncludeSymbols>

<!--We are reusing arcade targets for strongname signing the assembly. Due to this, we must set the strongnamekeyid property
in order to ensure that the values for publickey and publickeytoken won't be overwritten by arcade later in the evaluation.-->
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>

<ItemGroup>
Expand Down
6 changes: 0 additions & 6 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,6 @@ variables:
- name: DOTNET_MULTILEVEL_LOOKUP
value: 0

resources:
containers:
- container: LinuxContainer
image: mcr.microsoft.com/dotnet-buildtools/prereqs:centos-7-20210714125435-9b5bbc2

stages:
- stage: Build
jobs:
Expand Down Expand Up @@ -97,7 +92,6 @@ stages:

- job: Linux
displayName: Linux Build
container: LinuxContainer
pool:
vmImage: ubuntu-latest

Expand Down
8 changes: 4 additions & 4 deletions eng/ArduinoCsCI.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ REM Second argument is either "Debug" or "Release"
if %1!==! goto :usage

REM Defines the revision to check out in the ExtendedConfigurableFirmata repo
set FIRMATA_SIMULATOR_CHECKOUT_REVISION=18ef6b3a890b34904904663fb2cece9141600849
set FIRMATA_SIMULATOR_CHECKOUT_REVISION=0d4bfebb87c2737dfce0b08e6c4b714447d98e40
set RUN_COMPILER_TESTS=FALSE

choco install -y --no-progress arduino-cli
Expand All @@ -20,9 +20,9 @@ REM directly execute PS, we can ignore any test errors.
powershell -ExecutionPolicy ByPass -command "%~dp0common\Build.ps1" -restore -build -ci -configuration %2 -preparemachine

set ArduinoRootDir=%1\Documents\Arduino
set acspath=%~dp0\..\artifacts\bin\Frontend\%2\net6.0\acs.exe
set acspath=%~dp0\..\artifacts\bin\Frontend\%2\net8.0\acs.exe

git clone https://github.com/firmata/ConfigurableFirmata %ArduinoRootDir%\libraries\ConfigurableFirmata --branch BuildIssueEsp
git clone https://github.com/firmata/ConfigurableFirmata %ArduinoRootDir%\libraries\ConfigurableFirmata
git clone https://github.com/pgrawehr/ExtendedConfigurableFirmata %ArduinoRootDir%\ExtendedConfigurableFirmata
arduino-cli core install esp32:esp32

Expand Down Expand Up @@ -77,7 +77,7 @@ if errorlevel 1 goto error
echo on
echo Run full compiler against simple example
REM The current directory is tools/ArduinoCsCompiler
%acspath% compile --run %~dp0\..\artifacts\bin\BlinkingLed\%2\net6.0\BlinkingLed.exe --network localhost --mapfile BlinkingLed-tokenmap.txt
%acspath% compile --run %~dp0\..\artifacts\bin\BlinkingLed\%2\net8.0\BlinkingLed.exe --network localhost --mapfile BlinkingLed-tokenmap.txt
if errorlevel 1 goto error

REM copy token map to output (so we have something to compare the history of sizes, if something changes unexpectedly)
Expand Down
12 changes: 6 additions & 6 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<Dependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="7.0.0-beta.24266.2">
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="8.0.0-beta.24461.2">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>4c7a2a3a3a23698ba4ce15cf9a98560c654483b6</Sha>
<Sha>0028fccccc2181a64c5c4a283ac0baae3913284b</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="7.0.0-beta.24266.2">
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="8.0.0-beta.24461.2">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>4c7a2a3a3a23698ba4ce15cf9a98560c654483b6</Sha>
<Sha>0028fccccc2181a64c5c4a283ac0baae3913284b</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.GenAPI" Version="7.0.0-beta.24266.2">
<Dependency Name="Microsoft.DotNet.GenAPI" Version="8.0.0-beta.24461.2">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>4c7a2a3a3a23698ba4ce15cf9a98560c654483b6</Sha>
<Sha>0028fccccc2181a64c5c4a283ac0baae3913284b</Sha>
</Dependency>
</ToolsetDependencies>
<!-- ProductDependencies -->
Expand Down
14 changes: 9 additions & 5 deletions eng/Versions.external.props
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project>
<!-- These references to third-party libraries are included in all projects except System.Device.Gpio and the build wrapper project -->
<ItemGroup Condition="'$(MSBuildProjectName)' != 'System.Device.Gpio' And '$(MSBuildProjectName)' != 'build'">
<PackageReference Include="UnitsNet" Version="5.31.0" />
<PackageReference Include="UnitsNet" Version="5.42.0" />
</ItemGroup>

<PropertyGroup>
Expand All @@ -10,13 +10,17 @@

<!-- Automatically include these assemblies in all test projects -->
<ItemGroup Condition="$(MSBuildProjectName.EndsWith('Tests'))">
<PackageReference Include="Moq" Version="4.16.1" />
<PackageReference Include="xunit" Version="2.6.3" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.5">
<PackageReference Include="Moq" Version="4.20.70" />
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are we updating these dependencies? We should be particularly careful with this one.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are development dependencies only, so I see no reason why we shouldn't keep up to date. The issue with Moq has been resolved.

<PackageReference Include="xunit" Version="2.9.0" />
<!-- Need to reference the internal package versions directly or we get package conflict errors -->
<PackageReference Include="xunit.core" Version="2.9.0" />
<PackageReference Include="xunit.assert" Version="2.9.0" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="xunit.runner.utility" Version="2.6.3" />
<PackageReference Include="xunit.runner.utility" Version="2.9.0" />
<PackageReference Include="xunit.analyzers" Version="1.15.0" />
<PackageReference Include="Shouldly" Version="4.2.1" />
</ItemGroup>
</Project>
16 changes: 8 additions & 8 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,20 @@
<!-- Disabling the check for End of live TFMs since we still target netcoreapp 2.1 -->
<CheckEolTargetFramework>false</CheckEolTargetFramework>
<PreReleaseVersionLabel>prerelease</PreReleaseVersionLabel>
<MicrosoftDotNetGenAPIPackageVersion>7.0.0-beta.24266.2</MicrosoftDotNetGenAPIPackageVersion>
<MicrosoftDotNetGenAPIPackageVersion>8.0.0-beta.24461.2</MicrosoftDotNetGenAPIPackageVersion>
<!-- dotnet/corefx dependencies -->
<SystemDrawingCommonPackageVersion>6.0.0</SystemDrawingCommonPackageVersion>
<SystemIOPortsPackageVersion>5.0.1</SystemIOPortsPackageVersion>
<SystemDrawingCommonPackageVersion>8.0.8</SystemDrawingCommonPackageVersion>
<SystemIOPortsPackageVersion>8.0.0</SystemIOPortsPackageVersion>
<MicrosoftWin32RegistryPackageVersion>5.0.0</MicrosoftWin32RegistryPackageVersion>
<SystemRuntimeWindowsRuntimePackageVersion>4.6.0</SystemRuntimeWindowsRuntimePackageVersion>
<SystemManagementPackageVersion>5.0.0</SystemManagementPackageVersion>
<SystemThreadingTasksExtensionsPackageVersion>4.5.4</SystemThreadingTasksExtensionsPackageVersion>
<SystemMemoryPackageVersion>4.5.5</SystemMemoryPackageVersion>
<SystemRuntimeInteropServicesWindowsRuntimePackageVersion>4.3.0</SystemRuntimeInteropServicesWindowsRuntimePackageVersion>
<MicrosoftExtensionsLoggingConsolePackageVersion>7.0.0</MicrosoftExtensionsLoggingConsolePackageVersion>
<MicrosoftExtensionsLoggingPackageVersion>7.0.0</MicrosoftExtensionsLoggingPackageVersion>
<MicrosoftExtensionsLoggingAbstractionsPackageVersion>7.0.1</MicrosoftExtensionsLoggingAbstractionsPackageVersion>
<SystemTextJsonPackageVersion>6.0.10</SystemTextJsonPackageVersion>
<SystemIOPipelinesVersion>7.0.0</SystemIOPipelinesVersion>
<MicrosoftExtensionsLoggingConsolePackageVersion>8.0.0</MicrosoftExtensionsLoggingConsolePackageVersion>
<MicrosoftExtensionsLoggingPackageVersion>8.0.0</MicrosoftExtensionsLoggingPackageVersion>
<MicrosoftExtensionsLoggingAbstractionsPackageVersion>8.0.0</MicrosoftExtensionsLoggingAbstractionsPackageVersion>
<SystemTextJsonPackageVersion>8.0.4</SystemTextJsonPackageVersion>
<SystemIOPipelinesVersion>8.0.0</SystemIOPipelinesVersion>
</PropertyGroup>
</Project>
4 changes: 4 additions & 0 deletions eng/common/BuildConfiguration/build-configuration.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"RetryCountLimit": 1,
"RetryByAnyError": false
}
2 changes: 1 addition & 1 deletion eng/common/SetupNugetSources.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ if ($dotnet31Source -ne $null) {
AddPackageSource -Sources $sources -SourceName "dotnet3.1-internal-transport" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal-transport/nuget/v2" -Creds $creds -Username $userName -pwd $Password
}

$dotnetVersions = @('5','6','7')
$dotnetVersions = @('5','6','7','8')

foreach ($dotnetVersion in $dotnetVersions) {
$feedPrefix = "dotnet" + $dotnetVersion;
Expand Down
2 changes: 1 addition & 1 deletion eng/common/SetupNugetSources.sh
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ if [ "$?" == "0" ]; then
PackageSources+=('dotnet3.1-internal-transport')
fi

DotNetVersions=('5' '6' '7')
DotNetVersions=('5' '6' '7' '8')

for DotNetVersion in ${DotNetVersions[@]} ; do
FeedPrefix="dotnet${DotNetVersion}";
Expand Down
2 changes: 1 addition & 1 deletion eng/common/build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,8 @@ function Print-Usage() {
Write-Host " -prepareMachine Prepare machine for CI run, clean up processes after build"
Write-Host " -warnAsError <value> Sets warnaserror msbuild parameter ('true' or 'false')"
Write-Host " -msbuildEngine <value> Msbuild engine to use to run build ('dotnet', 'vs', or unspecified)."
Write-Host " -nativeToolsOnMachine Sets the native tools on machine environment variable (indicating that the script should use native tools on machine)"
Write-Host " -excludePrereleaseVS Set to exclude build engines in prerelease versions of Visual Studio"
Write-Host " -nativeToolsOnMachine Sets the native tools on machine environment variable (indicating that the script should use native tools on machine)"
Write-Host ""

Write-Host "Command line arguments not listed above are passed thru to msbuild."
Expand Down
2 changes: 1 addition & 1 deletion eng/common/cross/arm/sources.list.xenial
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ deb http://ports.ubuntu.com/ubuntu-ports/ xenial-backports main restricted
deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial-backports main restricted

deb http://ports.ubuntu.com/ubuntu-ports/ xenial-security main restricted universe multiverse
deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial-security main restricted universe multiverse
deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial-security main restricted universe multiverse
35 changes: 0 additions & 35 deletions eng/common/cross/arm/tizen-build-rootfs.sh

This file was deleted.

170 changes: 0 additions & 170 deletions eng/common/cross/arm/tizen-fetch.sh

This file was deleted.

Loading