• Yorick Peterse's avatar
    Smarter flushing of branch statistics caches · 2ce0d063
    Yorick Peterse authored
    Instead of flushing the behind/ahead counts for all branches upon every
    push we now only flush the cache of branches that actually need to have
    these statistics recalculated. There are now basically 2 scenarios and
    their effects:
    
    1. A user pushes a commit to the default branch, this results in the
       cache being flushed for all branches.
    2. A user pushes to a non default branch, this results in _only_ the
       cache for that branch being flushed.
    
    The existing code (Repository#expire_cache) remains backwards compatible
    with the previous behaviour, the new behaviour is only applied when a
    branch name is passed as an argument. This ensures that when for example
    a project is deleted the cache for all branches is flushed.
    2ce0d063
repository.rb 17.1 KB