yuja added a comment.

  Quickly scanned, and looks generally good to me.
  
  >   rust: iterator version of Graph.parents
  >   rust: translation of missingancestors
  >   rust: translated random test of missingancestors
  
  Can you send these as separate patches?
  
  >   An alternative would have been to expose to Python
  >   MissingAncestors<VecGraphs> but that would have meant
  >   
  >   - pollution of the release build used from Python,  whereas we do it in 
this changeset within the tests submodule
  >   - waiting on rust-cpython bindings to be ready or doing the cumbersome 
direct-ffi (more pollution with unsafe C code)
  
  Still I want some CPython interface to measure the perf win. Are there
  lots of work remaining to bring rust-cpython to us?
  
  >   although one could argue that actually parents() should return an
  >   array instead of a tuple, giving us a similar iterator for free (but on
  >   references instead of values, unless we also use the arrayvec crate
  >   could help). Notably, the current C-backed parents() internally uses an
  >   array for communication with C code, so that currently, we'd get less 
memory
  >   copy and less code using an array.
  
  I prefer changing parents() to return `[Revision; 2]`. Then, we can write a
  simple utility function that drops NULL_REVISION, `&[Revision; 2] -> 
&[Revision]`.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D5370

To: gracinet, #hg-reviewers
Cc: yuja, durin42, kevincox, mjpieters, mercurial-devel
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to