diff --git a/config.json b/config.json index 0bb074e82..d3950adfb 100644 --- a/config.json +++ b/config.json @@ -69,8 +69,8 @@ { "groupId": "androidx.annotation", "artifactId": "annotation", - "version": "1.2.0", - "nugetVersion": "1.2.0.3", + "version": "1.3.0", + "nugetVersion": "1.3.0", "nugetId": "Xamarin.AndroidX.Annotation", "dependencyOnly": false }, @@ -205,168 +205,168 @@ { "groupId": "androidx.collection", "artifactId": "collection", - "version": "1.1.0", - "nugetVersion": "1.1.0.10", + "version": "1.2.0", + "nugetVersion": "1.2.0", "nugetId": "Xamarin.AndroidX.Collection", "dependencyOnly": false }, { "groupId": "androidx.collection", "artifactId": "collection-ktx", - "version": "1.1.0", - "nugetVersion": "1.1.0.3", + "version": "1.2.0", + "nugetVersion": "1.2.0", "nugetId": "Xamarin.AndroidX.Collection.Ktx", "dependencyOnly": false }, { "groupId": "androidx.compose.animation", "artifactId": "animation", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Animation", "dependencyOnly": false }, { "groupId": "androidx.compose.animation", "artifactId": "animation-core", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Animation.Core", "dependencyOnly": false }, { "groupId": "androidx.compose.foundation", "artifactId": "foundation", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Foundation", "dependencyOnly": false }, { "groupId": "androidx.compose.foundation", "artifactId": "foundation-layout", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Foundation.Layout", "dependencyOnly": false }, { "groupId": "androidx.compose.material", "artifactId": "material", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Material", "dependencyOnly": false }, { "groupId": "androidx.compose.material", "artifactId": "material-icons-core", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Material.Icons.Core", "dependencyOnly": false }, { "groupId": "androidx.compose.material", "artifactId": "material-icons-extended", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Material.Icons.Extended", "dependencyOnly": false }, { "groupId": "androidx.compose.material", "artifactId": "material-ripple", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Material.Ripple", "dependencyOnly": false }, { "groupId": "androidx.compose.runtime", "artifactId": "runtime", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Runtime", "dependencyOnly": false }, { "groupId": "androidx.compose.runtime", "artifactId": "runtime-livedata", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Runtime.LiveData", "dependencyOnly": false }, { "groupId": "androidx.compose.runtime", "artifactId": "runtime-rxjava2", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Runtime.RxJava2", "dependencyOnly": false }, { "groupId": "androidx.compose.runtime", "artifactId": "runtime-saveable", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.Runtime.Saveable", "dependencyOnly": false }, { "groupId": "androidx.compose.ui", "artifactId": "ui", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.UI", "dependencyOnly": false }, { "groupId": "androidx.compose.ui", "artifactId": "ui-geometry", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.UI.Geometry", "dependencyOnly": false }, { "groupId": "androidx.compose.ui", "artifactId": "ui-graphics", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.UI.Graphics", "dependencyOnly": false }, { "groupId": "androidx.compose.ui", "artifactId": "ui-text", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.UI.Text", "dependencyOnly": false }, { "groupId": "androidx.compose.ui", "artifactId": "ui-unit", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.UI.Unit", "dependencyOnly": false }, { "groupId": "androidx.compose.ui", "artifactId": "ui-util", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.UI.Util", "dependencyOnly": false }, { "groupId": "androidx.compose.ui", "artifactId": "ui-viewbinding", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.5", + "nugetVersion": "1.0.5", "nugetId": "Xamarin.AndroidX.Compose.UI.ViewBinding", "dependencyOnly": false }, @@ -381,16 +381,16 @@ { "groupId": "androidx.constraintlayout", "artifactId": "constraintlayout", - "version": "2.1.1", - "nugetVersion": "2.1.1.2", + "version": "2.1.2", + "nugetVersion": "2.1.2", "nugetId": "Xamarin.AndroidX.ConstraintLayout", "dependencyOnly": false }, { "groupId": "androidx.constraintlayout", "artifactId": "constraintlayout-core", - "version": "1.0.1", - "nugetVersion": "1.0.1.2", + "version": "1.0.2", + "nugetVersion": "1.0.2", "nugetId": "Xamarin.AndroidX.ConstraintLayout.Core", "dependencyOnly": false }, @@ -554,6 +554,30 @@ "nugetId": "Xamarin.AndroidX.Emoji.Bundled", "dependencyOnly": false }, + { + "groupId": "androidx.emoji2", + "artifactId": "emoji2", + "version": "1.0.0", + "nugetVersion": "1.0.0", + "nugetId": "Xamarin.AndroidX.Emoji2", + "dependencyOnly": false + }, + { + "groupId": "androidx.emoji2", + "artifactId": "emoji2-views-helper", + "version": "1.0.0", + "nugetVersion": "1.0.0", + "nugetId": "Xamarin.AndroidX.Emoji2.ViewsHelper", + "dependencyOnly": false + }, + { + "groupId": "androidx.resourceinspection", + "artifactId": "resourceinspection-annotation", + "version": "1.0.0", + "nugetVersion": "1.0.0", + "nugetId": "Xamarin.AndroidX.ResourceInspection.Annotation", + "dependencyOnly": false + }, { "groupId": "androidx.exifinterface", "artifactId": "exifinterface", @@ -661,16 +685,16 @@ { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-common", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.Common", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-common-java8", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.Common.Java8", "dependencyOnly": false }, @@ -685,104 +709,104 @@ { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-livedata", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.LiveData", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-livedata-core", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.LiveData.Core", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-livedata-core-ktx", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.LiveData.Core.Ktx", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-livedata-ktx", - "version": "2.3.1", - "nugetVersion": "2.3.1.5", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.LiveData.Ktx", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-process", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.Process", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-reactivestreams", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.ReactiveStreams", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-reactivestreams-ktx", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.ReactiveStreams.Ktx", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-runtime", - "version": "2.3.1", - "nugetVersion": "2.3.1.4", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.Runtime", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-runtime-ktx", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.Runtime.Ktx", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-service", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.Service", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-viewmodel", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.ViewModel", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-viewmodel-ktx", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.ViewModel.Ktx", "dependencyOnly": false }, { "groupId": "androidx.lifecycle", "artifactId": "lifecycle-viewmodel-savedstate", - "version": "2.3.1", - "nugetVersion": "2.3.1.3", + "version": "2.4.0", + "nugetVersion": "2.4.0", "nugetId": "Xamarin.AndroidX.Lifecycle.ViewModelSavedState", "dependencyOnly": false }, @@ -917,48 +941,48 @@ { "groupId": "androidx.paging", "artifactId": "paging-common", - "version": "3.0.1", - "nugetVersion": "3.0.1.3", + "version": "3.1.0", + "nugetVersion": "3.1.0", "nugetId": "Xamarin.AndroidX.Paging.Common", "dependencyOnly": false }, { "groupId": "androidx.paging", "artifactId": "paging-common-ktx", - "version": "3.0.1", - "nugetVersion": "3.0.1.3", + "version": "3.1.0", + "nugetVersion": "3.1.0", "nugetId": "Xamarin.AndroidX.Paging.Common.Ktx", "dependencyOnly": false }, { "groupId": "androidx.paging", "artifactId": "paging-runtime", - "version": "3.0.1", - "nugetVersion": "3.0.1.3", + "version": "3.1.0", + "nugetVersion": "3.1.0", "nugetId": "Xamarin.AndroidX.Paging.Runtime", "dependencyOnly": false }, { "groupId": "androidx.paging", "artifactId": "paging-runtime-ktx", - "version": "3.0.1", - "nugetVersion": "3.0.1.3", + "version": "3.1.0", + "nugetVersion": "3.1.0", "nugetId": "Xamarin.AndroidX.Paging.Runtime.Ktx", "dependencyOnly": false }, { "groupId": "androidx.paging", "artifactId": "paging-rxjava2", - "version": "3.0.1", - "nugetVersion": "3.0.1.3", + "version": "3.1.0", + "nugetVersion": "3.1.0", "nugetId": "Xamarin.AndroidX.Paging.RxJava2", "dependencyOnly": false }, { "groupId": "androidx.paging", "artifactId": "paging-rxjava2-ktx", - "version": "3.0.1", - "nugetVersion": "3.0.1.3", + "version": "3.1.0", + "nugetVersion": "3.1.0", "nugetId": "Xamarin.AndroidX.Paging.RxJava2.Ktx", "dependencyOnly": false }, @@ -1013,8 +1037,8 @@ { "groupId": "androidx.profileinstaller", "artifactId": "profileinstaller", - "version": "1.0.0", - "nugetVersion": "1.0.0", + "version": "1.0.4", + "nugetVersion": "1.0.4", "nugetId": "Xamarin.AndroidX.ProfileInstaller.ProfileInstaller", "dependencyOnly": false }, @@ -1317,16 +1341,16 @@ { "groupId": "androidx.work", "artifactId": "work-runtime", - "version": "2.7.0", - "nugetVersion": "2.7.0", + "version": "2.7.1", + "nugetVersion": "2.7.1", "nugetId": "Xamarin.AndroidX.Work.Runtime", "dependencyOnly": false }, { "groupId": "androidx.work", "artifactId": "work-runtime-ktx", - "version": "2.7.0", - "nugetVersion": "2.7.0", + "version": "2.7.1", + "nugetVersion": "2.7.1", "nugetId": "Xamarin.AndroidX.Work.Work.Runtime.Ktx", "dependencyOnly": false }, @@ -1377,8 +1401,8 @@ { "groupId": "io.reactivex.rxjava3", "artifactId": "rxjava", - "version": "3.1.2", - "nugetVersion": "3.1.2.1", + "version": "3.1.3", + "nugetVersion": "3.1.3", "nugetId": "Xamarin.Android.ReactiveX.RxJava3.RxJava", "dependencyOnly": false, "templateSet": "rxjava" @@ -1386,8 +1410,8 @@ { "groupId": "org.jetbrains", "artifactId": "annotations", - "version": "22.0.0", - "nugetVersion": "22.0.0.3", + "version": "23.0.0", + "nugetVersion": "23.0.0", "nugetId": "Xamarin.Jetbrains.Annotations", "dependencyOnly": false, "templateSet": "kotlin" diff --git a/mappings/androidx-assemblies.csv b/mappings/androidx-assemblies.csv index ef1e60808..b9501c478 100644 --- a/mappings/androidx-assemblies.csv +++ b/mappings/androidx-assemblies.csv @@ -1,30 +1,30 @@ Support .NET assembly,AndroidX .NET assembly,Support NuGet,AndroidX NuGet,AndroidX NuGet Version Xamarin.Android.Arch.Core.Common,Xamarin.AndroidX.Arch.Core.Common,Xamarin.Android.Arch.Core.Common,Xamarin.AndroidX.Arch.Core.Common,2.1.0.11 Xamarin.Android.Arch.Core.Runtime,Xamarin.AndroidX.Arch.Core.Runtime,Xamarin.Android.Arch.Core.Runtime,Xamarin.AndroidX.Arch.Core.Runtime,2.1.0.11 -Xamarin.Android.Arch.Lifecycle.Common,Xamarin.AndroidX.Lifecycle.Common,Xamarin.Android.Arch.Lifecycle.Common,Xamarin.AndroidX.Lifecycle.Common,2.3.1.3 +Xamarin.Android.Arch.Lifecycle.Common,Xamarin.AndroidX.Lifecycle.Common,Xamarin.Android.Arch.Lifecycle.Common,Xamarin.AndroidX.Lifecycle.Common,2.4.0 Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Extensions,Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Extensions,2.2.0.10 -Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Process,Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Process,2.3.1.3 -Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Service,Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Service,2.3.1.3 -Xamarin.Android.Arch.Lifecycle.LiveData,Xamarin.AndroidX.Lifecycle.LiveData,Xamarin.Android.Arch.Lifecycle.LiveData,Xamarin.AndroidX.Lifecycle.LiveData,2.3.1.3 -Xamarin.Android.Arch.Lifecycle.LiveData.Core,Xamarin.AndroidX.Lifecycle.LiveData.Core,Xamarin.Android.Arch.Lifecycle.LiveData.Core,Xamarin.AndroidX.Lifecycle.LiveData.Core,2.3.1.3 -Xamarin.Android.Arch.Lifecycle.Runtime,Xamarin.AndroidX.Lifecycle.Runtime,Xamarin.Android.Arch.Lifecycle.Runtime,Xamarin.AndroidX.Lifecycle.Runtime,2.3.1.4 -Xamarin.Android.Arch.Lifecycle.ViewModel,Xamarin.AndroidX.Lifecycle.ViewModel,Xamarin.Android.Arch.Lifecycle.ViewModel,Xamarin.AndroidX.Lifecycle.ViewModel,2.3.1.3 +Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Process,Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Process,2.4.0 +Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Service,Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Service,2.4.0 +Xamarin.Android.Arch.Lifecycle.LiveData,Xamarin.AndroidX.Lifecycle.LiveData,Xamarin.Android.Arch.Lifecycle.LiveData,Xamarin.AndroidX.Lifecycle.LiveData,2.4.0 +Xamarin.Android.Arch.Lifecycle.LiveData.Core,Xamarin.AndroidX.Lifecycle.LiveData.Core,Xamarin.Android.Arch.Lifecycle.LiveData.Core,Xamarin.AndroidX.Lifecycle.LiveData.Core,2.4.0 +Xamarin.Android.Arch.Lifecycle.Runtime,Xamarin.AndroidX.Lifecycle.Runtime,Xamarin.Android.Arch.Lifecycle.Runtime,Xamarin.AndroidX.Lifecycle.Runtime,2.4.0 +Xamarin.Android.Arch.Lifecycle.ViewModel,Xamarin.AndroidX.Lifecycle.ViewModel,Xamarin.Android.Arch.Lifecycle.ViewModel,Xamarin.AndroidX.Lifecycle.ViewModel,2.4.0 Xamarin.Android.Arch.Persistence.Db,Xamarin.AndroidX.Sqlite,Xamarin.Android.Arch.Persistence.Db,Xamarin.AndroidX.Sqlite,2.1.0.10 Xamarin.Android.Arch.Persistence.Db.Framework,Xamarin.AndroidX.Sqlite.Framework,Xamarin.Android.Arch.Persistence.Db.Framework,Xamarin.AndroidX.Sqlite.Framework,2.1.0.10 Xamarin.Android.Arch.Persistence.Room.Common,Xamarin.AndroidX.Media2.Widget,Xamarin.Android.Arch.Persistence.Room.Common,Xamarin.AndroidX.Media2.Widget,1.2.0.2 Xamarin.Android.Arch.Persistence.Room.Common,Xamarin.AndroidX.Room.Common,Xamarin.Android.Arch.Persistence.Room.Common,Xamarin.AndroidX.Room.Common,2.3.0.4 Xamarin.Android.Arch.Persistence.Room.Runtime,Xamarin.AndroidX.Room.Runtime,Xamarin.Android.Arch.Persistence.Room.Runtime,Xamarin.AndroidX.Room.Runtime,2.3.0.4 -Xamarin.Android.Arch.Work.Runtime,Xamarin.AndroidX.Work.Runtime,Xamarin.Android.Arch.Work.Runtime,Xamarin.AndroidX.Work.Runtime,2.7.0 +Xamarin.Android.Arch.Work.Runtime,Xamarin.AndroidX.Work.Runtime,Xamarin.Android.Arch.Work.Runtime,Xamarin.AndroidX.Work.Runtime,2.7.1 Xamarin.Android.Support.Animated.Vector.Drawable,Xamarin.AndroidX.VectorDrawable.Animated,Xamarin.Android.Support.Animated.Vector.Drawable,Xamarin.AndroidX.VectorDrawable.Animated,1.1.0.10 Xamarin.Android.Support.Annotations,Xamarin.Android.ReactiveX.RxJava,Xamarin.Android.Support.Annotations,Xamarin.Android.ReactiveX.RxJava,2.2.21.3 -Xamarin.Android.Support.Annotations,Xamarin.Android.ReactiveX.RxJava3.RxJava,Xamarin.Android.Support.Annotations,Xamarin.Android.ReactiveX.RxJava3.RxJava,3.1.2.1 -Xamarin.Android.Support.Annotations,Xamarin.AndroidX.Annotation,Xamarin.Android.Support.Annotations,Xamarin.AndroidX.Annotation,1.2.0.3 +Xamarin.Android.Support.Annotations,Xamarin.Android.ReactiveX.RxJava3.RxJava,Xamarin.Android.Support.Annotations,Xamarin.Android.ReactiveX.RxJava3.RxJava,3.1.3 +Xamarin.Android.Support.Annotations,Xamarin.AndroidX.Annotation,Xamarin.Android.Support.Annotations,Xamarin.AndroidX.Annotation,1.3.0 Xamarin.Android.Support.Annotations,Xamarin.AndroidX.Media2.Widget,Xamarin.Android.Support.Annotations,Xamarin.AndroidX.Media2.Widget,1.2.0.2 -Xamarin.Android.Support.Annotations,Xamarin.Jetbrains.Annotations,Xamarin.Android.Support.Annotations,Xamarin.Jetbrains.Annotations,22.0.0.3 +Xamarin.Android.Support.Annotations,Xamarin.Jetbrains.Annotations,Xamarin.Android.Support.Annotations,Xamarin.Jetbrains.Annotations,23.0.0 Xamarin.Android.Support.AsyncLayoutInflater,Xamarin.AndroidX.AsyncLayoutInflater,Xamarin.Android.Support.AsyncLayoutInflater,Xamarin.AndroidX.AsyncLayoutInflater,1.0.0.10 -Xamarin.Android.Support.Collections,Xamarin.AndroidX.Collection,Xamarin.Android.Support.Collections,Xamarin.AndroidX.Collection,1.1.0.10 +Xamarin.Android.Support.Collections,Xamarin.AndroidX.Collection,Xamarin.Android.Support.Collections,Xamarin.AndroidX.Collection,1.2.0 Xamarin.Android.Support.Compat,Xamarin.AndroidX.Core,Xamarin.Android.Support.Compat,Xamarin.AndroidX.Core,1.6.0.3 -Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.ConstraintLayout,Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.ConstraintLayout,2.1.1.2 +Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.ConstraintLayout,Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.ConstraintLayout,2.1.2 Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.DataBinding.DataBindingAdapters,Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.DataBinding.DataBindingAdapters,7.0.3 Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.DataBinding.DataBindingRuntime,Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.DataBinding.DataBindingRuntime,7.0.3 Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.DataBinding.ViewBinding,Xamarin.Android.Support.Constraint.Layout,Xamarin.AndroidX.DataBinding.ViewBinding,7.0.3 @@ -36,7 +36,7 @@ Xamarin.Android.Support.CursorAdapter,Xamarin.AndroidX.CursorAdapter,Xamarin.And Xamarin.Android.Support.CustomTabs,Xamarin.AndroidX.Browser,Xamarin.Android.Support.CustomTabs,Xamarin.AndroidX.Browser,1.3.0.8 Xamarin.Android.Support.CustomView,Xamarin.AndroidX.CustomView,Xamarin.Android.Support.CustomView,Xamarin.AndroidX.CustomView,1.1.0.9 Xamarin.Android.Support.Design,Xamarin.Android.ReactiveX.RxJava,Xamarin.Android.Support.Design,Xamarin.Android.ReactiveX.RxJava,2.2.21.3 -Xamarin.Android.Support.Design,Xamarin.Android.ReactiveX.RxJava3.RxJava,Xamarin.Android.Support.Design,Xamarin.Android.ReactiveX.RxJava3.RxJava,3.1.2.1 +Xamarin.Android.Support.Design,Xamarin.Android.ReactiveX.RxJava3.RxJava,Xamarin.Android.Support.Design,Xamarin.Android.ReactiveX.RxJava3.RxJava,3.1.3 Xamarin.Android.Support.Design,Xamarin.AndroidX.Annotation.Experimental,Xamarin.Android.Support.Design,Xamarin.AndroidX.Annotation.Experimental,1.1.0.3 Xamarin.Android.Support.Design,Xamarin.Google.Android.Material,Xamarin.Android.Support.Design,Xamarin.Google.Android.Material,1.4.0.4 Xamarin.Android.Support.Design,Xamarin.Kotlin.StdLib,Xamarin.Android.Support.Design,Xamarin.Kotlin.StdLib,1.5.31.3 diff --git a/mappings/androidx-mapping.csv b/mappings/androidx-mapping.csv index 07e4ae72f..1ed9a67f5 100644 --- a/mappings/androidx-mapping.csv +++ b/mappings/androidx-mapping.csv @@ -808,7 +808,7 @@ Android.Support.V4.Print,PrintHelper.IOnPrintFinishCallback,AndroidX.Print,Print Android.Support.V4.Print,PrintHelper.IOnPrintFinishCallbackInvoker,AndroidX.Print,PrintHelper.IOnPrintFinishCallbackInvoker,Xamarin.Android.Support.Print,Xamarin.AndroidX.Print,android.support.v4.print,PrintHelper.OnPrintFinishCallback,androidx.print,PrintHelper.OnPrintFinishCallback, ,,,,,,,,,,WARNING: Unable to find AndroidX type for Java type androidx.lifecycle.HolderFragment. ,,,,,,,,,,WARNING: Unable to find AndroidX type for Java type androidx.lifecycle.HolderFragment.HolderFragmentManager. -Android.Arch.Lifecycle,ProcessLifecycleOwnerInitializer,AndroidX.Lifecycle,ProcessLifecycleOwnerInitializer,Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Process,android.arch.lifecycle,ProcessLifecycleOwnerInitializer,androidx.lifecycle,ProcessLifecycleOwnerInitializer, +,,,,,,,,,,WARNING: Unable to find AndroidX type for Java type androidx.lifecycle.ProcessLifecycleOwnerInitializer. Android.Arch.Lifecycle,ServiceLifecycleDispatcher,AndroidX.Lifecycle,ServiceLifecycleDispatcher,Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Service,android.arch.lifecycle,ServiceLifecycleDispatcher,androidx.lifecycle,ServiceLifecycleDispatcher, ,,,,,,,,,,WARNING: Unable to find AndroidX type for Java type androidx.lifecycle.ServiceLifecycleDispatcher.DispatchRunnable. Android.Arch.Lifecycle,ViewModelStores,AndroidX.Lifecycle,ViewModelStores,Xamarin.Android.Arch.Lifecycle.Extensions,Xamarin.AndroidX.Lifecycle.Extensions,android.arch.lifecycle,ViewModelStores,androidx.lifecycle,ViewModelStores, diff --git a/mappings/dependencies.json b/mappings/dependencies.json index 6394bbdcc..ed2c58bd6 100644 --- a/mappings/dependencies.json +++ b/mappings/dependencies.json @@ -74,7 +74,8 @@ { "id": "Xamarin.AndroidX.Lifecycle.ViewModel", "dependencies": [ - "Xamarin.AndroidX.Annotation" + "Xamarin.AndroidX.Annotation", + "Xamarin.Kotlin.StdLib" ] }, { @@ -872,6 +873,38 @@ "Xamarin.AndroidX.Emoji" ] }, + { + "id": "Xamarin.AndroidX.Emoji2", + "dependencies": [ + "Xamarin.AndroidX.Annotation", + "Xamarin.AndroidX.Collection", + "Xamarin.AndroidX.Core", + "Xamarin.AndroidX.Lifecycle.Process", + "Xamarin.AndroidX.Startup.StartupRuntime" + ] + }, + { + "id": "Xamarin.AndroidX.Lifecycle.Process", + "dependencies": [ + "Xamarin.AndroidX.Lifecycle.Runtime", + "Xamarin.AndroidX.Startup.StartupRuntime" + ] + }, + { + "id": "Xamarin.AndroidX.Startup.StartupRuntime", + "dependencies": [ + "Xamarin.AndroidX.Annotation", + "Xamarin.AndroidX.Tracing.Tracing" + ] + }, + { + "id": "Xamarin.AndroidX.Emoji2.ViewsHelper", + "dependencies": [ + "Xamarin.AndroidX.Collection", + "Xamarin.AndroidX.Core", + "Xamarin.AndroidX.Emoji2" + ] + }, { "id": "Xamarin.AndroidX.Loader", "dependencies": [ @@ -1013,12 +1046,6 @@ "Xamarin.AndroidX.Lifecycle.ViewModel" ] }, - { - "id": "Xamarin.AndroidX.Lifecycle.Process", - "dependencies": [ - "Xamarin.AndroidX.Lifecycle.Runtime" - ] - }, { "id": "Xamarin.AndroidX.Lifecycle.Service", "dependencies": [ @@ -1189,14 +1216,7 @@ "Xamarin.AndroidX.Annotation", "Xamarin.AndroidX.Arch.Core.Common", "Xamarin.Kotlin.StdLib", - "Xamarin.KotlinX.Coroutines.Core.Jvm" - ] - }, - { - "id": "Xamarin.KotlinX.Coroutines.Core.Jvm", - "dependencies": [ - "Xamarin.Kotlin.StdLib.Common", - "Xamarin.Kotlin.StdLib.Jdk8" + "Xamarin.KotlinX.Coroutines.Core" ] }, { @@ -1275,13 +1295,6 @@ "Xamarin.Kotlin.StdLib" ] }, - { - "id": "Xamarin.AndroidX.Startup.StartupRuntime", - "dependencies": [ - "Xamarin.AndroidX.Annotation", - "Xamarin.AndroidX.Tracing.Tracing" - ] - }, { "id": "Xamarin.AndroidX.Recommendation", "dependencies": [ @@ -1297,6 +1310,12 @@ "Xamarin.AndroidX.RecyclerView" ] }, + { + "id": "Xamarin.AndroidX.ResourceInspection.Annotation", + "dependencies": [ + "Xamarin.AndroidX.Annotation" + ] + }, { "id": "Xamarin.AndroidX.Room.Common", "dependencies": [ @@ -1552,6 +1571,13 @@ "Xamarin.Kotlin.StdLib" ] }, + { + "id": "Xamarin.KotlinX.Coroutines.Core.Jvm", + "dependencies": [ + "Xamarin.Kotlin.StdLib.Common", + "Xamarin.Kotlin.StdLib.Jdk8" + ] + }, { "id": "Xamarin.Google.Guava", "dependencies": [] diff --git a/source/Xamarin.Kotlin.StdLib/Transforms/Metadata.xml b/source/Xamarin.Kotlin.StdLib/Transforms/Metadata.xml index 568cf5b79..8141655a1 100644 --- a/source/Xamarin.Kotlin.StdLib/Transforms/Metadata.xml +++ b/source/Xamarin.Kotlin.StdLib/Transforms/Metadata.xml @@ -80,7 +80,10 @@ Java.Lang.Object Java.Util.IIterator Java.Lang.Object + @@ -177,4 +180,39 @@ DefaultStatic + + + + + + + + + + + diff --git a/source/androidx.appcompat/appcompat-resources/Transforms/Metadata.Namespaces.xml b/source/androidx.appcompat/appcompat-resources/Transforms/Metadata.Namespaces.xml index 775280f41..aff6969bf 100644 --- a/source/androidx.appcompat/appcompat-resources/Transforms/Metadata.Namespaces.xml +++ b/source/androidx.appcompat/appcompat-resources/Transforms/Metadata.Namespaces.xml @@ -25,7 +25,12 @@ > AndroidX.AppCompat.Widget - + + AndroidX.AppCompat.Resources + \ No newline at end of file diff --git a/source/androidx.appcompat/appcompat-resources/Transforms/Metadata.xml b/source/androidx.appcompat/appcompat-resources/Transforms/Metadata.xml index 22843f4e4..c74df57ab 100644 --- a/source/androidx.appcompat/appcompat-resources/Transforms/Metadata.xml +++ b/source/androidx.appcompat/appcompat-resources/Transforms/Metadata.xml @@ -42,4 +42,23 @@ public + + + android.graphics.Color + + \ No newline at end of file diff --git a/source/androidx.appcompat/appcompat/Transforms/Metadata.Namespaces.xml b/source/androidx.appcompat/appcompat/Transforms/Metadata.Namespaces.xml index c97cdcb86..5a36a8743 100644 --- a/source/androidx.appcompat/appcompat/Transforms/Metadata.Namespaces.xml +++ b/source/androidx.appcompat/appcompat/Transforms/Metadata.Namespaces.xml @@ -14,4 +14,11 @@ AndroidX.AppCompat.View AndroidX.AppCompat.View.Menu AndroidX.AppCompat.Widget + + + AndroidX.AppCompat.App.Resources + \ No newline at end of file diff --git a/source/androidx.appcompat/appcompat/Transforms/Metadata.xml b/source/androidx.appcompat/appcompat/Transforms/Metadata.xml index 5953de091..11080c67a 100644 --- a/source/androidx.appcompat/appcompat/Transforms/Metadata.xml +++ b/source/androidx.appcompat/appcompat/Transforms/Metadata.xml @@ -223,4 +223,11 @@ Android.Content.PM.ConfigChanges Java.Lang.Object + + Java.Lang.Object + + \ No newline at end of file diff --git a/source/androidx.emoji2/emoji2-views-helper/Additions/Additions.cs b/source/androidx.emoji2/emoji2-views-helper/Additions/Additions.cs new file mode 100644 index 000000000..d44eff0e9 --- /dev/null +++ b/source/androidx.emoji2/emoji2-views-helper/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; diff --git a/source/androidx.emoji2/emoji2-views-helper/Transforms/Metadata.Namespaces.xml b/source/androidx.emoji2/emoji2-views-helper/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..4c5dd965c --- /dev/null +++ b/source/androidx.emoji2/emoji2-views-helper/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + AndroidX.Emoji2.ViewsIntegration + + \ No newline at end of file diff --git a/source/androidx.emoji2/emoji2-views-helper/Transforms/Metadata.xml b/source/androidx.emoji2/emoji2-views-helper/Transforms/Metadata.xml new file mode 100644 index 000000000..13a3d38c7 --- /dev/null +++ b/source/androidx.emoji2/emoji2-views-helper/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/androidx.emoji2/emoji2/Additions/Additions.cs b/source/androidx.emoji2/emoji2/Additions/Additions.cs new file mode 100644 index 000000000..d44eff0e9 --- /dev/null +++ b/source/androidx.emoji2/emoji2/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; diff --git a/source/androidx.emoji2/emoji2/Transforms/Metadata.Namespaces.xml b/source/androidx.emoji2/emoji2/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..1508cefa2 --- /dev/null +++ b/source/androidx.emoji2/emoji2/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,15 @@ + + + AndroidX.Emoji2.Text + + + AndroidX.Emoji2.Text.FlatBuffer + + + \ No newline at end of file diff --git a/source/androidx.emoji2/emoji2/Transforms/Metadata.xml b/source/androidx.emoji2/emoji2/Transforms/Metadata.xml new file mode 100644 index 000000000..2a0a7ec8a --- /dev/null +++ b/source/androidx.emoji2/emoji2/Transforms/Metadata.xml @@ -0,0 +1,15 @@ + + + Java.Lang.Object + + + Java.Lang.Object + + + \ No newline at end of file diff --git a/source/androidx.fragment/fragment/Transforms/Metadata.Namespaces.xml b/source/androidx.fragment/fragment/Transforms/Metadata.Namespaces.xml index b9085cff7..615d92940 100644 --- a/source/androidx.fragment/fragment/Transforms/Metadata.Namespaces.xml +++ b/source/androidx.fragment/fragment/Transforms/Metadata.Namespaces.xml @@ -8,4 +8,11 @@ --> AndroidX.Fragment.App + + + AndroidX.Fragment.App.StrictMode + \ No newline at end of file diff --git a/source/androidx.resourceinspection/resourceinspection-annotation/Additions/Additions.cs b/source/androidx.resourceinspection/resourceinspection-annotation/Additions/Additions.cs new file mode 100644 index 000000000..d44eff0e9 --- /dev/null +++ b/source/androidx.resourceinspection/resourceinspection-annotation/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; diff --git a/source/androidx.resourceinspection/resourceinspection-annotation/Transforms/Metadata.Namespaces.xml b/source/androidx.resourceinspection/resourceinspection-annotation/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..cceb61026 --- /dev/null +++ b/source/androidx.resourceinspection/resourceinspection-annotation/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + AndroidX.ResourceInspection.Annotation + + + \ No newline at end of file diff --git a/source/androidx.resourceinspection/resourceinspection-annotation/Transforms/Metadata.xml b/source/androidx.resourceinspection/resourceinspection-annotation/Transforms/Metadata.xml new file mode 100644 index 000000000..13a3d38c7 --- /dev/null +++ b/source/androidx.resourceinspection/resourceinspection-annotation/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/migration/BuildTasks/Xamarin.AndroidX.Migration.props b/source/migration/BuildTasks/Xamarin.AndroidX.Migration.props index 061f63c47..f20ef35e1 100644 --- a/source/migration/BuildTasks/Xamarin.AndroidX.Migration.props +++ b/source/migration/BuildTasks/Xamarin.AndroidX.Migration.props @@ -248,6 +248,8 @@ <_AndroidXMavenArtifact Include="androidx.emoji.emoji" /> <_AndroidXMavenArtifact Include="androidx.emoji.emoji-appcompat" /> <_AndroidXMavenArtifact Include="androidx.emoji.emoji-bundled" /> + <_AndroidXMavenArtifact Include="androidx.emoji2.emoji2" /> + <_AndroidXMavenArtifact Include="androidx.emoji2.emoji2-views-helper" /> <_AndroidXMavenArtifact Include="androidx.exifinterface.exifinterface" /> <_AndroidXMavenArtifact Include="androidx.fragment.fragment" /> <_AndroidXMavenArtifact Include="androidx.fragment.fragment-ktx" /> @@ -309,6 +311,7 @@ <_AndroidXMavenArtifact Include="androidx.recommendation.recommendation" /> <_AndroidXMavenArtifact Include="androidx.recyclerview.recyclerview" /> <_AndroidXMavenArtifact Include="androidx.recyclerview.recyclerview-selection" /> + <_AndroidXMavenArtifact Include="androidx.resourceinspection.resourceinspection-annotation" /> <_AndroidXMavenArtifact Include="androidx.room.room-common" /> <_AndroidXMavenArtifact Include="androidx.room.room-guava" /> <_AndroidXMavenArtifact Include="androidx.room.room-ktx" /> diff --git a/tests/AndroidXMigrationTests/Tests/DependenciesTests.cs b/tests/AndroidXMigrationTests/Tests/DependenciesTests.cs index 064f52c4c..8c713db3b 100644 --- a/tests/AndroidXMigrationTests/Tests/DependenciesTests.cs +++ b/tests/AndroidXMigrationTests/Tests/DependenciesTests.cs @@ -264,11 +264,14 @@ public void XamarinFormsTopLevelPackagesExpandToAll() "Xamarin.AndroidX.ConstraintLayout.Core", "Xamarin.AndroidX.CoordinatorLayout", "Xamarin.AndroidX.Core", + //"Xamarin.AndroidX.Core.Core.Ktx", "Xamarin.AndroidX.CursorAdapter", "Xamarin.AndroidX.CustomView", "Xamarin.AndroidX.DocumentFile", "Xamarin.AndroidX.DrawerLayout", "Xamarin.AndroidX.DynamicAnimation", + //"Xamarin.AndroidX.Emoji2", + //"Xamarin.AndroidX.Emoji2.ViewsHelper", "Xamarin.AndroidX.Fragment", "Xamarin.AndroidX.Interpolator", "Xamarin.AndroidX.Legacy.Support.Core.UI", @@ -276,6 +279,7 @@ public void XamarinFormsTopLevelPackagesExpandToAll() "Xamarin.AndroidX.Legacy.Support.V4", "Xamarin.AndroidX.Lifecycle.Common", "Xamarin.AndroidX.Lifecycle.LiveData.Core", + //"Xamarin.AndroidX.Lifecycle.Process", "Xamarin.AndroidX.Lifecycle.Runtime", "Xamarin.AndroidX.Lifecycle.ViewModel", "Xamarin.AndroidX.Lifecycle.ViewModelSavedState", @@ -284,8 +288,10 @@ public void XamarinFormsTopLevelPackagesExpandToAll() "Xamarin.AndroidX.Media", "Xamarin.AndroidX.Print", "Xamarin.AndroidX.RecyclerView", + //"Xamarin.AndroidX.ResourceInspection.Annotation", "Xamarin.AndroidX.SavedState", "Xamarin.AndroidX.SlidingPaneLayout", + //"Xamarin.AndroidX.Startup.StartupRuntime", "Xamarin.AndroidX.SwipeRefreshLayout", "Xamarin.AndroidX.Tracing.Tracing", "Xamarin.AndroidX.Transition", @@ -296,7 +302,10 @@ public void XamarinFormsTopLevelPackagesExpandToAll() "Xamarin.AndroidX.ViewPager2", "Xamarin.Google.Android.Material", "Xamarin.Google.Guava.ListenableFuture", - }; + "Xamarin.Jetbrains.Annotations", + "Xamarin.Kotlin.StdLib", + "Xamarin.Kotlin.StdLib.Common", + }; var tree = PackageDependencyTree.Load(); diff --git a/utilities.cake b/utilities.cake index 4fe2b036c..e2e901d6b 100644 --- a/utilities.cake +++ b/utilities.cake @@ -7,6 +7,8 @@ #addin nuget:?package=Newtonsoft.Json&version=12.0.3 #addin nuget:?package=Cake.FileHelpers&version=3.2.1 +using System.Collections.Generic; + using Newtonsoft.Json; using Newtonsoft.Json.Linq; @@ -201,6 +203,9 @@ Task ("spell-check") "Tink", "PhoneInteractions", "RemoteInteractions", + "Emoji2", + "ViewsHelper", + "ResourceInspection", }; var dictionary_custom = WeCantSpell.Hunspell.WordList.CreateFromWords(words); @@ -266,6 +271,8 @@ Task ("namespace-check") FilePath[] files_org = GetFiles("./generated/**/Org.*.cs").ToArray(); FilePath[] files_io_1 = GetFiles("./generated/**/Io.*.cs").ToArray(); FilePath[] files_io_2 = GetFiles("./generated/**/IO.*.cs").ToArray(); + FilePath[] files_net = GetFiles("./generated/**/Net.*.cs").ToArray(); + FilePath[] files_kotlin = GetFiles("./generated/**/Kotlin*.cs").ToArray(); FilePath[] files_kotlinx = GetFiles("./generated/**/Kotlinx*.cs").ToArray(); files = files.Concat(files_androidx.ToArray()).ToArray(); @@ -313,6 +320,152 @@ Task("binderate-diff") } ); +void RunProcess(FilePath file, string args) +{ + int exit_code = StartProcess(file, args); + if (exit_code != 0) + { + throw new Exception ($"Process {file} exited with code {exit_code}."); + } + + return; +} + +System.Xml.XmlDocument xmldoc = null; +System.Xml.XmlNamespaceManager nsmgr = null; + +Task ("target-sdk-version-check") + .Does + ( + () => + { + FilePath config_file = MakeAbsolute(new FilePath("./config.json")).FullPath; + DirectoryPath base_path = MakeAbsolute(new DirectoryPath ("./")).FullPath; + + // Run the dotnet tool for binderator + RunProcess + ( + "xamarin-android-binderator", + $"--config=\"{config_file}\" --basepath=\"{base_path}\"" + ); + + Dictionary<(string group, string artifact), int> artifacts_target_sdk = null; + Dictionary<(string group, string artifact), string> artifacts_versions = null; + Parallel.Invoke + ( + () => + { + FilePath[] files_android_manifests = GetFiles("./externals/**/AndroidManifest.xml").ToArray(); + foreach(FilePath fp in files_android_manifests) + { + Information($"files_android_manifest = {fp}"); + } + + artifacts_target_sdk = new Dictionary<(string group, string artifact), int>(); + + foreach(FilePath fp in files_android_manifests) + { + Information($" AndroidManifest = {fp}"); + xmldoc = new System.Xml.XmlDocument(); + xmldoc.Load(fp.ToString()); + + nsmgr = new System.Xml.XmlNamespaceManager(xmldoc.NameTable); + nsmgr.AddNamespace("android", "http://schemas.android.com/apk/res/android"); + + string t = xmldoc.SelectSingleNode($@"/manifest/uses-sdk/@android:targetSdkVersion", nsmgr)?.Value; + string mc = xmldoc.SelectSingleNode($@"/manifest/uses-sdk/@android:minCompileSdk", nsmgr)?.Value; + + string[] path_parts = fp + .ToString() + .Split + ( + new char[]{ '/' }, + System.StringSplitOptions.None + ); + + string a = path_parts[path_parts.Length - 2]; + string g = path_parts[path_parts.Length - 3]; + + Information($" artifact = {g}:{a} - target SDK version = {t} min compile SDK = {mc}"); + int t_sdk; + bool ok = int.TryParse(t, out t_sdk); + if (ok) + { + artifacts_target_sdk.Add((g,a), t_sdk); + } + } + + return; + }, + () => + { + FilePath[] files_poms = GetFiles("./externals/**/*.pom").ToArray(); + foreach(FilePath fp in files_poms) + { + Information($"files_android_pom = {fp}"); + } + + artifacts_versions = new Dictionary<(string group, string artifact), string>(); + + + foreach(FilePath fp in files_poms) + { + Information($" pom.xml = {fp}"); + xmldoc = new System.Xml.XmlDocument(); + xmldoc.Load(fp.ToString()); + + nsmgr = new System.Xml.XmlNamespaceManager(xmldoc.NameTable); + nsmgr.AddNamespace("pom", "http://maven.apache.org/POM/4.0.0"); + + string v = xmldoc.SelectSingleNode($@"/pom:project/pom:version", nsmgr)?.InnerText; + Information($" version = {v}"); + if ( v == null ) + { + v = xmldoc.SelectSingleNode($@"/pom:project/pom:parent/pom:version", nsmgr)?.InnerText; + } + + string g = xmldoc.SelectSingleNode($@"/pom:project/pom:groupId", nsmgr)?.InnerText; + if ( g == null ) + { + g = xmldoc.SelectSingleNode($@"/pom:project/pom:parent/pom:groupId", nsmgr)?.InnerText; + } + Information($" groupId = {g}"); + + string a = xmldoc.SelectSingleNode($@"/pom:project/pom:artifactId", nsmgr)?.InnerText; + Information($" artifactId = {a}"); + + artifacts_versions.Add((g, a), v); + } + return; + } + ); + + Dictionary<(string group, string artifact), (string version, int sdk)> artifact_fq_sdk; + artifact_fq_sdk = new Dictionary<(string group, string artifact), (string version, int sdk)>(); + + foreach (KeyValuePair<(string group, string artifact), int> ga in artifacts_target_sdk) + { + int t_sdk = ga.Value; + string v = artifacts_versions[ga.Key]; + + artifact_fq_sdk.Add((ga.Key.group, ga.Key.artifact), (v, t_sdk)); + } + + List log_artifacts_sdk_targets = new List(); + + foreach (KeyValuePair<(string g, string a), (string v, int sdk)> ga in artifact_fq_sdk) + { + string log = $"{ga.Key.g}.{ga.Key.a}:{ga.Value.v} - SDK {ga.Value.sdk}"; + Information(log); + log_artifacts_sdk_targets.Add(log); + } + + System.IO.File.WriteAllLines("./output/artifacts_sdk_targets.md", log_artifacts_sdk_targets.ToArray()); + + return; + } + ); + Task ("api-diff-markdown-info-pr") .IsDependentOn("binderate-diff") .Does @@ -464,6 +617,7 @@ Task ("api-diff-analysis") DirectoryPathCollection directories = GetSubDirectories("./output/api-diff"); Dictionary nugets_modified = new Dictionary(); + Dictionary api_changes_breaking_removed = new Dictionary(); foreach(DirectoryPath d in directories) { @@ -496,7 +650,39 @@ Task ("api-diff-analysis") } } - string[] lines = nugets_modified.Select(kv => kv.Key + Environment.NewLine + "\t" + kv.Value).ToArray(); + FilePathCollection files = GetFiles(@"./output/api-diff/**/*.dll.breaking.md"); + List commands = new List(); + + foreach(FilePath f in files) + { + Information($"file = {f}"); + + string[] lines_in_file = System.IO.File.ReadAllLines(f.ToString()); + List line_numbers = new List(); + + for(int i=0; i pair1.Value.CompareTo(pair2.Value)); + + string[] lines = nugets_modified_ordered + .Select(kv => $"- {kv.Value}" + Environment.NewLine + "\t - " + kv.Key) + .ToArray(); System.IO.File.WriteAllLines("./output/nugets-with-changed-APIs.md", lines); return; @@ -576,6 +762,8 @@ Task ("read-analysis-files") "./output/missing_dotnet_type.csv", "./output/missing_java_type.csv", "./output/nugets-with-changed-APIs.md", + "./output/commands-open-file.sh", + "./output/artifacts_sdk_targets.md", }; if ( ! FileExists("./output/spell-errors.txt") )