Open Bug 1555857 Opened 5 years ago Updated 4 years ago

Add support for direct call IPDL methods

Categories

(Webtools :: Searchfox, defect)

defect
Not set
normal

Tracking

(Not tracked)

People

(Reporter: mccr8, Unassigned)

References

Details

In addition to bug 1417586, another thing that will need to be done for indexing to work for IPDL files again is to add support for the information in direct_call.py. Instead of everything having a PFoo::SendBar() and PFoo::RecvBar() method, direct_call.py allows you to specify concrete implementation in subclasses. I think SearchFox's ipdl-analyze.rs file will need to figure out this file. Off hand, I'd guess that it would be better to turn direct call into a JSON file or something, rather than trying to parse Python in Rust, but that's a minor detail.

I have a dubious approach on the fancy branch documented at templink permalink that could get rebased into oblivion that addresses this in a roundabout fashion but avoids needing to understand direct_call.py or switch entirely to having the in-tree python logic generate the analysis data.

I'd like to either land this fix in the next ~1 week or have it be rendered obsolete by someone else doing something more elegant (switch to in-tree python generating analysis data, use https://github.com/google/starlark-rust to evaluate direct_call.py), so taking the bug for now, but :mccr8 / :kats /others should feel free to chime in! https://github.com/asutherland/mozsearch/commits/fancy/tools/src/bin/ipdl-analyze.rs has the links to the piecemeal changes, but I'll squash / cleanup for review.

Assignee: nobody → bugmail
Status: NEW → ASSIGNED

The keep-going-despite-parse-errors fixes in bug 1546848 landed but I'm now filing another bug that suggests we just move to using the python in-tree code generator which could help partially address this problem, so clearing myself from this bug for clarity.

Assignee: bugmail → nobody
Status: ASSIGNED → NEW
You need to log in before you can comment on or make changes to this bug.