New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace looseSignature with a better annotation #7770
Replace looseSignature with a better annotation #7770
Conversation
0734791
to
349e154
Compare
After converting left |
@hoisie @brettchabot Although this work is not finished completely, but I think it's time to receive feedback from your experience early. |
This is great! |
Checking it now |
FYI these are the annotation processor errors that get printed: https://gist.github.com/hoisie/12c2e4f4c3f35a45dd22e1175cdfd9bd Looks like the validator errors need to be updated as well to support ClassName: It seems like the sdk validator doesn't run on Gradle? |
@hoisie Thanks. I will continue this work with
Looks like not run. I didn't capture this error when running this PR locally and GitHub Actions. |
You mean the |
Okay. I will keep to use
Which command can be used to run validator? Normal assemble building? We might need to add this checking task on GitHub CI if it doesn't run on CI before. |
349e154
to
b904ce7
Compare
b904ce7
to
f368cb4
Compare
8ee4015
to
0ab7c1b
Compare
6759631
to
5b7900b
Compare
Signed-off-by: utzcoz <utzcoz@outlook.com>
5b7900b
to
b78b789
Compare
Moved to #8829 after fixing branch name. |
If one method of a shadow class uses the Class that brought by newer SDK than user's
compileSdk
, and it will cause compiling error for user because Robolectri'sShadows
loads this shadow class, and trigger this shadow class to load this new Class. In previous experience, we uselooseSignatures
to mark shadow class and useObject
to replace all input parameters of this method to avoid compiling error and ensureShadowWrangle
can find this method.looseSignatures
work fine now, but it's coarse-grained.ClassName
can be used to mark the input parameter that has new Class type only, andShadowWrangle
will provide type checking for real input parameter to ensure real passed input parameters match to expected class types.Close #6888.