Add latest changes from gitlab-org/gitlab@master

This commit is contained in:
GitLab Bot 2020-07-23 15:09:28 +00:00
parent d9b0b3243e
commit 14fb5a9222
1263 changed files with 1960 additions and 1446 deletions

View file

@ -1 +1 @@
1b06a8764c22fc3960271b02470317077f284508
67e7bb7ab1a20fb5a3d49329cf99dc6f1e1ac17e

View file

@ -242,7 +242,7 @@ export default {
<gl-form-group
:label="__('Type')"
label-for="ci-variable-type"
class="w-50 append-right-15"
class="w-50 gl-mr-5"
:class="{ 'w-100': isGroup }"
>
<gl-form-select id="ci-variable-type" v-model="variable_type" :options="typeOptions" />

View file

@ -1,5 +1,6 @@
<script>
import { GlLoadingIcon, GlTable, GlAlert } from '@gitlab/ui';
import TimeAgoTooltip from '~/vue_shared/components/time_ago_tooltip.vue';
import { s__ } from '~/locale';
import getIncidents from '../graphql/queries/get_incidents.query.graphql';
import { I18N } from '../constants';
@ -36,6 +37,7 @@ export default {
GlLoadingIcon,
GlTable,
GlAlert,
TimeAgoTooltip,
},
inject: ['projectPath'],
apollo: {
@ -108,7 +110,7 @@ export default {
</template>
<template #cell(createdAt)="{ item }">
{{ item.createdAt }}
<time-ago-tooltip :time="item.createdAt" />
</template>
<template #cell(assignees)="{ item }">

View file

@ -95,7 +95,7 @@ export default {
},
cancelButtonHref() {
if (this.newSnippet) {
return this.projectPath ? `/${this.projectPath}/snippets` : `/snippets`;
return this.projectPath ? `/${this.projectPath}/-/snippets` : `/-/snippets`;
}
return this.snippet.webUrl;
},

View file

@ -91,8 +91,8 @@ export default {
condition: this.canCreateSnippet,
text: __('New snippet'),
href: this.snippet.project
? `${this.snippet.project.webUrl}/snippets/new`
: '/snippets/new',
? `${this.snippet.project.webUrl}/-/snippets/new`
: '/-/snippets/new',
variant: 'success',
category: 'secondary',
cssClass: 'ml-2',
@ -130,7 +130,9 @@ export default {
},
methods: {
redirectToSnippets() {
window.location.pathname = `${this.snippet.project?.fullPath || 'dashboard'}/snippets`;
window.location.pathname = this.snippet.project
? `${this.snippet.project.fullPath}/-/snippets`
: 'dashboard/snippets';
},
closeDeleteModal() {
this.$refs.deleteModal.hide();

View file

@ -84,9 +84,6 @@ export default {
hasCommitInfo() {
return this.pipeline.commit && Object.keys(this.pipeline.commit).length > 0;
},
isTriggeredByMergeRequest() {
return Boolean(this.pipeline.merge_request);
},
isMergeRequestPipeline() {
return Boolean(this.pipeline.flags && this.pipeline.flags.merge_request_pipeline);
},

View file

@ -75,7 +75,7 @@ export default {
<div class="gl-text-gray-700">
<div v-if="user.bio" class="gl-display-flex gl-mb-2">
<icon name="profile" class="gl-text-gray-600 gl-flex-shrink-0" />
<span ref="bio" class="ml-1" v-html="user.bioHtml"></span>
<span ref="bio" class="gl-ml-2" v-html="user.bioHtml"></span>
</div>
<div v-if="user.workInformation" class="gl-display-flex gl-mb-2">
<icon name="work" class="gl-text-gray-600 gl-flex-shrink-0" />

View file

@ -402,7 +402,6 @@ img.emoji {
.prepend-left-15 { margin-left: 15px; }
.prepend-left-20 { margin-left: 20px; }
.prepend-left-64 { margin-left: 64px; }
.append-right-15 { margin-right: 15px; }
.append-right-20 { margin-right: 20px; }
.append-bottom-10 { margin-bottom: 10px; }
.append-bottom-20 { margin-bottom: 20px; }

View file

@ -44,10 +44,6 @@
.btn-default {
color: $gl-text-color-secondary;
}
.fa-pause {
font-size: 11px;
}
}
@include media-breakpoint-down(md) {

View file

@ -17,12 +17,15 @@ module Types
markdown_field :title_html, null: true
field :description, type: GraphQL::STRING_TYPE, null: true,
description: 'Description of the commit message'
markdown_field :description_html, null: true
field :message, type: GraphQL::STRING_TYPE, null: true,
description: 'Raw commit message'
field :authored_date, type: Types::TimeType, null: true,
description: 'Timestamp of when the commit was authored'
field :web_url, type: GraphQL::STRING_TYPE, null: false,
description: 'Web URL of the commit'
field :web_path, type: GraphQL::STRING_TYPE, null: false,
description: 'Web path of the commit'
field :signature_html, type: GraphQL::STRING_TYPE, null: true, calls_gitaly: true,
description: 'Rendered HTML of the commit signature'
field :author_name, type: GraphQL::STRING_TYPE, null: true,

View file

@ -12,6 +12,8 @@ module Types
field :web_url, GraphQL::STRING_TYPE, null: true,
description: 'Web URL of the blob'
field :web_path, GraphQL::STRING_TYPE, null: true,
description: 'Web path of the blob'
field :lfs_oid, GraphQL::STRING_TYPE, null: true,
description: 'LFS ID of the blob',
resolve: -> (blob, args, ctx) do

View file

@ -13,6 +13,8 @@ module Types
field :web_url, GraphQL::STRING_TYPE, null: true,
description: 'Web URL for the tree entry (directory)'
field :web_path, GraphQL::STRING_TYPE, null: true,
description: 'Web path for the tree entry (directory)'
end
# rubocop: enable Graphql/AuthorizeTypes
end

View file

@ -22,6 +22,8 @@ module Types
description: "URL of the user's avatar"
field :web_url, GraphQL::STRING_TYPE, null: false,
description: 'Web URL of the user'
field :web_path, GraphQL::STRING_TYPE, null: false,
description: 'Web path of the user'
field :todos, Types::TodoType.connection_type, null: false,
resolver: Resolvers::TodoResolver,
description: 'Todos of the user'

View file

@ -38,7 +38,7 @@ module Avatarable
class_methods do
def bot_avatar(image:)
Rails.root.join('app', 'assets', 'images', 'bot_avatars', image).open
Rails.root.join('lib', 'assets', 'images', 'bot_avatars', image).open
end
end

View file

@ -18,6 +18,10 @@ class BlobPresenter < Gitlab::View::Presenter::Delegated
Gitlab::Routing.url_helpers.project_blob_url(blob.repository.project, File.join(blob.commit_id, blob.path))
end
def web_path
Gitlab::Routing.url_helpers.project_blob_path(blob.repository.project, File.join(blob.commit_id, blob.path))
end
private
def load_all_blob_data

View file

@ -21,6 +21,10 @@ class CommitPresenter < Gitlab::View::Presenter::Delegated
url_builder.build(commit)
end
def web_path
url_builder.build(commit, only_path: true)
end
def signature_html
return unless commit.has_signature?

View file

@ -6,4 +6,8 @@ class TreeEntryPresenter < Gitlab::View::Presenter::Delegated
def web_url
Gitlab::Routing.url_helpers.project_tree_url(tree.repository.project, File.join(tree.commit_id, tree.path))
end
def web_path
Gitlab::Routing.url_helpers.project_tree_path(tree.repository.project, File.join(tree.commit_id, tree.path))
end
end

View file

@ -6,4 +6,8 @@ class UserPresenter < Gitlab::View::Presenter::Delegated
def web_url
Gitlab::Routing.url_helpers.user_url(user)
end
def web_path
Gitlab::Routing.url_helpers.user_path(user)
end
end

View file

@ -19,9 +19,21 @@ class MergeRequestPollWidgetEntity < Grape::Entity
# User entities
expose :merge_user, using: UserEntity
expose :actual_head_pipeline, with: PipelineDetailsEntity, as: :pipeline, if: -> (mr, _) { presenter(mr).can_read_pipeline? }
expose :actual_head_pipeline, as: :pipeline, if: -> (mr, _) { presenter(mr).can_read_pipeline? } do |merge_request, options|
if Feature.enabled?(:merge_request_short_pipeline_serializer, merge_request.project)
MergeRequests::PipelineEntity.represent(merge_request.actual_head_pipeline, options)
else
PipelineDetailsEntity.represent(merge_request.actual_head_pipeline, options)
end
end
expose :merge_pipeline, with: PipelineDetailsEntity, if: ->(mr, _) { mr.merged? && can?(request.current_user, :read_pipeline, mr.target_project)}
expose :merge_pipeline, if: ->(mr, _) { mr.merged? && can?(request.current_user, :read_pipeline, mr.target_project)} do |merge_request, options|
if Feature.enabled?(:merge_request_short_pipeline_serializer, merge_request.project)
MergeRequests::PipelineEntity.represent(merge_request.merge_pipeline, options)
else
PipelineDetailsEntity.represent(merge_request.merge_pipeline, options)
end
end
expose :default_merge_commit_message

View file

@ -0,0 +1,42 @@
# frozen_string_literal: true
class MergeRequests::PipelineEntity < Grape::Entity
include RequestAwareEntity
expose :id
expose :active?, as: :active
expose :path do |pipeline|
project_pipeline_path(pipeline.project, pipeline)
end
expose :flags do
expose :merge_request_pipeline?, as: :merge_request_pipeline
end
expose :commit, using: CommitEntity
expose :details do
expose :name do |pipeline|
pipeline.present.name
end
expose :detailed_status, as: :status, with: DetailedStatusEntity do |pipeline|
pipeline.detailed_status(request.current_user)
end
expose :ordered_stages, as: :stages, using: StageEntity
end
# Coverage isn't always necessary (e.g. when displaying project pipelines in
# the UI). Instead of creating an entirely different entity we just allow the
# disabling of this specific field whenever necessary.
expose :coverage, unless: proc { options[:disable_coverage] }
expose :ref do
expose :branch?, as: :branch
end
expose :triggered_by_pipeline, as: :triggered_by, with: TriggeredPipelineEntity
expose :triggered_pipelines, as: :triggered, using: TriggeredPipelineEntity
end

View file

@ -69,10 +69,10 @@
= sprite_icon('pencil', size: 16)
.btn-group
- if runner.active?
= link_to [:pause, :admin, runner], method: :get, class: 'btn btn-default has-tooltip', title: _('Pause'), ref: 'tooltip', aria: { label: _('Pause') }, data: { placement: 'top', container: 'body', confirm: _('Are you sure?') } do
= icon('pause')
= link_to [:pause, :admin, runner], method: :get, class: 'btn btn-default btn-svg has-tooltip', title: _('Pause'), ref: 'tooltip', aria: { label: _('Pause') }, data: { placement: 'top', container: 'body', confirm: _('Are you sure?') } do
= sprite_icon('pause')
- else
= link_to [:resume, :admin, runner], method: :get, class: 'btn btn-default has-tooltip gl-px-3', title: _('Resume'), ref: 'tooltip', aria: { label: _('Resume') }, data: { placement: 'top', container: 'body'} do
= link_to [:resume, :admin, runner], method: :get, class: 'btn btn-default btn-svg has-tooltip gl-px-3', title: _('Resume'), ref: 'tooltip', aria: { label: _('Resume') }, data: { placement: 'top', container: 'body'} do
= sprite_icon('play')
.btn-group
= link_to [:admin, runner], method: :delete, class: 'btn btn-danger has-tooltip', title: _('Remove'), ref: 'tooltip', aria: { label: _('Remove') }, data: { placement: 'top', container: 'body', confirm: _('Are you sure?') } do

View file

@ -126,5 +126,5 @@
= link_to play_project_job_path(job.project, job, return_to: request.original_url), method: :post, title: _('Play'), class: 'btn btn-build' do
= custom_icon('icon_play')
- elsif job.retryable?
= link_to retry_project_job_path(job.project, job, return_to: request.original_url), method: :post, title: _('Retry'), class: 'btn btn-build' do
= icon('repeat')
= link_to retry_project_job_path(job.project, job, return_to: request.original_url), method: :post, title: _('Retry'), class: 'btn btn-build gl-button btn-icon btn-default' do
= sprite_icon('repeat', css_class: 'gl-icon')

View file

@ -71,8 +71,8 @@
= build.present.callout_failure_message
%td.responsive-table-cell.build-actions
- if can?(current_user, :update_build, job)
= link_to retry_project_job_path(build.project, build, return_to: request.original_url), method: :post, title: _('Retry'), class: 'btn btn-build' do
= icon('repeat')
= link_to retry_project_job_path(build.project, build, return_to: request.original_url), method: :post, title: _('Retry'), class: 'btn btn-build gl-button btn-icon btn-default' do
= sprite_icon('repeat', css_class: 'gl-icon')
- if can?(current_user, :read_build, job)
%tr.build-trace-row.responsive-table-border-end
%td

View file

@ -84,7 +84,7 @@
= link_to @user.public_email, "mailto:#{@user.public_email}", class: 'text-link'
- if @user.bio.present?
.cover-desc.cgray
%p.profile-user-bio
.profile-user-bio
= markdown(@user.bio_html)

View file

@ -0,0 +1,5 @@
---
title: Add default_membership_role column to saml_providers table
merge_request: 37552
author:
type: added

View file

@ -0,0 +1,5 @@
---
title: Replace fa-replace icon with svg
merge_request: 37228
author:
type: other

View file

@ -0,0 +1,5 @@
---
title: Replace fa-pause with pause svg
merge_request: 37149
author:
type: other

View file

@ -0,0 +1,5 @@
---
title: Surface timeafo for created date in Incidents List
merge_request: 37567
author:
type: added

View file

@ -0,0 +1,5 @@
---
title: Fix missing path for avatars of bots
merge_request: 37671
author:
type: fixed

View file

@ -0,0 +1,5 @@
---
title: Make scoped snippet routing a default one
merge_request: 36091
author:
type: changed

View file

@ -0,0 +1,5 @@
---
title: Fix bio container width on profile page
merge_request: 37572
author:
type: fixed

View file

@ -0,0 +1,5 @@
---
title: Added webPath and descriptionHtml types to the repository GraphQL entities
merge_request: 37416
author:
type: added

View file

@ -1,5 +1,7 @@
# frozen_string_literal: true
# Patch to use COPY in db/structure.sql when populating schema_migrations table
# Patch to write version information as empty files under the db/schema_migrations directory
# This is intended to reduce potential for merge conflicts in db/structure.sql
ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.prepend(Gitlab::Database::PostgresqlAdapter::SchemaVersionsCopyMixin)
ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.prepend(Gitlab::Database::PostgresqlAdapter::DumpSchemaVersionsMixin)
# Patch to load version information from empty files under the db/schema_migrations directory
ActiveRecord::Tasks::PostgreSQLDatabaseTasks.prepend(Gitlab::Database::PostgresqlDatabaseTasks::LoadSchemaVersionsMixin)

View file

@ -178,6 +178,8 @@ Rails.application.routes.draw do
# in case we decide to move away from doorkeeper-openid_connect
get 'jwks' => 'doorkeeper/openid_connect/discovery#keys'
draw :snippets
# Product analytics collector
match '/collector/i', to: ProductAnalytics::CollectorApp.new, via: :all
end
@ -258,7 +260,6 @@ Rails.application.routes.draw do
draw :api
draw :sidekiq
draw :help
draw :snippets
draw :google_api
draw :import
draw :uploads
@ -269,11 +270,8 @@ Rails.application.routes.draw do
draw :user
draw :project
# Serve snippet routes under /-/snippets.
# To ensure an old unscoped routing is used for the UI we need to
# add prefix 'as' to the scope routing and place it below original routing.
# Issue https://gitlab.com/gitlab-org/gitlab/-/issues/210024
scope '-', as: :scoped do
scope as: 'deprecated' do
draw :snippets
end

View file

@ -346,6 +346,13 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
namespace :import do
resource :jira, only: [:show], controller: :jira
end
resources :snippets, concerns: :awardable, constraints: { id: /\d+/ } do
member do
get :raw
post :mark_as_spam
end
end
end
# End of the /-/ scope.
@ -382,26 +389,6 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
end
end
resources :snippets, concerns: :awardable, constraints: { id: /\d+/ } do # rubocop: disable Cop/PutProjectRoutesUnderScope
member do
get :raw
post :mark_as_spam
end
end
# Serve snippet routes under /-/snippets.
# To ensure an old unscoped routing is used for the UI we need to
# add prefix 'as' to the scope routing and place it below original routing.
# Issue https://gitlab.com/gitlab-org/gitlab/-/issues/29572
scope '-', as: :scoped do
resources :snippets, concerns: :awardable, constraints: { id: /\d+/ } do # rubocop: disable Cop/PutProjectRoutesUnderScope
member do
get :raw
post :mark_as_spam
end
end
end
namespace :prometheus do
resources :alerts, constraints: { id: /\d+/ }, only: [:index, :create, :show, :update, :destroy] do # rubocop: disable Cop/PutProjectRoutesUnderScope
post :notify, on: :collection
@ -511,10 +498,18 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
end
# Deprecated unscoped routing.
# Issue https://gitlab.com/gitlab-org/gitlab/issues/118849
scope as: 'deprecated' do
# Issue https://gitlab.com/gitlab-org/gitlab/issues/118849
draw :pipelines
draw :repository
# Issue https://gitlab.com/gitlab-org/gitlab/-/issues/29572
resources :snippets, concerns: :awardable, constraints: { id: /\d+/ } do # rubocop: disable Cop/PutProjectRoutesUnderScope
member do
get :raw
post :mark_as_spam
end
end
end
# All new routes should go under /-/ scope.

View file

@ -17,14 +17,11 @@ resources :snippets, concerns: :awardable do
end
end
# Use this /-/ scope for all new snippet routes.
scope path: '-' do
get '/snippets/:snippet_id/raw/:ref/*path',
to: 'snippets/blobs#raw',
as: :snippet_blob_raw,
format: false,
constraints: { snippet_id: /\d+/ }
end
get '/snippets/:snippet_id/raw/:ref/*path',
to: 'snippets/blobs#raw',
as: :snippet_blob_raw,
format: false,
constraints: { snippet_id: /\d+/ }
get '/s/:username', to: redirect('users/%{username}/snippets'),
constraints: { username: /[a-zA-Z.0-9_\-]+(?<!\.atom)/ }

View file

@ -0,0 +1,11 @@
# frozen_string_literal: true
class AddDefaultMembershipRoleToSamlProvider < ActiveRecord::Migration[6.0]
DOWNTIME = false
GUEST_USER_ROLE = 10
def change
add_column :saml_providers, :default_membership_role, :smallint, default: GUEST_USER_ROLE, null: false
end
end

View file

@ -0,0 +1 @@
789496127df650700b043e55cf1198f778d4f290f320c629905e242f2d0b0664

View file

@ -0,0 +1 @@
b4437ea9b52eaa5c1e25982995720139b359e58c9622a1206b212e96a188e28a

View file

@ -0,0 +1 @@
a972ee9ce7142d93108f635f550d0b6245c335dec130072e9f5121fed52544a1

View file

@ -0,0 +1 @@
2f2226dc7a34ae86e00f00ad03e74b2591adc6e5f9367b779c7bb57a38702c0f

View file

@ -0,0 +1 @@
52b5718373a5a336a38257aa73758059e77ba15afab89ac3326f8a96ac4df00a

View file

@ -0,0 +1 @@
58d3c729a331666723ff80b4f778795d39bcf6b62fb79931bf25e30ac072fbf8

View file

@ -0,0 +1 @@
901f28f6af880c088971c619d095db2d328c42a8b3b31b4faf53d4bf0f76b4e0

View file

@ -0,0 +1 @@
4bde1677e881c6bb03785e313875fce7c4bf690f1fe8b807be473331cfb57c22

View file

@ -0,0 +1 @@
1a87f77540cf91ae8d640819d515ed34ca69bef1e0d5494b0247385e44f3520c

View file

@ -0,0 +1 @@
7bd27433ac96c9aaf0ab7aeb5b4bea9af292b56ff5cb9966df63145a95a906e3

View file

@ -0,0 +1 @@
0d1262ee8c48483020f8aaec1d737650339e56c0fa0b530a047423e5ad4cf7fb

View file

@ -0,0 +1 @@
36ad5643295d8ab4f2b50c028dc6e047ac1bba18c2495862113c227040549a7c

View file

@ -0,0 +1 @@
c3563a49a4f65389da84eae0a3d6851ac1d89f736ad213047bb20b085cf65444

View file

@ -0,0 +1 @@
824c8286fcc54bf104c76159d75d22addb9084f932d884008a6e09d3ffdd4fc3

View file

@ -0,0 +1 @@
8c9392470fe4f34e5a194b449702161fedfe12237c87e1653fc1edaff6f82493

View file

@ -0,0 +1 @@
1259521d2b9cc79694f0d47dce9e599b7fb0abfd3fa6b8c0161860b6815676c8

View file

@ -0,0 +1 @@
75e303c1cc9ba39465ed4cb7db6b24b38af0f83b11b72fcc25478bd98260ecd9

View file

@ -0,0 +1 @@
e400393e5a5cfdbcea5927ce6c037e0879cf86d8b35c11673701a2515bbf93b6

View file

@ -0,0 +1 @@
a3afb501288961682a4969f4ecaf2496e75795fa2adaa10d3d047ee24c9b1967

View file

@ -0,0 +1 @@
3eea929f8efcb9ef32242c98a7393a8b45eceb3930b7e9b3a782dd9f5628d718

View file

@ -0,0 +1 @@
86716aa523d3fbf1c0dc40e758b004ee500d9b6dbc5f5f05ddf167b0f1937fd7

View file

@ -0,0 +1 @@
e63a6b7f3032aa58d906f0b5b2141ae376bc4ce78aa4a9c18c983b4c749cd736

View file

@ -0,0 +1 @@
bba3d5fba71bc98e53f3858cf039d74049eb9beb0c6a7d075909dd58e88595ba

View file

@ -0,0 +1 @@
f0c7e5bb3048b6e7d91a4fb5082ad0b1ac86965287f956dc8a2de17e13a9f365

View file

@ -0,0 +1 @@
341ac337f4b5aa05bbb6d69ca4517a785eb2f577ed53b282484f6b2bf44eaf86

View file

@ -0,0 +1 @@
af6fc844acb6091006688452a2a5d863bb133908bc739f36267fa8178c316d21

View file

@ -0,0 +1 @@
78ca691904675f03d3debbb6a632e75d74eee054150ed4cd93804a4d70aeb6b4

View file

@ -0,0 +1 @@
614cfc757d5f3eddc1144247932b83c71359edea88f06bef9348081448b78134

View file

@ -0,0 +1 @@
ccfbf0b383cc80dca181abed3e23e1c41033aa59b38c2fea25b424e08329633c

View file

@ -0,0 +1 @@
3bab89fa4b95f022ec5a17a1fd3c006f7f822091f35e3db923e1b8f0ca7c0b3e

View file

@ -0,0 +1 @@
43b776baffd1c8c2e0731c3d897aa3b4f043faa79132dcd2b73d06ee53641f92

View file

@ -0,0 +1 @@
85a35b85d9c6c484cea1991504d2406f752c09929d2770309d475feee238f69c

View file

@ -0,0 +1 @@
2028ff93a38e1788d91884f63689d35163cf01ced7e7a049184f2081a18cdafd

View file

@ -0,0 +1 @@
52626206f5779839a1d5b2a4910ae3f79adcaa617d21816b25dd8eb18d0f234e

View file

@ -0,0 +1 @@
b81fd5f350588d2326c97bd061f3b7c3ab97023e445335ad3d848c8eb2c14f48

View file

@ -0,0 +1 @@
3a8bd7f70351a26ba827ad4e3a63e374c9065e232109925286f6ff0d79430b7b

View file

@ -0,0 +1 @@
8a180702a02279a67245c4fa90fd168ee86d373597902fcf5acd2ca5ed5bb5ee

View file

@ -0,0 +1 @@
56c444f12de56f3e31c723632944a7dacd7eb256760ea268a97f8a02f6365491

View file

@ -0,0 +1 @@
ad03fde4d9311607d920e6bddde19b0f96a2ee7ed3199d6eb5f9b111df25a525

View file

@ -0,0 +1 @@
77e3fe2b1a968a4be27b7150ea993de11028b876905f30d381bc08263dab0d3f

View file

@ -0,0 +1 @@
c674d2f2cf2147125760613edfea332860f90a9cc1e1d9f3c857aa0b033d8912

View file

@ -0,0 +1 @@
3fac4d070229a0534a3b98d5f80c814c5564881b24837289207769b9a235e808

View file

@ -0,0 +1 @@
9b7ebd3a5456b55a73ae1f7d504c36485d0b15f9e2b7ad3f43c71cbfd65720f1

View file

@ -0,0 +1 @@
69ed3746ead7d706c62fd5287e9df3a496dc9d17d344a6c43b511db3e2467667

View file

@ -0,0 +1 @@
08f49ff72142d860dac3fc70444523d0c89912d1be85a994c17411e4748b9099

View file

@ -0,0 +1 @@
a58e6d439a97f378d280aee285a3662525a971ddf11761e0ae3c3093163499db

View file

@ -0,0 +1 @@
4501b35c0661f0ef6a3cd46db5d48f90b2131a1ae30bd73b442ed56ac6655e8d

View file

@ -0,0 +1 @@
f655a3f9f1f41710ae501c3e4ef0893791c28971d87e12f87d4b65131502b812

View file

@ -0,0 +1 @@
fd69f104fb0707d622bc8c7955481b277907e919a2423cc7e35f68e76544a304

View file

@ -0,0 +1 @@
dc1704bbed4f8d7e285e8edf9e6d537c8e720f4737f76b089532c6a0712d132a

View file

@ -0,0 +1 @@
32f6313383609eb5abd9082e51ddc5719766c3d74d0cc5d776535f52ffddd5bb

View file

@ -0,0 +1 @@
47d77dd636c35cd2c7f9bc2de035899548052a2005f29735d078f054c02bee7c

View file

@ -0,0 +1 @@
f3fd28e093775afa4f8e94b2355c1b5a6dc5d3138d31faa44b6d70a2f7dc3f88

View file

@ -0,0 +1 @@
6c2980e7e9056aa8966bb3e5b2547d9ef85da1b1bc25d5bd2acc1d218f52f14b

View file

@ -0,0 +1 @@
62a8e24ba6fb73cd35bbeef9db6ea8827be117e86b5c0b72caeedfab078a5d5d

View file

@ -0,0 +1 @@
6760598e05fbf57a005ef680b461d9dfea0481e7e5a8ec295926976cbf674e79

View file

@ -0,0 +1 @@
7155530822ffefff7419ea8d5e319a01af58b64cffe56673cb78e8305b834921

View file

@ -0,0 +1 @@
c3c9010876f7cd32f1ffa858fb35e530f64dad1e8d86962ee3c2a2d63ec052ec

View file

@ -0,0 +1 @@
883a00ae98969170f5f09842b04002145abb5f7e5e253e285eacc71828214ad0

View file

@ -0,0 +1 @@
a9e2aed5e1b0ebcdd83b082777fef905bdbec7976a88af8a5393024032d4a61a

View file

@ -0,0 +1 @@
96c1a1ccfecd82e93fd77dcaf957c7dc5e9604e18579cf06603f5e62b8816cd0

View file

@ -0,0 +1 @@
67ef8b059ebcfbfd447a1c2fee9628344a97aee1d7280722b507e8c59dec8944

View file

@ -0,0 +1 @@
7ac526e1cc920771f43333cebf6792ac41e1b0c4364eb8e0eaa955008801d45e

Some files were not shown because too many files have changed in this diff Show more