7ec8af5017
Enables frozen string for the following: * lib/gitlab/hook_data/**/*.rb * lib/gitlab/i18n/**/*.rb * lib/gitlab/import/**/*.rb * lib/gitlab/import_export/**/*.rb * lib/gitlab/kubernetes/**/*.rb * lib/gitlab/legacy_github_import/**/*.rb * lib/gitlab/manifest_import/**/*.rb * lib/gitlab/metrics/**/*.rb * lib/gitlab/middleware/**/*.rb Partially addresses gitlab-org/gitlab-ce#47424.
27 lines
593 B
Ruby
27 lines
593 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Gitlab
|
|
module ImportExport
|
|
class HashUtil
|
|
def self.deep_symbolize_array!(array)
|
|
return if array.blank?
|
|
|
|
array.map! do |hash|
|
|
hash.deep_symbolize_keys!
|
|
|
|
yield(hash) if block_given?
|
|
|
|
hash
|
|
end
|
|
end
|
|
|
|
def self.deep_symbolize_array_with_date!(array)
|
|
self.deep_symbolize_array!(array) do |hash|
|
|
hash.select { |k, _v| k.to_s.end_with?('_date') }.each do |key, value|
|
|
hash[key] = Time.zone.parse(value)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|