Skip to content
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

Exclude packages from runtime proxy generation #46

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

xfumihiro
Copy link
Owner

Fixes #32 #48

@xfumihiro xfumihiro changed the title Hotfixes/issue#32 Fix TextureView issue Nov 5, 2015
@xfumihiro
Copy link
Owner Author

For things other than nit fix, I think a PR will make things clear about what have changed.
And also, it's still a WIP.

@xfumihiro xfumihiro changed the title Fix TextureView issue Exclude packages from runtime proxy generation Nov 13, 2015
@xfumihiro
Copy link
Owner Author

Now we wait for the patch get merged.

@autovalue
Copy link

Hi,
I'm not sure if I should file a new issue or just leave this as a comment.

This library doesn't seem to play nice with LeakCanary. It attempts to create a ProbeProxy subclass of its final custom views.

I think your processor code should probably check if a class is "final" before attempting to do stuff with it. Adding "com.squareup.leakcanary.internal.DisplayLeakConnectorView" to the "excludePackages" list doesn't seem to work either.

I think it would be nicer if the excludePackages entries were regex based, therefore removing the need to explicitly list every possible Views within a given package in the gradle file.

Do you mind isolating the resValue changes from the PR (as that's a new feature as far as I'm aware and we don't know how long google devs might take to merge your change in) and merging the bug fixes in so that we can test the fix on our apps?

@xfumihiro
Copy link
Owner Author

Automatically filtering out final views is an issue I afraid I don't have time to deal with because for the following several months I have to prepare for job interviews (:disappointed:). But hey, PRs are always welcome!
As for this issue (exclude package feature), I think the best approach requires the resValue patch (which also needed by #19) as an effective way to commute between plugin and runtime modules.

@autovalue
Copy link

Aah no worries dude, good luck with the interviews.
I've never really looked into plugin development. This might be the time I actually take the plunge.

All I need is IntelliJ idea right? No extra libraries/tool required.

@xfumihiro
Copy link
Owner Author

Yep. Go nuts! 👍

@xfumihiro
Copy link
Owner Author

To work with LeakCanary:

viewInspector {
  excludePackages = ['com.squareup.leakcanary.internal']
}

@xfumihiro
Copy link
Owner Author

@mikeyxkcd The package exclusion will skip views that starts with the given path. I don't think we need to make it regex based.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Project doesn't compile if you use TextureView
2 participants