Skip to content

Conversation

@jonpryor
Copy link
Contributor

Commit 0881acc broke the build via unit test failure:

System.Exception : /var/folders/l8/73t5whsx7dj5v5gh_bn7zxlr0000gn/T/tmp28cf44e7.tmp (5,5): Element 'constructor' requires attribute 'jni-signature'
  at Xamarin.Android.Tools.ApiXmlAdjuster.XmlUtil.GetRequiredAttribute (System.Xml.XmlReader reader, System.String name)
  at Xamarin.Android.Tools.ApiXmlAdjuster.JavaApiLoaderExtensions.LoadMemberAttributes (Xamarin.Android.Tools.ApiXmlAdjuster.JavaMember member, System.Xml.XmlReader reader)
  ...

This was generated from e.g. make run-test-generator-core and
processing a "legacy" file in the form of
tools/generator/Tests-Core/api-cp.xml (whereby "legacy" means
"didn't contain the newly required //constructor/@jni-signature
XML attribute).

There are two plausible fixes:

  1. Update api-cp.xml so that it provides the attribute that
    0881acc requires, or
  2. Make the attributes not required attributes.

Since I don't know what the larger ecosystem may be doing with
these API XML files, I chose the conservative approach (2).

Commit 0881acc [broke][0] the [build][1] via unit test failure:

	System.Exception : /var/folders/l8/73t5whsx7dj5v5gh_bn7zxlr0000gn/T/tmp28cf44e7.tmp (5,5): Element 'constructor' requires attribute 'jni-signature'
	  at Xamarin.Android.Tools.ApiXmlAdjuster.XmlUtil.GetRequiredAttribute (System.Xml.XmlReader reader, System.String name)
	  at Xamarin.Android.Tools.ApiXmlAdjuster.JavaApiLoaderExtensions.LoadMemberAttributes (Xamarin.Android.Tools.ApiXmlAdjuster.JavaMember member, System.Xml.XmlReader reader)
	  ...

This was generated from e.g. `make run-test-generator-core` and
processing a "legacy" file in the form of
`tools/generator/Tests-Core/api-cp.xml` (whereby "legacy" means
"didn't contain the newly required `//constructor/@jni-signature`
XML attribute).

There are two plausible fixes:

 1. Update `api-cp.xml` so that it provides the attribute that
    0881acc requires, or
 2. Make the attributes *not* required attributes.

Since I don't know what the larger ecosystem may be doing with
these API XML files, I chose the conservative approach (2).

[0]: https://jenkins.mono-project.com/view/Xamarin.Android/job/Java.Interop/261/testReport/junit/generatortests/AdjusterTests/Process/
[1]: https://jenkins.mono-project.com/view/Xamarin.Android/job/Java.Interop/261/
@jonpryor jonpryor merged commit 7b56ed3 into dotnet:master Jun 27, 2018
jonpryor added a commit that referenced this pull request Aug 2, 2018
Commit 0881acc [broke][0] the [build][1] via unit test failure:

	System.Exception : /var/folders/l8/73t5whsx7dj5v5gh_bn7zxlr0000gn/T/tmp28cf44e7.tmp (5,5): Element 'constructor' requires attribute 'jni-signature'
	  at Xamarin.Android.Tools.ApiXmlAdjuster.XmlUtil.GetRequiredAttribute (System.Xml.XmlReader reader, System.String name)
	  at Xamarin.Android.Tools.ApiXmlAdjuster.JavaApiLoaderExtensions.LoadMemberAttributes (Xamarin.Android.Tools.ApiXmlAdjuster.JavaMember member, System.Xml.XmlReader reader)
	  ...

This was generated from e.g. `make run-test-generator-core` and
processing a "legacy" file in the form of
`tools/generator/Tests-Core/api-cp.xml` (whereby "legacy" means
"didn't contain the newly required `//constructor/@jni-signature`
XML attribute).

There are two plausible fixes:

 1. Update `api-cp.xml` so that it provides the attribute that
    0881acc requires, or
 2. Make the attributes *not* required attributes.

Since I don't know what the larger ecosystem may be doing with
these API XML files, I chose the conservative approach (2).

[0]: https://jenkins.mono-project.com/view/Xamarin.Android/job/Java.Interop/261/testReport/junit/generatortests/AdjusterTests/Process/
[1]: https://jenkins.mono-project.com/view/Xamarin.Android/job/Java.Interop/261/
@github-actions github-actions bot locked and limited conversation to collaborators Apr 14, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants