summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/api/applications.rb3
-rw-r--r--lib/api/entities.rb17
-rw-r--r--lib/api/helpers.rb2
-rw-r--r--lib/api/helpers/members_helpers.rb2
-rw-r--r--lib/api/helpers/pagination_strategies.rb2
-rw-r--r--lib/api/members.rb2
-rw-r--r--lib/api/repositories.rb9
7 files changed, 24 insertions, 13 deletions
diff --git a/lib/api/applications.rb b/lib/api/applications.rb
index 4e9843e17e8..70e6b8395d7 100644
--- a/lib/api/applications.rb
+++ b/lib/api/applications.rb
@@ -14,6 +14,9 @@ module API
requires :name, type: String, desc: 'Application name'
requires :redirect_uri, type: String, desc: 'Application redirect URI'
requires :scopes, type: String, desc: 'Application scopes'
+
+ optional :confidential, type: Boolean, default: true,
+ desc: 'Application will be used where the client secret is confidential'
end
post do
application = Doorkeeper::Application.new(declared_params)
diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index 899418831bf..52ff819924b 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -1256,20 +1256,20 @@ module API
end
class Compare < Grape::Entity
- expose :commit, using: Entities::Commit do |compare, options|
- ::Commit.decorate(compare.commits, nil).last
+ expose :commit, using: Entities::Commit do |compare, _|
+ compare.commits.last
end
- expose :commits, using: Entities::Commit do |compare, options|
- ::Commit.decorate(compare.commits, nil)
+ expose :commits, using: Entities::Commit do |compare, _|
+ compare.commits
end
- expose :diffs, using: Entities::Diff do |compare, options|
- compare.diffs(limits: false).to_a
+ expose :diffs, using: Entities::Diff do |compare, _|
+ compare.diffs.diffs.to_a
end
- expose :compare_timeout do |compare, options|
- compare.diffs.overflow?
+ expose :compare_timeout do |compare, _|
+ compare.diffs.diffs.overflow?
end
expose :same, as: :compare_same_ref
@@ -1828,6 +1828,7 @@ module API
expose :uid, as: :application_id
expose :name, as: :application_name
expose :redirect_uri, as: :callback_url
+ expose :confidential
end
# Use with care, this exposes the secret
diff --git a/lib/api/helpers.rb b/lib/api/helpers.rb
index b2f5def4048..aa6071e6099 100644
--- a/lib/api/helpers.rb
+++ b/lib/api/helpers.rb
@@ -316,7 +316,7 @@ module API
def order_options_with_tie_breaker
order_options = { params[:order_by] => params[:sort] }
- order_options['id'] ||= 'desc'
+ order_options['id'] ||= params[:sort] || 'asc'
order_options
end
diff --git a/lib/api/helpers/members_helpers.rb b/lib/api/helpers/members_helpers.rb
index d06c59907b4..5cc435e6801 100644
--- a/lib/api/helpers/members_helpers.rb
+++ b/lib/api/helpers/members_helpers.rb
@@ -46,7 +46,7 @@ module API
end
def present_members(members)
- present members, with: Entities::Member, current_user: current_user
+ present members, with: Entities::Member, current_user: current_user, show_seat_info: params[:show_seat_info]
end
end
end
diff --git a/lib/api/helpers/pagination_strategies.rb b/lib/api/helpers/pagination_strategies.rb
index 5f63635297a..6bebb4bfeac 100644
--- a/lib/api/helpers/pagination_strategies.rb
+++ b/lib/api/helpers/pagination_strategies.rb
@@ -26,7 +26,7 @@ module API
private
def keyset_pagination_enabled?
- params[:pagination] == 'keyset' && Feature.enabled?(:api_keyset_pagination, default_enabled: true)
+ params[:pagination] == 'keyset'
end
end
end
diff --git a/lib/api/members.rb b/lib/api/members.rb
index e4df2f341c6..2e49b4be45c 100644
--- a/lib/api/members.rb
+++ b/lib/api/members.rb
@@ -19,6 +19,7 @@ module API
params do
optional :query, type: String, desc: 'A query string to search for members'
optional :user_ids, type: Array[Integer], desc: 'Array of user ids to look up for membership'
+ optional :show_seat_info, type: Boolean, desc: 'Show seat information for members'
use :optional_filter_params_ee
use :pagination
end
@@ -37,6 +38,7 @@ module API
params do
optional :query, type: String, desc: 'A query string to search for members'
optional :user_ids, type: Array[Integer], desc: 'Array of user ids to look up for membership'
+ optional :show_seat_info, type: Boolean, desc: 'Show seat information for members'
use :pagination
end
diff --git a/lib/api/repositories.rb b/lib/api/repositories.rb
index 4106a2cdf38..00473db1ff1 100644
--- a/lib/api/repositories.rb
+++ b/lib/api/repositories.rb
@@ -103,8 +103,13 @@ module API
optional :straight, type: Boolean, desc: 'Comparison method, `true` for direct comparison between `from` and `to` (`from`..`to`), `false` to compare using merge base (`from`...`to`)', default: false
end
get ':id/repository/compare' do
- compare = Gitlab::Git::Compare.new(user_project.repository.raw_repository, params[:from], params[:to], straight: params[:straight])
- present compare, with: Entities::Compare
+ compare = CompareService.new(user_project, params[:to]).execute(user_project, params[:from], straight: params[:straight])
+
+ if compare
+ present compare, with: Entities::Compare
+ else
+ not_found!("Ref")
+ end
end
desc 'Get repository contributors' do