Merge branch 'master' of gitlab.com:gitlab-org/gitlab-ce

This commit is contained in:
Stan Hu 2015-08-18 06:46:44 -07:00
commit 2b127c3fd2
4 changed files with 21 additions and 1 deletions

View file

@ -2,7 +2,9 @@ Please view this file on the master branch, on stable branches it's out of date.
v 7.14.0 (unreleased)
- Update default robots.txt rules to disallow crawling of irrelevant pages (Ben Bodenmiller)
- Fix redirection after sign in when using auto_sign_in_with_provider
- Upgrade gitlab_git to 7.2.14 to ignore CRLFs in .gitmodules (Stan Hu)
- Clear cache to prevent listing deleted branches after MR removes source branch (Stan Hu)
- Provide more feedback what went wrong if HipChat service failed test (Stan Hu)
- Fix bug where backslashes in inline diffs could be dropped (Stan Hu)
- Disable turbolinks when linking to Bitbucket import status (Stan Hu)
@ -68,7 +70,6 @@ v 7.13.5
v 7.13.4
- Allow users to send abuse reports
- Fix redirection after sign in when using auto_sign_in_with_provider
v 7.13.3
- Fix bug causing Bitbucket importer to crash when OAuth application had been removed.

View file

@ -148,6 +148,10 @@ class Repository
@lookup_cache ||= {}
end
def expire_branch_names
cache.expire(:branch_names)
end
def method_missing(m, *args, &block)
if m == :lookup && !block_given?
lookup_cache[m] ||= {}

View file

@ -36,6 +36,7 @@ module Gitlab
if merge_request.remove_source_branch?
# will raise CommandFailed when push fails
merge_repo.git.push(default_options, :origin, ":#{merge_request.source_branch}")
merge_request.source_project.repository.expire_branch_names
end
# merge, push and branch removal successful
true

View file

@ -101,4 +101,18 @@ describe 'Gitlab::Satellite::MergeAction' do
end
end
end
describe '#merge!' do
let(:merge_request) { create(:merge_request, source_project: project, target_project: project, source_branch: "markdown", should_remove_source_branch: true) }
let(:merge_action) { Gitlab::Satellite::MergeAction.new(merge_request.author, merge_request) }
it 'clears cache of source repo after removing source branch' do
project.repository.expire_branch_names
expect(project.repository.branch_names).to include('markdown')
merge_action.merge!
expect(project.repository.branch_names).not_to include('markdown')
end
end
end