<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/gitlab/gitlab-ce.git/lib/api, branch gitlab_shell_350</title>
<subtitle>gitlab.com: gitlab-org/gitlab-ce.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/'/>
<entry>
<title>Merge branch 'internal_recovery_api' into 'master'</title>
<updated>2016-09-02T14:20:07+00:00</updated>
<author>
<name>Douwe Maan</name>
<email>douwe@gitlab.com</email>
</author>
<published>2016-09-02T14:20:07+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=0a41b340b4c575712bb3032f3e7636f3d00a8c92'/>
<id>0a41b340b4c575712bb3032f3e7636f3d00a8c92</id>
<content type='text'>

Minor edits to two_factor_recovery_codes API error catching

Minor fixes to the `two_factor_recovery_codes` internal API making the conditionals more sane.  Thanks @DouweM for pointing it out.

See merge request !6000</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>

Minor edits to two_factor_recovery_codes API error catching

Minor fixes to the `two_factor_recovery_codes` internal API making the conditionals more sane.  Thanks @DouweM for pointing it out.

See merge request !6000</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'issue_19734' into 'master'</title>
<updated>2016-09-01T15:28:14+00:00</updated>
<author>
<name>Douwe Maan</name>
<email>douwe@gitlab.com</email>
</author>
<published>2016-09-01T15:28:14+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=d308a3f4335845d88cbb4fbfbea9d72fa2473769'/>
<id>d308a3f4335845d88cbb4fbfbea9d72fa2473769</id>
<content type='text'>

Project tools visibility level

## part of #19734   

![project_features_access_level](/uploads/81ec7185d4e61d7578652020209af925/project_features_access_level.png)

## Does this MR meet the acceptance criteria?

- [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added
- [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [x] API support added
- Tests
  - [x] Added for this feature/bug
  - [x] All builds are passing
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)

See merge request !5606</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>

Project tools visibility level

## part of #19734   

![project_features_access_level](/uploads/81ec7185d4e61d7578652020209af925/project_features_access_level.png)

## Does this MR meet the acceptance criteria?

- [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added
- [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [x] API support added
- Tests
  - [x] Added for this feature/bug
  - [x] All builds are passing
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)

See merge request !5606</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'merge-request-sha-info' into 'master'</title>
<updated>2016-09-01T14:49:36+00:00</updated>
<author>
<name>Douwe Maan</name>
<email>douwe@gitlab.com</email>
</author>
<published>2016-09-01T14:49:36+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=ae439a62cca06fdc719d53dd32e7235cf219c3c7'/>
<id>ae439a62cca06fdc719d53dd32e7235cf219c3c7</id>
<content type='text'>

Merge request sha info

## What does this MR do?

Exposes `sha` and `merge_commit_sha` items in `MergeRequest` API endpoint data.

## Are there points in the code the reviewer needs to double check?

No.

## Why was this MR needed?

It's useful information.

## What are the relevant issue numbers?

Closes #20456.

## Screenshots (if relevant)

N/A

## Does this MR meet the acceptance criteria?

- [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added
- [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [x] API support added
- Tests
  - [x] Added for this feature/bug
  - [x] All builds are passing
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)

See merge request !5966</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>

Merge request sha info

## What does this MR do?

Exposes `sha` and `merge_commit_sha` items in `MergeRequest` API endpoint data.

## Are there points in the code the reviewer needs to double check?

No.

## Why was this MR needed?

It's useful information.

## What are the relevant issue numbers?

Closes #20456.

## Screenshots (if relevant)

N/A

## Does this MR meet the acceptance criteria?

- [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added
- [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [x] API support added
- Tests
  - [x] Added for this feature/bug
  - [x] All builds are passing
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)

See merge request !5966</pre>
</div>
</content>
</entry>
<entry>
<title>Project tools visibility level</title>
<updated>2016-09-01T14:47:59+00:00</updated>
<author>
<name>Felipe Artur</name>
<email>felipefac@gmail.com</email>
</author>
<published>2016-08-01T22:31:21+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=892dea67717c0efbd6a28f7639f34535ec0a8747'/>
<id>892dea67717c0efbd6a28f7639f34535ec0a8747</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Minor edits to two_factor_recovery_codes API error catching</title>
<updated>2016-09-01T00:41:55+00:00</updated>
<author>
<name>Drew Blessing</name>
<email>drew@gitlab.com</email>
</author>
<published>2016-08-25T00:58:05+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=8b6154c145b22d34146fc08c49d2e2d1569d44a0'/>
<id>8b6154c145b22d34146fc08c49d2e2d1569d44a0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'refactor/add-policies' into 'master'</title>
<updated>2016-08-31T20:53:40+00:00</updated>
<author>
<name>Robert Speicher</name>
<email>robert@gitlab.com</email>
</author>
<published>2016-08-31T20:53:40+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=e71cd7a300017cf85e16de3b1c68fdb25c3a4b4d'/>
<id>e71cd7a300017cf85e16de3b1c68fdb25c3a4b4d</id>
<content type='text'>

Refactor ability.rb into Policies

## What does this MR do?
Factors out `ability.rb` into a new abstraction - the "policy" (stored in `app/policies`). A policy is a class named `#{class_name}Policy` (looked up automatically as needed) that implements `rules` as follows:

``` ruby
class ThingPolicy &lt; BasePolicy
  def rules
    @user # this is a user to determine abilities for, optionally nil in the anonymous case
    @subject # this is the subject of the ability, guaranteed to be an instance of `Thing`
    can! :some_ability # grant the :some_ability permission
    cannot! :some_ability # ensure that :some_ability is not allowed. this overrides any `can!` that is called before or after
    delegate! @subject.other_thing # merge the abilities (can!) and prohibitions (cannot!) from `@subject.other_thing`
    can? :some_ability # test whether, so far, :some_ability is allowed
  end

  def anonymous_rules
    # optional. if not implemented `rules` is called where `@user` is nil. otherwise this method is called when `@user` is nil.
  end
end
```

See merge request !5796</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>

Refactor ability.rb into Policies

## What does this MR do?
Factors out `ability.rb` into a new abstraction - the "policy" (stored in `app/policies`). A policy is a class named `#{class_name}Policy` (looked up automatically as needed) that implements `rules` as follows:

``` ruby
class ThingPolicy &lt; BasePolicy
  def rules
    @user # this is a user to determine abilities for, optionally nil in the anonymous case
    @subject # this is the subject of the ability, guaranteed to be an instance of `Thing`
    can! :some_ability # grant the :some_ability permission
    cannot! :some_ability # ensure that :some_ability is not allowed. this overrides any `can!` that is called before or after
    delegate! @subject.other_thing # merge the abilities (can!) and prohibitions (cannot!) from `@subject.other_thing`
    can? :some_ability # test whether, so far, :some_ability is allowed
  end

  def anonymous_rules
    # optional. if not implemented `rules` is called where `@user` is nil. otherwise this method is called when `@user` is nil.
  end
end
```

See merge request !5796</pre>
</div>
</content>
</entry>
<entry>
<title>Add BroadcastMessage API implementation</title>
<updated>2016-08-31T20:03:18+00:00</updated>
<author>
<name>Robert Speicher</name>
<email>rspeicher@gmail.com</email>
</author>
<published>2016-08-25T23:34:01+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=6a58af3a4a1c3122d57238505898f61c40bf7b54'/>
<id>6a58af3a4a1c3122d57238505898f61c40bf7b54</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'api-confidential-issues' into 'master'</title>
<updated>2016-08-31T15:51:27+00:00</updated>
<author>
<name>Robert Speicher</name>
<email>robert@gitlab.com</email>
</author>
<published>2016-08-31T15:51:27+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=1ba5988afba568ae9493580de87fad46fcc86f41'/>
<id>1ba5988afba568ae9493580de87fad46fcc86f41</id>
<content type='text'>

API: Expose issue confidentiality flag.

## What does this MR do?

This MR adds support for confidential issues the the API. The property as exposed and users can create or update confidential issues.

## What are the relevant issue numbers?

Closes #17199 

See merge request !5384</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>

API: Expose issue confidentiality flag.

## What does this MR do?

This MR adds support for confidential issues the the API. The property as exposed and users can create or update confidential issues.

## What are the relevant issue numbers?

Closes #17199 

See merge request !5384</pre>
</div>
</content>
</entry>
<entry>
<title>entities: expose {,merge_commit_}sha in MergeRequest</title>
<updated>2016-08-31T14:50:54+00:00</updated>
<author>
<name>Ben Boeckel</name>
<email>ben.boeckel@kitware.com</email>
</author>
<published>2016-08-23T17:29:59+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=9c3db830c033750c19197fe6a3f15a7705e2aa3b'/>
<id>9c3db830c033750c19197fe6a3f15a7705e2aa3b</id>
<content type='text'>
Fixes #20456.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes #20456.
</pre>
</div>
</content>
</entry>
<entry>
<title>API: Expose issue#confidential</title>
<updated>2016-08-31T07:20:04+00:00</updated>
<author>
<name>Robert Schilling</name>
<email>rschilling@student.tugraz.at</email>
</author>
<published>2016-07-15T14:21:53+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=036cc8c27e8340a3eed63444bd3f42f86037f350'/>
<id>036cc8c27e8340a3eed63444bd3f42f86037f350</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
