<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/gitlab/gitlab-ce.git, branch rs-sprite-task</title>
<subtitle>gitlab.com: gitlab-org/gitlab-ce.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/'/>
<entry>
<title>Add a `gemojione:resprite` Rake task</title>
<updated>2016-03-08T21:16:52+00:00</updated>
<author>
<name>Robert Speicher</name>
<email>rspeicher@gmail.com</email>
</author>
<published>2016-03-08T21:13:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=0aece4bcf34dedc56ea3d2b092cff6f0dc62b622'/>
<id>0aece4bcf34dedc56ea3d2b092cff6f0dc62b622</id>
<content type='text'>
This task will generate a standard and Retina sprite of all of the
current Gemojione Emojis, with the accompanying SCSS map.

It will not appear in `rake -T` output, and the dependent gems are not
included in the Gemfile by default, because this task will only be
needed occasionally.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This task will generate a standard and Retina sprite of all of the
current Gemojione Emojis, with the accompanying SCSS map.

It will not appear in `rake -T` output, and the dependent gems are not
included in the Gemfile by default, because this task will only be
needed occasionally.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'branch-tag-count-methods' into 'master'</title>
<updated>2016-03-08T20:11:40+00:00</updated>
<author>
<name>Robert Speicher</name>
<email>robert@gitlab.com</email>
</author>
<published>2016-03-08T20:11:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=e8cd04e831a2db36c4029f2c193fc40d2568c79e'/>
<id>e8cd04e831a2db36c4029f2c193fc40d2568c79e</id>
<content type='text'>

Use dedicated methods for counting branches and tags

This started out as "Lets add two methods to count and cache some data" and ended up in a clean-up/fix of some existing code. The two problems were:

1. Different code was used for adding/removing branches/tags via Git and the UI
2. The code used for the UI didn't have any RSpec tests, and I couldn't find any Spinach tests either (though grepping for Spinach stuff is hard)

This MR addresses the following:

1. `Repository#branch_count` and `Repository#tag_count` are used to count and cache the number of branches/tags, these methods are then used on the branches/commits/tags pages.
2. `Repository#add_tag`, `Repository#add_branch`, `Repository#rm_tag` and `Repository#rm_branch` now all the appropriate before/after hook methods instead of calling a random single cache expiration method. This ensures caches are properly flushed when adding/removing tags/branches via the UI.
3. RSpec tests were added for the above methods.

This fixes gitlab-org/gitlab-ce#13459

See merge request !3128</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>

Use dedicated methods for counting branches and tags

This started out as "Lets add two methods to count and cache some data" and ended up in a clean-up/fix of some existing code. The two problems were:

1. Different code was used for adding/removing branches/tags via Git and the UI
2. The code used for the UI didn't have any RSpec tests, and I couldn't find any Spinach tests either (though grepping for Spinach stuff is hard)

This MR addresses the following:

1. `Repository#branch_count` and `Repository#tag_count` are used to count and cache the number of branches/tags, these methods are then used on the branches/commits/tags pages.
2. `Repository#add_tag`, `Repository#add_branch`, `Repository#rm_tag` and `Repository#rm_branch` now all the appropriate before/after hook methods instead of calling a random single cache expiration method. This ensures caches are properly flushed when adding/removing tags/branches via the UI.
3. RSpec tests were added for the above methods.

This fixes gitlab-org/gitlab-ce#13459

See merge request !3128</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'evuez/gitlab-ce-add-info-user-api' into 'master'</title>
<updated>2016-03-08T17:30:10+00:00</updated>
<author>
<name>Robert Speicher</name>
<email>robert@gitlab.com</email>
</author>
<published>2016-03-08T17:30:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=fe9a445faaaa5a90c9308b01877aadc1984a111b'/>
<id>fe9a445faaaa5a90c9308b01877aadc1984a111b</id>
<content type='text'>

Expose User#last_sign_in_at and User#confirmed_at for admins

Closes #840

See merge request !3090</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>

Expose User#last_sign_in_at and User#confirmed_at for admins

Closes #840

See merge request !3090</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'improve/3102-memoize-group-instance-variable-in-admin-groups-controller' into 'master'</title>
<updated>2016-03-08T17:27:51+00:00</updated>
<author>
<name>Robert Speicher</name>
<email>robert@gitlab.com</email>
</author>
<published>2016-03-08T17:27:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=24663e80953ce48db600c17aa7baa91d8e38680c'/>
<id>24663e80953ce48db600c17aa7baa91d8e38680c</id>
<content type='text'>

Remove instance variable `@group` multiple assignment

See merge request !3127</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>

Remove instance variable `@group` multiple assignment

See merge request !3127</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'remove-duplicate-cache_store-in-test-config' into 'master'</title>
<updated>2016-03-08T17:26:47+00:00</updated>
<author>
<name>Robert Speicher</name>
<email>robert@gitlab.com</email>
</author>
<published>2016-03-08T17:26:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=c3eb2458749952e6cca4d1a1a49351f98f7feeaf'/>
<id>c3eb2458749952e6cca4d1a1a49351f98f7feeaf</id>
<content type='text'>

Remove duplicate 'cache_store' configuration in test environment

[ci skip]

See merge request !3061</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>

Remove duplicate 'cache_store' configuration in test environment

[ci skip]

See merge request !3061</pre>
</div>
</content>
</entry>
<entry>
<title>Call after_create_branch in Repository#add_branch</title>
<updated>2016-03-08T17:19:40+00:00</updated>
<author>
<name>Yorick Peterse</name>
<email>yorickpeterse@gmail.com</email>
</author>
<published>2016-03-08T17:04:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=590e1b4b21f2a39bf573800392b04859b563f3e5'/>
<id>590e1b4b21f2a39bf573800392b04859b563f3e5</id>
<content type='text'>
This ensures the right caches are flushed when adding a branch via the
UI, instead of only flushing this one random cache.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This ensures the right caches are flushed when adding a branch via the
UI, instead of only flushing this one random cache.
</pre>
</div>
</content>
</entry>
<entry>
<title>Call the right hooks in Repository#add_tag</title>
<updated>2016-03-08T17:19:40+00:00</updated>
<author>
<name>Yorick Peterse</name>
<email>yorickpeterse@gmail.com</email>
</author>
<published>2016-03-08T17:01:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=4ec035b48869d8364f6ae8cb14c8486075786757'/>
<id>4ec035b48869d8364f6ae8cb14c8486075786757</id>
<content type='text'>
This ensures Repository#add_tag calls Repository#before_push_tag instead
of just 1 random cache expiration method.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This ensures Repository#add_tag calls Repository#before_push_tag instead
of just 1 random cache expiration method.
</pre>
</div>
</content>
</entry>
<entry>
<title>Added specs for Repository#rm_tag</title>
<updated>2016-03-08T17:19:40+00:00</updated>
<author>
<name>Yorick Peterse</name>
<email>yorickpeterse@gmail.com</email>
</author>
<published>2016-03-08T16:53:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=6857b92fabe511c4ed32310ad0f6bf43c534ffab'/>
<id>6857b92fabe511c4ed32310ad0f6bf43c534ffab</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Call the right hooks when removing branches</title>
<updated>2016-03-08T17:19:40+00:00</updated>
<author>
<name>Yorick Peterse</name>
<email>yorickpeterse@gmail.com</email>
</author>
<published>2016-03-08T16:53:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=177025b5dde5ca34b05744f000a1eee64501863a'/>
<id>177025b5dde5ca34b05744f000a1eee64501863a</id>
<content type='text'>
This ensures that Repository#rm_branch calls
before_remove_branch/after_remove_branch instead of just 1 random cache
expiration method.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This ensures that Repository#rm_branch calls
before_remove_branch/after_remove_branch instead of just 1 random cache
expiration method.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cache &amp; flush tag/branch counts</title>
<updated>2016-03-08T17:19:40+00:00</updated>
<author>
<name>Yorick Peterse</name>
<email>yorickpeterse@gmail.com</email>
</author>
<published>2016-03-08T16:38:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=cb5a5ba09588af866aed595d960755bf4ced4483'/>
<id>cb5a5ba09588af866aed595d960755bf4ced4483</id>
<content type='text'>
The methods used for this are Repository#tag_count and
Repository#branch_count which cache their output in Redis as well as
memoizing it in an instance variable. Both methods have a corresponding
methods/hooks to flush the caches at the right time.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The methods used for this are Repository#tag_count and
Repository#branch_count which cache their output in Redis as well as
memoizing it in an instance variable. Both methods have a corresponding
methods/hooks to flush the caches at the right time.
</pre>
</div>
</content>
</entry>
</feed>
