diff --git a/Documentation/release-notes/4397.md b/Documentation/release-notes/4397.md new file mode 100644 index 00000000000..f2c4353929e --- /dev/null +++ b/Documentation/release-notes/4397.md @@ -0,0 +1,6 @@ +### Build and deployment performance + + * [GitHub PR 596](https://github.com/xamarin/java.interop/pull/596): + Use `File.Exists` instead of `DirectoryGetFile`. This reduced the time for the + `LinkAssembliesNoShrink` task from about 711ms to 426ms for a small test + Xamarin.Forms app on an initial clean build. diff --git a/external/Java.Interop b/external/Java.Interop index 27cfd452c6e..bd7c60a6a5e 160000 --- a/external/Java.Interop +++ b/external/Java.Interop @@ -1 +1 @@ -Subproject commit 27cfd452c6e543374728ace77af05ab65f9952b6 +Subproject commit bd7c60a6a5ea8abaf6f241da17c42d2d93226bf2 diff --git a/src/Mono.Android/metadata b/src/Mono.Android/metadata index 40651596f7b..a8786c4c5da 100644 --- a/src/Mono.Android/metadata +++ b/src/Mono.Android/metadata @@ -1592,4 +1592,9 @@ true true true + + + true + true + diff --git a/tests/api-compatibility/acceptable-breakages-v10.0.99.txt b/tests/api-compatibility/acceptable-breakages-v10.0.99.txt index e69de29bb2d..b7c8fb55c8e 100644 --- a/tests/api-compatibility/acceptable-breakages-v10.0.99.txt +++ b/tests/api-compatibility/acceptable-breakages-v10.0.99.txt @@ -0,0 +1,166 @@ +Compat issues with assembly Mono.Android: +TypesMustExist : Type 'Android.Bluetooth.BluetoothProfileConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Content.ComponentCallbacks2Consts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Content.DialogInterfaceConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Drm.DrmStore.ConstraintsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.BidiPairedBracketTypeConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.DecompositionTypeConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.EastAsianWidthConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.GraphemeClusterBreakConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.HangulSyllableTypeConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.IndicPositionalCategoryConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.IndicSyllabicCategoryConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.JoiningGroupConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.JoiningTypeConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.LineBreakConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.NumericTypeConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.SentenceBreakConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.VerticalOrientationConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacter.WordBreakConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacterEnums.ECharacterCategoryConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UCharacterEnums.ECharacterDirectionConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UPropertyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Lang.UPropertyNameChoiceConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Text.Collator.ReorderCodesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Text.SymbolTableConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Icu.Text.UnicodeMatcherConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Media.MicrophoneDirectionConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Media.TV.TvContract.BaseTvColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.OS.ParcelableConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.BaseColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.AttendeesColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.CalendarAlertsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.CalendarCacheColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.CalendarColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.CalendarSyncColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.ColorsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.EventDaysColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.EventsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.ExtendedPropertiesColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.RemindersColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.CalendarContract.SyncColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Contacts.ContactMethodsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Contacts.ExtensionsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Contacts.GroupsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Contacts.OrganizationColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Contacts.PeopleColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Contacts.PhonesColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Contacts.PhotosColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Contacts.PresenceColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Contacts.SettingsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.BaseSyncColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.CommonDataKinds.BaseTypesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.CommonDataKinds.CommonColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.ContactNameColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.ContactOptionsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.ContactsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.ContactStatusColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.DataColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.DataUsageStatColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.DeletedContactsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.DisplayNameSourcesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.FullNameStyleConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.GroupsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.PhoneLookupColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.PhoneticNameStyleConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.PresenceColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.RawContactsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.SettingsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.StatusColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.StreamItemPhotosColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.StreamItemsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.ContactsContract.SyncColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.Audio.AlbumColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.Audio.ArtistColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.Audio.AudioColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.Audio.GenresColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.Audio.PlaylistsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.DownloadColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.Files.FileColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.Images.ImageColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.MediaColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.MediaStore.Video.VideoColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.OpenableColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.SyncStateContract.ColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Telephony.BaseMmsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Telephony.CanonicalAddressesColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Telephony.TextBasedSmsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Provider.Telephony.ThreadsColumnsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Telephony.Mbms.GroupCallCallbackConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Views.MenuConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Views.InputMethods.InputConnectionConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Views.InputMethods.InputMethodConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Views.TextClassifiers.TextClassifierConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Android.Widget.AdapterConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Dalvik.Bytecode.OpcodesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.IO.ObjectStreamConstantsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Lang.Invoke.MethodHandleInfoConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Lang.Reflect.MemberConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Net.CookiePolicyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Net.SocketOptionsConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.KeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.PrivateKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.PublicKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.Interfaces.DSAPrivateKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.Interfaces.DSAPublicKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.Interfaces.ECPrivateKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.Interfaces.ECPublicKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.Interfaces.RSAMultiPrimePrivateCrtKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.Interfaces.RSAPrivateCrtKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.Interfaces.RSAPrivateKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Security.Interfaces.RSAPublicKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Sql.ConnectionConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Sql.DatabaseMetaDataConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Sql.ParameterMetaDataConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Sql.ResultSetConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Sql.ResultSetMetaDataConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Sql.StatementConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Text.CharacterIteratorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.ComparatorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.MapEntryConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.SpliteratorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Functions.BinaryOperatorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Functions.DoubleUnaryOperatorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Functions.FunctionConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Functions.IntUnaryOperatorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Functions.LongUnaryOperatorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Functions.PredicateConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Functions.UnaryOperatorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Jar.Pack200.PackerConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Jar.Pack200.UnpackerConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Java.Util.Streams.CollectorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Crypto.SecretKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Crypto.Interfaces.DHPrivateKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Crypto.Interfaces.DHPublicKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Crypto.Interfaces.PBEKeyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Microedition.Khronos.Egl.EGL10Consts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Microedition.Khronos.Egl.EGL11Consts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Microedition.Khronos.Opengles.GL10Consts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Microedition.Khronos.Opengles.GL11Consts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Microedition.Khronos.Opengles.GL11ExtConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Microedition.Khronos.Opengles.GL11ExtensionPackConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Javax.Xml.Transform.ResultConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.HttpStatusConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Auth.Params.AuthPNamesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Client.Params.ClientPNamesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Client.Protocol.ClientContextConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Conn.Params.ConnConnectionPNamesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Conn.Params.ConnManagerPNamesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Conn.Params.ConnRoutePNamesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Conn.Routing.HttpRouteDirectorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Cookie.Params.CookieSpecPNamesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Cookies.ClientCookieConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Cookies.SMConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Entity.ContentLengthStrategyConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Params.CoreConnectionPNamesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Params.CoreProtocolPNamesConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Protocol.ExecutionContextConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.Apache.Http.Protocol.HttpContextConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.W3c.Dom.DOMErrorConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.W3c.Dom.NodeConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.W3c.Dom.TypeInfoConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.W3c.Dom.UserDataHandlerConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.W3c.Dom.LS.DOMImplementationLSConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.W3c.Dom.LS.LSParserConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.W3c.Dom.LS.LSParserFilterConsts' does not exist in the implementation but it does exist in the contract. +TypesMustExist : Type 'Org.XmlPull.V1.XmlPullParserConsts' does not exist in the implementation but it does exist in the contract. \ No newline at end of file diff --git a/tests/api-compatibility/acceptable-breakages-v10.0.txt b/tests/api-compatibility/acceptable-breakages-v10.0.txt index 5ec95f58800..82f36ac1a45 100644 --- a/tests/api-compatibility/acceptable-breakages-v10.0.txt +++ b/tests/api-compatibility/acceptable-breakages-v10.0.txt @@ -18,6 +18,10 @@ CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Android. CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Android.Net.Wifi.WpsInfo..ctor(Android.Net.Wifi.WpsInfo)' in the contract but not the implementation. CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Android.Net.Wifi.WpsInfo.DescribeContents()' in the contract but not the implementation. CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Android.Net.Wifi.WpsInfo.WriteToParcel(Android.OS.Parcel, Android.OS.ParcelableWriteFlags)' in the contract but not the implementation. +CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Android.Net.Wifi.WpsInfo.Bssid' in the contract but not the implementation. +CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Android.Net.Wifi.WpsInfo.Creator' in the contract but not the implementation. +CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Android.Net.Wifi.WpsInfo.Pin' in the contract but not the implementation. +CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Android.Net.Wifi.WpsInfo.Setup' in the contract but not the implementation. CannotChangeAttribute : Attribute 'Android.Runtime.RegisterAttribute' on 'Android.Nfc.Tech.BasicTagTechnology' changed from '[RegisterAttribute("android/nfc/tech/BasicTagTechnology", DoNotGenerateAcw=true, ApiSince=10)]' in the contract to '[RegisterAttribute("android/nfc/tech/BasicTagTechnology", DoNotGenerateAcw=true)]' in the implementation. CannotChangeAttribute : Attribute 'Android.Runtime.RegisterAttribute' on 'Android.Text.ClipboardManager..ctor()' changed from '[RegisterAttribute(".ctor", "()V", "")]' in the contract to '[RegisterAttribute(".ctor", "()V", "", ApiSince=11)]' in the implementation. CannotChangeAttribute : Attribute 'Android.Runtime.RegisterAttribute' on 'Android.Text.SpannableStringInternal' changed from '[RegisterAttribute("android/text/SpannableStringInternal", DoNotGenerateAcw=true, ApiSince=1)]' in the contract to '[RegisterAttribute("android/text/SpannableStringInternal", DoNotGenerateAcw=true)]' in the implementation. diff --git a/tests/api-compatibility/acceptable-breakages-v8.0.txt b/tests/api-compatibility/acceptable-breakages-v8.0.txt index 765df65588f..456769e06cb 100644 --- a/tests/api-compatibility/acceptable-breakages-v8.0.txt +++ b/tests/api-compatibility/acceptable-breakages-v8.0.txt @@ -116,4 +116,5 @@ CannotAddAbstractMembers : Member 'public Java.Net.SocketAddress Java.Nio.Channe CannotAddAbstractMembers : Member 'public Java.Net.SocketAddress Java.Nio.Channels.ServerSocketChannel.LocalAddress.get()' is abstract in the implementation but is missing in the contract. CannotAddAbstractMembers : Member 'public Java.Net.SocketAddress Java.Nio.Channels.SocketChannel.LocalAddress' is abstract in the implementation but is missing in the contract. CannotAddAbstractMembers : Member 'public Java.Net.SocketAddress Java.Nio.Channels.SocketChannel.LocalAddress.get()' is abstract in the implementation but is missing in the contract. -CannotChangeAttribute : Attribute 'Android.Runtime.RegisterAttribute' on 'Java.Util.Concurrent.Atomic.Striped64' changed from '[RegisterAttribute("java/util/concurrent/atomic/Striped64", DoNotGenerateAcw=true)]' in the contract to '[RegisterAttribute("java/util/concurrent/atomic/Striped64", DoNotGenerateAcw=true, ApiSince=24)]' in the implementation. \ No newline at end of file +CannotChangeAttribute : Attribute 'Android.Runtime.RegisterAttribute' on 'Java.Util.Concurrent.Atomic.Striped64' changed from '[RegisterAttribute("java/util/concurrent/atomic/Striped64", DoNotGenerateAcw=true)]' in the contract to '[RegisterAttribute("java/util/concurrent/atomic/Striped64", DoNotGenerateAcw=true, ApiSince=24)]' in the implementation. +CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Android.App.Notification.Number' in the contract but not the implementation. \ No newline at end of file