Skip to content
Snippets Groups Projects
  1. Apr 05, 2020
  2. Mar 30, 2020
  3. Mar 27, 2020
  4. Apr 05, 2020
    • Georges Racinet's avatar
      pull-force-topic: avoid divergence in overlapping pulls · 359d9bf9
      Georges Racinet authored
      As reported in heptapod#226, repeatedly importing the same
      changeset rewrites it several time, which is the very
      definition of content divergence.
      
      With these changes, we avoid re-pulling a changeset that's
      already present, yet obsolete. In the stacked PR use-case,
      the end result is that the second topic is orphan, but that's
      a much more frequent and easier to solve condition.
      
      We actually already had something for a similar case in the
      form of `non_obsolete_revs()`, but at the time the scenario of
      stacked PRs had been thought of only a posteriori, at the
      time of writing the docstring
      for the corresponding `test_already_obsolete()`. We could
      have thinked a bit more here.
      
      In truth `non_obsolete_revs()` is probably useless with our
      solution which is to take obsolete changesets into account in
      the initial assessment of the pull to be made, and that
      reflects with it not filtering anything in our existing tests.
      Since we are on the eve of a major release, we still keep it
      out of caution, only adding a direct test to restore coverage
      359d9bf9
  5. Mar 30, 2020
  6. Mar 27, 2020
  7. Mar 16, 2020
  8. Mar 26, 2020
  9. Mar 25, 2020
  10. Mar 18, 2020
  11. Mar 17, 2020
  12. Mar 16, 2020
  13. Mar 15, 2020
  14. Mar 14, 2020
  15. Mar 13, 2020
  16. Mar 12, 2020
    • Georges Racinet's avatar
      gitlab hooks: stop returning None for no changes · 506e8eea
      Georges Racinet authored
      This is more robust.
      
      It was originally intended as a way for callers to check
      the condition, but it makes something to check systematically
      (exception in string concatenation downstream if forgotten)
      and it's better if callers check before hand (worst case they
      will emit empty lines in the likes of `ui.status` if forgotten)
      506e8eea
  17. Mar 13, 2020
  18. Mar 12, 2020
    • Georges Racinet's avatar
      git: restoring protection against prune of the default branch · 16b10f95
      Georges Racinet authored
      GitLab's pre-receive hook would refuse to prune it, voiding
      the whole transaction. It's better if we ignore it
      (been in the functional tests for a while, too)
      16b10f95
    • Georges Racinet's avatar
      git: making mandatory GitLab hooks raise Abort · 5841c63f
      Georges Racinet authored
      Typically, that would be the pre-receive hook.
      The Heptapod fork of hg-git used to raise RuntimeError
      and catch it from the caller (here that would be
      `heptapod_apply_changes`)
      
      We're starting over a bit
      tighter, meaning that only those changes that would
      be accepted by GitLab can enter Mercurial.
      
      Since on the GitLab side, we have a rule that Mercurial can
      force on any branch, this is probably acceptable, avoiding
      locking the Maintainers away.
      5841c63f
Loading