Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-06-20 13:43:29 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-06-20 13:43:29 +0300
commit3b1af5cc7ed2666ff18b718ce5d30fa5a2756674 (patch)
tree3bc4a40e0ee51ec27eabf917c537033c0c5b14d4 /app/serializers
parent9bba14be3f2c211bf79e15769cd9b77bc73a13bc (diff)
Add latest changes from gitlab-org/gitlab@16-1-stable-eev16.1.0-rc42
Diffstat (limited to 'app/serializers')
-rw-r--r--app/serializers/admin/abuse_report_details_entity.rb21
-rw-r--r--app/serializers/environment_serializer.rb2
-rw-r--r--app/serializers/integrations/harbor_serializers/repository_entity.rb4
-rw-r--r--app/serializers/note_entity.rb2
-rw-r--r--app/serializers/profile/event_entity.rb50
5 files changed, 36 insertions, 43 deletions
diff --git a/app/serializers/admin/abuse_report_details_entity.rb b/app/serializers/admin/abuse_report_details_entity.rb
index c0394eb38c5..f0e84fc44d2 100644
--- a/app/serializers/admin/abuse_report_details_entity.rb
+++ b/app/serializers/admin/abuse_report_details_entity.rb
@@ -71,6 +71,7 @@ module Admin
end
expose :report do
+ expose :status
expose :message
expose :created_at, as: :reported_at
expose :category
@@ -78,27 +79,9 @@ module Admin
expose :reported_content, as: :content
expose :reported_from_url, as: :url
expose :screenshot_path, as: :screenshot
- end
-
- expose :actions, if: ->(report) { report.user } do
- expose :user_blocked do |report|
- report.user.blocked?
- end
- expose :block_user_path do |report|
- block_admin_user_path(report.user)
- end
- expose :remove_report_path do |report|
+ expose :update_path do |report|
admin_abuse_report_path(report)
end
- expose :remove_user_and_report_path do |report|
- admin_abuse_report_path(report, remove_user: true)
- end
- expose :reported_user do |report|
- UserEntity.represent(report.user, only: [:name, :created_at])
- end
- expose :redirect_path do |_|
- admin_abuse_reports_path
- end
end
end
end
diff --git a/app/serializers/environment_serializer.rb b/app/serializers/environment_serializer.rb
index 21ffdce155f..d7820dff6ef 100644
--- a/app/serializers/environment_serializer.rb
+++ b/app/serializers/environment_serializer.rb
@@ -83,7 +83,7 @@ class EnvironmentSerializer < BaseSerializer
def deployment_associations
{
user: [],
- cluster: [],
+ deployment_cluster: { cluster: [] },
project: {
route: [],
namespace: :route
diff --git a/app/serializers/integrations/harbor_serializers/repository_entity.rb b/app/serializers/integrations/harbor_serializers/repository_entity.rb
index f03465fe8e2..a6366ebfb36 100644
--- a/app/serializers/integrations/harbor_serializers/repository_entity.rb
+++ b/app/serializers/integrations/harbor_serializers/repository_entity.rb
@@ -47,8 +47,8 @@ module Integrations
private
def validate_path(path)
- Gitlab::Utils.check_path_traversal!(path)
- rescue ::Gitlab::Utils::PathTraversalAttackError
+ Gitlab::PathTraversal.check_path_traversal!(path)
+ rescue ::Gitlab::PathTraversal::PathTraversalAttackError
Gitlab::AppLogger.error("Path traversal attack detected #{path}")
''
end
diff --git a/app/serializers/note_entity.rb b/app/serializers/note_entity.rb
index 6058c89d347..26dc748ad51 100644
--- a/app/serializers/note_entity.rb
+++ b/app/serializers/note_entity.rb
@@ -109,8 +109,6 @@ class NoteEntity < API::Entities::Note
end
def external_author
- return unless Feature.enabled?(:external_note_author_service_desk)
-
return unless object.note_metadata&.external_author
if can?(current_user, :read_external_emails, object.project)
diff --git a/app/serializers/profile/event_entity.rb b/app/serializers/profile/event_entity.rb
index fe90265c888..b769a80ef58 100644
--- a/app/serializers/profile/event_entity.rb
+++ b/app/serializers/profile/event_entity.rb
@@ -12,10 +12,12 @@ module Profile
expose(:action, if: ->(event) { include_private_event?(event) }) { |event| event_action(event) }
expose :ref, if: ->(event) { event.visible_to_user?(current_user) && event.push_action? } do
- expose(:type) { |event| event.ref_type } # rubocop:disable Style/SymbolProc
- expose(:count) { |event| event.ref_count } # rubocop:disable Style/SymbolProc
- expose(:name) { |event| event.ref_name } # rubocop:disable Style/SymbolProc
+ expose(:ref_type, as: :type)
+ expose(:ref_count, as: :count)
+ expose(:ref_name, as: :name)
expose(:path) { |event| ref_path(event) }
+ expose(:new_ref?, as: :is_new)
+ expose(:rm_ref?, as: :is_removed)
end
expose :commit, if: ->(event) { event.visible_to_user?(current_user) && event.push_action? } do
@@ -34,27 +36,35 @@ module Profile
end
end
- expose :author, if: ->(event) { include_private_event?(event) } do
- expose(:id) { |event| event.author.id }
- expose(:name) { |event| event.author.name }
- expose(:path) { |event| event.author.username }
- end
+ expose :author, if: ->(event) { include_private_event?(event) }, using: ::API::Entities::UserBasic
- expose :target, if: ->(event) { event.visible_to_user?(current_user) } do
- expose :target_type
+ expose :noteable, if: ->(event) { event.visible_to_user?(current_user) && event.note? } do
+ expose(:type) { |event| event.target.noteable_type }
+ expose(:reference_link_text) { |event| event.target.noteable.reference_link_text }
+ expose(:web_url) { |event| Gitlab::UrlBuilder.build(event.target.noteable) }
+ expose(:first_line_in_markdown) do |event|
+ first_line_in_markdown(event.target, :note, 150, project: event.project)
+ end
+ end
- expose(:title) { |event| event.target_title } # rubocop:disable Style/SymbolProc
- expose :target_url, if: ->(event) { event.target } do |event|
- Gitlab::UrlBuilder.build(event.target, only_path: true)
+ expose :target, if: ->(event) { event.target && event.visible_to_user?(current_user) } do
+ expose(:id) { |event| event.target.id }
+ expose(:target_type, as: :type)
+ expose(:target_title, as: :title)
+ expose(:issue_type, if: ->(event) { event.work_item? }) do |event|
+ event.target.issue_type
end
- expose :reference_link_text, if: ->(event) { event.target&.respond_to?(:reference_link_text) } do |event|
+
+ expose :reference_link_text, if: ->(event) { event.target.respond_to?(:reference_link_text) } do |event|
event.target.reference_link_text
end
- expose :first_line_in_markdown, if: ->(event) { event.note? && event.target && event.project } do |event|
- first_line_in_markdown(event.target, :note, 150, project: event.project)
- end
- expose :attachment, if: ->(event) { event.note? && event.target&.attachment } do
- expose(:url) { |event| event.target.attachment.url }
+
+ expose :web_url do |event|
+ if event.wiki_page?
+ event_wiki_page_target_url(event)
+ else
+ Gitlab::UrlBuilder.build(event.target)
+ end
end
end
@@ -62,6 +72,8 @@ module Profile
expose(:type) { |event| resource_parent_type(event) }
expose(:full_name) { |event| event.resource_parent&.full_name }
expose(:full_path) { |event| event.resource_parent&.full_path }
+ expose(:web_url) { |event| event.resource_parent&.web_url }
+ expose(:avatar_url) { |event| event.resource_parent&.avatar_url }
end
private