gracinet added a comment.
@yuja I talked with @lothiraldan about this today. It turns out that it'd be better to provide a `basesheads` returning a set directly from the MissingAncestors object (I do have a Rust implementation for heads). This would make the call from `setdiscovery` uniform, and our measurements show that this would be a significant performance gain in the Rust version. Preliminary measurements indeed show a performance increase with this approach over x30 within a perfdiscovery on the PyPy repo for this `commonheads()` method, which was abnormaly slow in the version you commented upon and ate most of the Rust boost. It brings the Rust overall improvement for that discovery at 28% faster. REPOSITORY rHG Mercurial REVISION DETAIL https://phab.mercurial-scm.org/D5551 To: gracinet, indygreg, #hg-reviewers Cc: yuja, lothiraldan, mercurial-devel _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel