Skip to content
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
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
27 changes: 27 additions & 0 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"version": 1,
"isRoot": true,
"tools": {
"cake.tool": {
"version": "5.0.0",
"commands": [
"dotnet-cake"
],
"rollForward": false
},
"dotnet-test-slicer": {
"version": "0.1.0-alpha7",
"commands": [
"dotnet-test-slicer"
],
"rollForward": false
},
"api-tools": {
"version": "1.4.2-preview.2",
"commands": [
"api-tools"
],
"rollForward": false
}
}
}
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/01-use-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ body:
options:
- net8.0-android
- net9.0-android
- net10.0-android (Preview)
- Other
validations:
required: true
Expand All @@ -23,7 +24,7 @@ body:
attributes:
label: Affected platform version
description: Please provide the version number of the platform you see this issue on.
placeholder: E.g. VS 2022 17.9.0, .NET 8.0.100, etc.
placeholder: E.g. VS 2022 17.14.0, .NET 9.0.100, etc.
validations:
required: true
- type: textarea
Expand Down
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/04-other.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ body:
options:
- net8.0-android
- net9.0-android
- net10.0-android (Preview)
- Other
validations:
required: true
Expand All @@ -22,7 +23,7 @@ body:
attributes:
label: Affected platform version
description: Please provide the version number of the platform you see this issue on.
placeholder: E.g. VS 2022 17.9.0, .NET 8.0.100, etc.
placeholder: E.g. VS 2022 17.14.0, .NET 9.0.100, etc.
validations:
required: true
- type: textarea
Expand Down
6 changes: 3 additions & 3 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ For comprehensive guidance on troubleshooting binding issues, see: https://githu
## Target Frameworks

### Current Support
- **Primary**: `net8.0-android` (API 21+)
- **Primary**: `net9.0-android` (API 21+)
- **Migration**: `net10.0-android` (API 35+) - migration capability exists but not currently enabled
- **Legacy**: Xamarin.Android support ended May 1, 2024

Expand All @@ -150,12 +150,12 @@ For comprehensive guidance on troubleshooting binding issues, see: https://githu
### NuGet Package Structure
```
lib/
net8.0-android34.0/
net9.0-android35.0/
{assembly}.dll
net10.0-android36.0/
{assembly}.dll
build/
net8.0-android34.0/
net9.0-android35.0/
{package}.targets
net10.0-android36.0/
{package}.targets
Expand Down
2 changes: 1 addition & 1 deletion BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

Before building the libraries and samples in this repository, you will need to install:

* [.NET](https://dotnet.microsoft.com/download) ([.NET SDK 8.0.404](https://github.com/dotnet/core/blob/main/release-notes/8.0/8.0.11/8.0.11.md?WT.mc_id=dotnet-35129-website) is currently required)
* [.NET 9.0](https://dotnet.microsoft.com/download) (.NET SDK 9.0 is currently required)

* [Cake .NET Tool](http://cakebuild.net):

Expand Down
19 changes: 14 additions & 5 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,17 @@
<RepositoryCommit>$(BUILD_SOURCEVERSION)</RepositoryCommit>

<!-- Default TFM's we build for -->
<_DefaultTargetFrameworks>net8.0-android</_DefaultTargetFrameworks>
<_DefaultNetTargetFrameworks>net8.0</_DefaultNetTargetFrameworks>
<_DefaultNetTargetFramework>net9.0</_DefaultNetTargetFramework>
<!-- base -->
<_DefaultPlatformVersionBase>35</_DefaultPlatformVersionBase>
<_DefaultTargetFrameworkVersionBase>9.0</_DefaultTargetFrameworkVersionBase>
<_DefaultTargetFrameworkBase>net$(_DefaultTargetFrameworkVersionBase)-android$(_DefaultPlatformVersionBase).0</_DefaultTargetFrameworkBase>
<!-- next -->
<_DefaultPlatformVersionNext>36</_DefaultPlatformVersionNext>
<_DefaultTargetFrameworkVersionNext>10.0</_DefaultTargetFrameworkVersionNext>
<_DefaultTargetFrameworkNext>net$(_DefaultTargetFrameworkVersionNext)-android$(_DefaultPlatformVersionNext).0</_DefaultTargetFrameworkNext>
<!-- combined -->
<_DefaultTargetFrameworks>$(_DefaultTargetFrameworkBase);$(_DefaultTargetFrameworkNext)</_DefaultTargetFrameworks>

<CheckEolWorkloads>false</CheckEolWorkloads>

Expand Down Expand Up @@ -85,13 +94,13 @@

<!-- Folders that .targets files need to go into -->
<ItemGroup>
<AndroidXNuGetTargetFolders Include="build\net8.0-android34.0" />
<AndroidXNuGetTargetFolders Include="buildTransitive\net8.0-android34.0" />
<AndroidXNuGetTargetFolders Include="build\$(_DefaultTargetFrameworkBase)" />
<AndroidXNuGetTargetFolders Include="buildTransitive\$(_DefaultTargetFrameworkBase)" />
</ItemGroup>

<!-- Folders that _._ files need to go into for packages without managed libraries -->
<ItemGroup>
<AndroidXNuGetLibFolders Include="lib\net8.0-android34.0" />
<AndroidXNuGetLibFolders Include="lib\$(_DefaultTargetFrameworkBase)" />
</ItemGroup>

<ItemGroup>
Expand Down
9 changes: 0 additions & 9 deletions azure-pipelines-public.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,6 @@ trigger: none
pr:
- main

parameters:
- name: RunDotnetNextTest
displayName: Run on .NET next preview?
type: boolean
default: false

variables:
- template: build/ci/variables.yml

Expand All @@ -23,7 +17,6 @@ stages:
name: $(NetCorePublicPoolName)
demands:
- ImageOverride -equals $(WindowsPoolImageNetCorePublic)
runDotnetNextTest: ${{ parameters.RunDotnetNextTest }}
use1ESTemplate: false
installAndroidDependencies: true

Expand All @@ -37,7 +30,6 @@ stages:
buildPool:
name: Azure Pipelines
vmImage: macOS-15
runDotnetNextTest: ${{ parameters.RunDotnetNextTest }}
use1ESTemplate: false

- template: build/ci/stage-standard-tests.yml@self
Expand All @@ -46,5 +38,4 @@ stages:
name: $(NetCorePublicPoolName)
demands:
- ImageOverride -equals $(WindowsPoolImageNetCorePublic)
runDotnetNextTest: ${{ parameters.RunDotnetNextTest }}
installAndroidDependencies: true
8 changes: 0 additions & 8 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,6 @@ parameters:
displayName: Run Extended Tests?
type: boolean
default: false
- name: RunDotnetNextTest
displayName: Run on .NET next preview?
type: boolean
default: false

variables:
# Variables used by both AndroidX/GPS go in the template
Expand Down Expand Up @@ -61,7 +57,6 @@ extends:
image: $(windowsImage)
os: windows
runAPIScan: true
runDotnetNextTest: ${{ parameters.RunDotnetNextTest }}

- stage: build_mac
displayName: Build - Mac
Expand All @@ -77,15 +72,13 @@ extends:
demands:
- macOS.Name -equals Sonoma
- macOS.Architecture -equals x64
runDotnetNextTest: ${{ parameters.RunDotnetNextTest }}

- template: build/ci/stage-standard-tests.yml@self
parameters:
buildPool:
name: $(windowsAgentPoolName)
image: $(windowsImage)
os: windows
runDotnetNextTest: ${{ parameters.RunDotnetNextTest }}

- template: build/ci/stage-extended-tests.yml@self
parameters:
Expand All @@ -94,6 +87,5 @@ extends:
name: $(windowsAgentPoolName)
image: $(windowsImage)
os: windows
runDotnetNextTest: ${{ parameters.RunDotnetNextTest }}

- template: build/ci/stage-sign-artifacts.yml@self
14 changes: 0 additions & 14 deletions build.cake
Original file line number Diff line number Diff line change
Expand Up @@ -7,28 +7,21 @@
#addin nuget:?package=SharpZipLib&version=1.4.2

// Imported scripts
#load "build/cake/nuget-install.cake"
#load "build/cake/setup-environment.cake"
#load "build/cake/update-config.cake"
#load "build/cake/tests.cake"
#load "build/cake/gps-parameters.cake"
#load "build/cake/dotnet-next.cake"
#load "build/cake/binderate.cake"
#load "build/cake/build-and-package.cake"
#load "build/cake/validations.cake"
#load "build/cake/executive-order.cake"
#load "build/cake/clean.cake"
#load "build/cake/performance-timings.cake"
#load "build/cake/build-android-libraries-net10-net8.cake"

// Migrate packages to net10
bool IsMigratingNet10 = false;

using System.Xml.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;


// The main configuration points
var TARGET = Argument ("t", Argument ("target", "Default"));
var CONFIGURATION = Argument ("c", Argument ("configuration", "Release"));
Expand All @@ -48,13 +41,6 @@ Information ($"BUILD_COMMIT : {BUILD_COMMIT}");
Information ($"BUILD_NUMBER : {BUILD_NUMBER}");
Information ($"BUILD_TIMESTAMP : {BUILD_TIMESTAMP}");

RunTarget("nuget-install");

if (IsMigratingNet10)
{
RunTarget("build-android-libraries-net10-net8");
}

Task ("packages")
.IsDependentOn ("binderate")
.IsDependentOn ("nuget");
Expand Down
24 changes: 0 additions & 24 deletions build/cake/build-and-package.cake
Original file line number Diff line number Diff line change
Expand Up @@ -18,32 +18,8 @@ Task ("nuget")
"./generated/AndroidX.sln",
new DotNetBuildSettings { MSBuildSettings = settings }
);

RunTarget("nuget-uninstall");

});

Task ("nuget-pack-without-build")
.Does
(
() =>
{
var settings = new DotNetMSBuildSettings ()
.SetConfiguration (CONFIGURATION)
.EnableBinaryLogger ($"./output/nuget-pack-without-build.{CONFIGURATION}.binlog")
.WithProperty ("NoBuild", "true")
.WithProperty ("PackageOutputPath", MakeAbsolute ((DirectoryPath)"./output/").FullPath)
.WithTarget ("Pack");

DotNetBuild
(
"./generated/AndroidX.sln",
new DotNetBuildSettings { MSBuildSettings = settings }
);
}
);


// Builds the .csproj projects
Task ("libs")
.IsDependentOn("metadata-verify")
Expand Down
Loading