Skip to content
Snippets Groups Projects
  1. Jun 12, 2024
  2. Jun 11, 2024
  3. Jun 10, 2024
  4. May 07, 2024
    • Anton Shestakov's avatar
      chistedit: change action for the correct item · 6ec4c745
      Anton Shestakov authored
      We have an experimental config histedit.later-commits-first from c820866c52f9,
      and when it's true, the order of commits in histedit UI is reversed, both in
      text mode and in curses mode.
      
      But before this patch key presses in curses mode would change histedit actions
      in the same old order, i.e. trying to edit the latest commit (which would be
      first now) would put "edit" action on the last commit in the list. This wasn't
      a cosmetic issue, histedit would actually proceed to edit the first commit in
      the list.
      
      Let's map rules to display items (hopefully now correctly).
      6ec4c745
  5. May 06, 2024
  6. Apr 22, 2024
    • Georges Racinet's avatar
      rust: blanket implementation of Graph for Graph references · b08c5fbe
      Georges Racinet authored
      The need comes from the fact that `AncestorsIterator` and many
      Graph-related algorithms take ownership of the `Graph` they work with.
      This, in turn is due to them needing to accept the `Index` instances
      that are provided by the Python layers (that neither rhg nor `RHGitaly`
      use, of course): the fact that nowadays the Python layer holds an object
      that is itself implemented in Rust does not change the core problem that
      they cannot be tracked by the borrow checker.
      
      Even though it looks like cloning `Changelog` would be cheap, it seems
      hard to guarantee that on the long run. The object is already too rich
      for us to be comfortable with it, when using references is the most
      natural and guaranteed way of proceeding.
      
      The added test seems a bit superfleous, but it will act as a reminder
      that this feature is really useful until something in the Mercurial code
      base actually uses it.
      b08c5fbe
  7. May 06, 2024
  8. May 02, 2024
    • Pierre-Yves David's avatar
      re2: make errors quiet · 6c39edd1
      Pierre-Yves David authored
      By default, the re2 library will output error on its own instead of keeping the
      error in an exception. This make re2 printing spurious error before fallback to
      the stdlib remodule that may accept the pattern or also fails to parse it and
      raise a proper error that will be handled by Mercurial.
      
      So we also pass an Option object that changes this default.
      6c39edd1
    • Pierre-Yves David's avatar
      fold-or-prune-me: update proposal · fc317bd5
      Pierre-Yves David authored
      This does the same things but with a narrower wrapping.
      fc317bd5
  9. Mar 31, 2024
    • Felipe Resende's avatar
      subrepo: propagate non-default path on outgoing · 3e0f86f0
      Felipe Resende authored
      There was already a fix made in 5dbff89cf107 for pull and push commands. I did
      the same for the outgoing command.
      
      The problem I identified is that when the parent repository has multiple paths,
      the outgoing command was not respecting the parent path used and was always
      using the default path for subrepositories.
      3e0f86f0
  10. Apr 04, 2024
    • Arseniy Alekseyev's avatar
      wireprotoserver: ensure that output stream gets flushed on exception · 13c004b5
      Arseniy Alekseyev authored
      Previously flush was happening due to Python finalizer being run on
      `BufferedWriter`. With upgrade to Python 3.11 this started randomly
      failing.
      
      My guess is that the finalizer on the raw `FileIO` object may
      be running before the finalizer of `BufferedWriter` has a chance to run.
      
      At any rate, since we're not relying on finalizers in the happy case
      we should also not rely on them in case of exception.
      13c004b5
  11. Apr 15, 2024
    • Arseniy Alekseyev's avatar
      match: strengthen visit_children_set invariant, Recursive means "all files" · 74230abb
      Arseniy Alekseyev authored
      My previous interpretation of "Recursive" was too relaxed: I thought it
      instructed the caller to do something like this:
      
      > you can stop calling `visit_children_set` because you'll need to descend into
      > every directory recursively, but you should still check every file if it
      > matches or not
      
      Whereas the real instruction seems to be:
      
      > I guarantee that everything in this subtree matches, you can stop
      > querying the matcher for all files and dirs altogether.
      
      The evidence to support this:
      
      - the test actually passes with the stronger invariant, revealing no
      exceptions from this rule
      
      - the implementation of `visit_children_set` for `DifferenceMatcher`
      clearly relies on this requirement, so it must hold for that not to
      lead to bugs.
      74230abb
  12. Apr 12, 2024
  13. Apr 11, 2024
  14. Apr 04, 2024
  15. Apr 03, 2024
  16. Mar 29, 2024
Loading