You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Aug 27, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Aug 27, 2026. It is now read-only.
Do not invalidate binding an interface if a static method cannot be bound #588
Currently .Net has a limitation for Actions and Functions to support up to 16 arguments.
When generator hits a case where method has more than 16 arguments it will skip it after providing a warning.
EXEC : warning BG8D00: More than 16 parameters were found, which goes beyond the maximum number of parameters. (in method Of in managed type Java.Util.IMap)
The problem is that after ignoring the issue, Generator also invalidate the whole type because it contains invalid methods.
EXEC : warning BG8503: Invalidating Java.Util.IMap and all nested types because some of its methods were invalid.
We are hitting this case when trying to bind some static methods on Interface java.util.Map<K, V>
We need to not treat those warning as warning since it causes us problems later.
When dealing with methods that have more than 16 arguments, we may need to create our own type/delegate.
To clarify, I believe the issue here is we do not need to invalidate the interface if we cannot bind a static or default method, as these are not required to be implemented by the user in order to implement the interface.
changed the title [-]Generator should not ignore invalid methods and then later invalidate the whole type[/-][+]Do not invalidate binding an interface if a DIM cannot be bound[/+]on May 21, 2020
changed the title [-]Do not invalidate binding an interface if a DIM cannot be bound[/-][+]Do not invalidate binding an interface if a static method cannot be bound[/+]on Jun 8, 2020
A new Preview version of Xamarin.Android has now been published that includes the fix for this item. The fix is not yet included in a Release version. I will update this again when a Release version is available that includes the fix.
Fix included on macOS in Visual Studio 2019 for Mac version 8.7 Preview 4. To try the Preview version that includes the fix, check for the latest updates on the Previewupdater channel.
Fix included on macOS in Visual Studio 2019 for Mac version 8.7. To get the new version that includes the fix, check for the latest updates on the Stableupdater channel.
Activity
jpobst commentedon Mar 2, 2020
To clarify, I believe the issue here is we do not need to invalidate the interface if we cannot bind a
staticordefaultmethod, as these are not required to be implemented by the user in order to implement the interface.[-]Generator should not ignore invalid methods and then later invalidate the whole type[/-][+]Do not invalidate binding an interface if a DIM cannot be bound[/+]jpobst commentedon Jun 8, 2020
After further research, we do handle
defaultcorrectly, but notstatic.[-]Do not invalidate binding an interface if a DIM cannot be bound[/-][+]Do not invalidate binding an interface if a static method cannot be bound[/+][generator] Don't invalidate interface if static method is invalidated (
[generator] Don't invalidate interface if static method is invalidated (
brendanzagaeski commentedon Jul 14, 2020
Release status update
A new Preview version of Xamarin.Android has now been published that includes the fix for this item. The fix is not yet included in a Release version. I will update this again when a Release version is available that includes the fix.
Fix included in Xamarin.Android 11.0.0.3.
Fix included on Windows in Visual Studio 2019 version 16.7 Preview 4. To try the Preview version that includes the fix, check for the latest updates in Visual Studio Preview.
Fix included on macOS in Visual Studio 2019 for Mac version 8.7 Preview 4. To try the Preview version that includes the fix, check for the latest updates on the Preview updater channel.
brendanzagaeski commentedon Aug 5, 2020
Release status update
A new Release version of Xamarin.Android has now been published that includes the fix for this item.
Fix included in Xamarin.Android SDK version 11.0.0.3.
Fix included on Windows in Visual Studio 2019 version 16.7. To get the new version that includes the fix, check for the latest updates or install the most recent release from https://visualstudio.microsoft.com/downloads/.
Fix included on macOS in Visual Studio 2019 for Mac version 8.7. To get the new version that includes the fix, check for the latest updates on the Stable updater channel.
[generator] Don't invalidate interface if static method is invalidated (