-
Notifications
You must be signed in to change notification settings - Fork 349
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
Add my own silly chrome remote debugging project. #65
Conversation
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please visit https://cla.developers.google.com/ to sign. Once you've signed, please reply here (e.g.
|
I signed it. |
CLAs look good, thanks! |
? |
@fake-name i am not very happy with having 4 python projects in here with fairly similar goals. However, I'm not a python developer, so I'm not in the best place to evaluate the strengths of each project. Can you suggest a project or two that i should remove in exchange for yours? |
Looking at them, I don't see them being that similar at all, really.
Realistically, I could probably actually place my project on top of either PyChrome or PyChromeDevTools, using them as the underlying communication transport. However, I've also recently been putting a fair bit of work into the effort of managing execution of the chrome binary, and managing it's life-cycle and proper tear-down. From a quick skim of the other options, none of them do this. If I were forced to chose, I'd say that PyChrome and PyChromeDevTools very much replicate each-other more then the other projects. From an organization standpoint, I'd group them into two groups: "Transport", which handle the banal internals of talking to chromium, but don't do things like function name/parameter checking, and "High-Level", which seek to expose the fully structured debugging interface in python. There's another transport python module chrome_remote_shell, which I admit I actually started with as a base. I'd group PyChrome, PyChromeDevTools, and chrome_remote_shell as "transport" libraries, while ChromeWhip and my own project are "high-level" interface wrappers. I'm not sure if this helps. |
@fake-name this does help. thanks for that breakdown. |
? |
This is a PR to add the python remote debug protocol wrapper I've been poking about with for the last 8+ months or so.
It's half horrible python AST abuse, but it should allow the protocol wrapper to be regenerated on-the-fly for the active chromium version once https://codereview.chromium.org/2867073006/ (Chromium 60) lands.
At this point, I'm actively using it, and a lot of the higher-level automation is still under development, but as a convenient way to just use chromium
in a single-tab manner(multiple tabs are present, very WIP), it's quite nice. I even have docs!