-
Georges Racinet authored
This result passed all RSpec and functional tests on my dev workstation. Here follow the most notable changes that will need further attention. The upstream backup code has been entirely refactored, with a new separation of concerns that has the Repository class take care of the actual repo bundle production and restoration. This is a breeze for Heptapod and its hierarchy of repository classes. Not only is our specific code clearly delimited and short (45 lines, including comments), but it is also more future proof because we don't rely on spaggheti-like conditionals any more. For instance, the day native projects don't include a Git repository any more, we can simply provide appropriate methods in HGitalyRepository. First shot implementation passed the functional tests right away. It will need RSpec tests, though, which are by the way now much easier to write as well. There's been refactoring around Wikis, probably related to the introduction of the Group Wikis. It was enough to pass the tests to just delegate the two Heptapod-specific methods needed for the raw repository instantiation, but this needs more scrutinity, and probably Mercurial options for Group Wikis have to be considered.
3cc386756f43