Commit 36e363d3 authored by GitLab Bot's avatar GitLab Bot

Add latest changes from gitlab-org/gitlab@master

parent d91f5211
...@@ -64,4 +64,4 @@ flaky-examples-check: ...@@ -64,4 +64,4 @@ flaky-examples-check:
script: script:
- '[[ -f $NEW_FLAKY_SPECS_REPORT ]] || echo "{}" > ${NEW_FLAKY_SPECS_REPORT}' - '[[ -f $NEW_FLAKY_SPECS_REPORT ]] || echo "{}" > ${NEW_FLAKY_SPECS_REPORT}'
- scripts/merge-reports ${NEW_FLAKY_SPECS_REPORT} rspec_flaky/new_*_*.json - scripts/merge-reports ${NEW_FLAKY_SPECS_REPORT} rspec_flaky/new_*_*.json
- scripts/detect-new-flaky-examples $NEW_FLAKY_SPECS_REPORT - scripts/flaky_examples/detect-new-flaky-examples $NEW_FLAKY_SPECS_REPORT
Please view this file on the master branch, on stable branches it's out of date. Please view this file on the master branch, on stable branches it's out of date.
## 12.7.0
### Removed (2 changes)
- Remove `project_ci_cd_settings.merge_trains_enabled` column. !19701
- Remove old pipeline security report view in favor of the Security Dashboard. !22152
### Fixed (20 changes, 1 of them is from the community)
- Add error flashes to Design view. !20889
- Pending (unsubmitted) review comments with multiple lines now display whitespace before being submitted. !21435
- Fixed GitLab admin not seeing merge requests in Jira Development Panel Integration. !21467
- fix CSS shadowbox on focus. !21785 (allenlai18)
- Fix GraphQL access to groups with SAML SSO Enforcement. !21922
- Remove spinner when approval require input is changed. !22186
- Add billing plans box to profiles. !22270
- Use full reference in Epic Issue GraphQL query. !22292
- Support new Azure SCIM pre-setup check. !22348
- Show expiry details in Audit events when changing acesss levels. !22412
- Fix PruneOrphanedGeoEvents to pass in demodulized name to BackgroundMigrationWorker. !22451
- Update widget on click dropdown item when creating epic from epic. !22511
- Ensure When userWithId Is Picked User IDs are Sent. !22528
- Fix initial sorting of non-persisted Cycle Analytics stages. !22541
- The Active tab on the Admin Users page should include bots. !22543
- Fix reply emails with attachments for epics. !22547
- Fix child epics depth validation. !22729
- Users without a license do not use a seat. !23146
- Fix access to horizontal scrollbar when zooming in on a design.
- fix positioning of design overlay pins when viewing design.
### Changed (13 changes)
- Rename "Production" stage in Cycle Analytics to "Total". !21450
- Update copy for start a free gold trial screen. !21820
- Show Geo node's name in admin page. !21876
- Improve validation message when a design extension is unsupported. !21888
- Prevent spiders indexing contribution analytics. !21896
- Replace depricatedModal (Geo) with GlModal. !22125
- Allow namespaces in a trial to upgrade to any plan. !22273
- DAST vendored template pins DAST to latest major version. !22371
- Rename productivity analytics date parameters. !22377
- Rename Contribution Analytics endpoint URL. !22877
- Move 'Allow admins to disable users ability to change profile name' feature to Premium tier. !23034
- Change security dashboard's filters bar background. !23094
- Add First & last name on the trial form. !33742
### Performance (3 changes)
- Cache vulnerability summary per project/group. !21373
- Fix N+1 SQL queries with protected environments. !22101
- Optimize Group#for_epics scope. !22375
### Added (26 changes)
- GitLab Pages - Storage size Limitations by Project or Group. !17725
- Add Instance Security Dashboard feature. !18008
- Add NPM dist-tag support. !20636
- Track resource weight changes. !21515
- Add support for custom email templates for service desk. !21745
- members list to group sso page. !21852
- Alow to filter by saml identity linked for group members API. !21931
- Added submit_review quick action. !22061
- Adds project_id and project_path to package group api. !22089
- Add trial_ends_on to Namespaces API. !22121
- Uniquifies path slug creation from trial new group name. !22147
- Capture Release actions in the audit log page. !22167
- Add ability to cancel a design discussion. !22241
- Enable License compliance feature for all instances. !22250
- Add support for license_scanning artifact report. !22277
- Add trial counters to usage ping. !22279
- Support gl-license-scanning-report.json file. !22312
- Includes _link object in packages list api. !22503
- Geo - Replicate project designs repositories. !22544
- Add information about epic to Issue list csv export. !22662
- Scope approval rules by protected branches via API. !22673
- Prevent a child pipeline to create further child pipelines. !22675
- Adds pipeline object to package API. !22854
- Add zooming functionality to designs in Design view. !22863
- Introduce Code Review Analytics page. !23031
- Add support for work in progress limits - Max issue count only.
### Other (3 changes, 1 of them is from the community)
- Generate appropriate Vue key for licenses list table. !21566 (allenlai18)
- Limit size of search query for non ES searches. !22208
- Remove "creations" in gitlab_subscription_histories on gitlab.com. !22278
## 12.6.4 ## 12.6.4
- No changes. - No changes.
......
...@@ -2,6 +2,324 @@ ...@@ -2,6 +2,324 @@
documentation](doc/development/changelog.md) for instructions on adding your own documentation](doc/development/changelog.md) for instructions on adding your own
entry. entry.
## 12.7.0
### Security (6 changes, 2 of them are from the community)
- Ensure content matches extension on image uploads. !20697
- Update set-value from 2.0.0 to 2.0.1. !22366 (Takuya Noguchi)
- Update rdoc to 6.1.2. !22434
- Upgrade json-jwt to v1.11.0. !22440
- Update webpack from 4.40.2 to 4.41.5. !22452 (Takuya Noguchi)
- Update rack-cors to 1.0.6. !22809
### Removed (2 changes)
- Remove feature flag 'use_legacy_pipeline_triggers' and remove legacy tokens. !21732
- Add deprecation warning to Rake tasks in sidekiq namespace.
### Fixed (91 changes, 7 of them are from the community)
- Remove extra whitespace in user popover. !19938
- Migrate the database to activate projects prometheus service integration for projects with prometheus installed on shared k8s cluster. !19956
- Fix pages size limit setting in database if it is above the hard limit. !20154
- Support dashes in LDAP group CN for sync on users first log in. !20402
- Users without projects use a license seat in a non-premium license. !20664
- Add fallbacks and proper errors for diff file creation. !21034
- Authenticate API requests with job tokens for Rack::Attack. !21412
- Tasks in HTML comments are no longer incorrectly detected. !21434
- Hide mirror admin actions from developers. !21569
- !21542 Part 3: Handle edge cases in stage and unstage mutations. !21676
- Web IDE: Fix Incorrect diff of deletion and addition of the same file. !21680
- Fix bug when clicking on same note twice in Firefox. !21699 (Jan Beckmann)
- Fix "No changes" empty state showing up in changes tab, despite there being changes. !21713
- Require group owner to have linked SAML before enabling Group Managed Accounts. !21721
- Fix README.txt not showing up on a project page. !21763 (Alexander Oleynikov)
- Fix MR diffs file count increments while batch loading. !21764
- When sidekiq-cluster is asked to shutdown, actively terminate any sidekiq processes that don't finish cleanly in short order. !21796
- Prevent MergeRequestsController#ci_environment_status.json from making HTTP requests. !21812
- Fix issue: Discard button in Web IDE does nothing. !21902
- Fix "Discard" for newly-created and renamed files. !21905
- Add epic milestone sourcing foreign key. !21907
- Fix transferring groups to root when EE features are enabled. !21915
- Show regular rules without approvers. !21918
- Resolve "Merge request discussions API doesn't reject an error input in some case". !21936
- fix CSS when board issue is collapsed. !21940 (allenlai18)
- Properly check a task embedded in a list with no text. !21947
- Process quick actions when using Service Desk templates. !21948
- Sidebar getting partially hidden behind the content block. !21978 (allenlai18)
- Fix bug in Container Scanning report remediations. !21980
- Return empty body for 204 responses in API. !22086
- Limit the amount of time ChatNotificationWorker waits for the build trace. !22132
- Return 503 error when metrics dashboard has no connectivity. !22140
- Cancel running pipelines when merge request is dropped from merge train. !22146
- Fix: undefined background migration classes for EE-CE downgrades. !22160
- Check both SAST_DISABLE and SAST_DISABLE_DIND when executing SAST job template. !22166
- Check both DEPENDENCY_SCANNING_DISABLED and DS_DISABLE_DIND when executing Dependency Scanning job template. !22172
- Stop exposing MR refs in favor of persistent pipeline refs. !22198
- Display login or register widget only if user is not logged in. !22211
- Fix milestone quick action to handle ancestor group milestones. !22231
- Fix RefreshMergeRequestsService raises an exception and unnecessary sidekiq retry. !22262
- Make BackgroundMigrationWorker backward compatible. !22271
- Update foreign key constraint for personal access tokens. !22305
- Fix markdown table border colors. !22314
- Retry obtaining Let's Encrypt certificates every 2 hours if it wasn't successful. !22336
- Disable Prometheus metrics if initialization fails. !22355
- Make jobs with resource group cancellable. !22356
- Fix bug when trying to expose artifacts and no artifacts are produced by the job. !22378
- Gracefully error handle CI lint errors in artifacts section. !22388
- Fix GitLab plugins not working without hooks configured. !22409
- Prevent omniauth signup redirect loop. !22432 (Balazs Nagy)
- Fix deploy tokens erroneously triggering unique IP limits. !22445
- Add support to export and import award emojis for issues, issue notes, MR, MR notes and snippet notes. !22493
- Fix Delete Selected button being active after uploading designs after a deletion. !22516
- Fix releases page when tag contains a slash. !22527
- Reverts Add RBAC permissions for getting knative version. !22560
- Fix error in Wiki when rendering the AsciiDoc include directive. !22565
- Fix Error 500 in parsing invalid CI needs and dependencies. !22567
- Fix discard all to behave like discard single file in Web IDE. !22572
- Update IDE discard of renamed entry to also discard file changes. !22573
- Avoid pre-populating form for MR resolve issues. !22593
- Fix relative links in Slack message. !22608
- Hide merge request tab popover for anonymous users. !22613
- Remove unused keyword from EKS provision service. !22633
- Prevent job log line numbers from being selected. !22691
- Fix CAS users being signed out repeatedly. !22704
- Make Sidekiq timestamps consistently ISO 8601. !22750
- Merge a merge request immediately when passing merge when pipeline succeeds to the merge API when the head pipeline already succeeded. !22777
- Fix Issue API: creating with manual IID returns conflict when IID already in use. !22788 (Mara Sophie Grosch)
- Project issue board names now sorted correctly in FOSS. !22807
- Fix upload redirections when project has moved. !22822
- Update Mermaid to v8.4.5. !22830
- Prevent builds from halting unnecessarily when completing prerequisites. !22938
- Fix discarding renamed directories in Web IDE. !22943
- Gracefully handle marking a project deletion multiple times. !22949
- Fix: WebIDE doesn't work on empty repositories again. !22950
- Fix rebase error message translation in merge requests. !22952 (briankabiro)
- Geo: Fix Docker repository synchronization for local storage. !22981
- Include subgroups when searching inside a group. !22991
- Geo: Handle repositories in Docker Registry with no tags gracefully. !23022
- Fix group issue list and group issue board filters not showing ancestor group milestones. !23038
- Add returning relation from GroupMembersFinder if called on root group with only inherited param. !23161
- Fix extracting Sentry external URL when URL is nil. !23162
- Fix issue CSV export failing for some projects. !23223
- Fix unexpected behaviour of the commit form after committing in Web IDE. !23238
- Fix analytics tracking for new merge request notes. !23273
- Identify correct sentry id in error tracking detail. !23280
- Fix for 500 when error stack trace is empty. !119205
- Removes incorrect help text from EKS Kubernetes version field.
- Exclude snippets from external caching handling.
- Validate deployment SHAs and refs.
- Increase size of issue boards sidebar collapse button.
### Changed (42 changes, 4 of them are from the community)
- Restores user's ability to revoke sessions from the active sessions page. !17462 (Jesse Hall @jessehall3)
- Add documentation & helper text information regarding securing a GitLab instance. !18987
- Add activity across all projects to /events endpoint. !19816 (briankabiro)
- Don't run Auto DevOps when no dockerfile or matching buildpack exists. !20267
- Expose full reference path for issuables in API. !20354
- Add measurement details for programming languages graph. !20592
- Move instance statistics into analytics namespace. !21112
- Improve warning for Promote issue to epic. !21158
- Added Conan recipe in place of the package name on the package details page. !21247
- Expose description_html for labels. !21413
- Add audit events to the adding members to project or group API endpoint. !21633
- Include commit message instead of entire page content in Wiki chat notifications. !21722 (Ville Skyttä)
- Add fetching of Grafana Auth via the GraphQL API. !21756
- Update prometheus chart version to 9.5.2. !21935
- Turns on backend MR reports for DAST by default. !22001
- Changes to template dropdown location. !22049
- Copy merge request routes to the - scope. !22082
- Copy repository route under - scope. !22092
- Add back feature flag for cache invalidator. !22106
- Update jupyterhub chart. !22127
- Enable ability to install Crossplane app by default. !22141
- Apply word-diff highlighting to Suggestions. !22182
- Update auto-deploy-image to v0.8.3 for DAST default branch deploy. !22227
- Restyle changes header & file tree. !22364
- Upgrade to Gitaly v1.79.0. !22515
- Save Instance Administrators group ID in DB. !22600
- Resolve Create new project: Auto-populate project slug string to project name if name is empty. !22627
- Bump cluster-applications image to v0.4.0, adding support to install cert-manager. !22657
- Pass log source to the frontend. !22694
- Allow Unicode 11 emojis in project names. !22776 (Harm Berntsen)
- Update name max length. !22840
- Update button label in MR widget pipeline footer. !22900
- Exposes tiller.log as artifact in Managed-Cluster-Applications GitLab CI template. !22940
- Rename GitLab Plugins feature to GitLab File Hooks. !22979
- Allow to share groups with other groups. !23185
- Upgrade to Gitaly v1.81.0. !23198
- Enable Code Review Analytics by default. !23285
- Add JSON error context to extends error in CI lint. !30066
- Fix embedded snippets UI polish issues.
- Align embedded snippet mono space font with GitLab mono space font.
- Updates AWS EKS service role name help text to clarify it is distinct from provision role.
- Adds quickstart doc link to ADO CICD settings.
### Performance (27 changes)
- Reduce redis key size for the Prometheus proxy and the amount of queries by half. !20006
- Implement Atomic Processing that updates status of builds, stages and pipelines in one go. !20229
- Request less frequent updates from Runner when job log is not being watched. !20841
- Don't let Gitaly calls exceed a request time of 55 seconds. !21492
- Reduce CommitIsAncestor RPCs with environments. !21778
- LRU object caching for GroupProjectObjectBuilder. !21823
- Preload project, user and group to reuse objects during project import. !21853
- Fix slow query on blob search when doing path filtering. !21996
- Add index to optimize loading pipeline charts. !22052
- Avoid Gitaly RPCs in rate-limited raw blob requests. !22123
- Remove after_initialize and before_validation for Note. !22128
- Execute Gitaly LFS call once when Vue file enabled. !22168
- Speed up path generation with build artifacts. !22257
- Performance improvements on milestone burndown chart. !22380
- Added smart virtual list component to test reports to enhance rendering performance. !22381
- Add Index to help Hashed Storage migration on big instances. !22391
- Use GraphQL to load error tracking detail page content. !22422
- Improve link generation performance. !22426
- Create optimal indexes for created_at order (Projects API). !22623
- Avoid making Gitaly calls when some Markdown text links to an uploaded file. !22631
- Remove unused index on project_mirror_data. !22647
- Add more indexes for other order_by options (Projects API). !22784
- Add indexes for authenticated Project API calls. !22886
- Enable redis HSET diff caching by default. !23105
- Add `importing?` to disable some callbacks.
- Remove N+1 query issue when checking group root ancestor.
- Reduce Gitaly calls needed for issue discussions.
### Added (95 changes, 18 of them are from the community)
- Add previous revision link to blame. !17088 (Hiroyuki Sato)
- Render whitespaces in code. !17244 (Mathieu Parent)
- Add an option to configure forking restriction. !17988
- Add support for operator in filter bar. !19011
- Add epics to project import/export. !19883
- Load MR diff types lazily to reduce initial diff payload size. !19930
- Metrics and network referee artifact types added to job artifact types. !20181
- Auto stop environments after a certain period. !20372
- Implement application appearance API endpoint. !20674 (Fabio Huser)
- Add build metadata to package API. !20682
- Add support for Liquid format in Prometheus queries. !20793
- Adds created_at object to package api response. !20816
- Stage all changes by default in Web IDE. !21067
- 25968-activity-filter-to-notes-api. !21159 (jhenkens)
- Improve error list UI on mobile viewports. !21192
- New API endpoint GET /projects/:id/services. !21330
- Add child and parent labels to pipelines. !21332
- Add release count to project homepage. !21350
- Add pipeline deletion button to pipeline details page. !21365 (Fabio Huser)
- Add support for Rust Cargo.toml dependency vizualisation and linking. !21374 (Fabio Huser)
- Expose issue link type in REST API. !21375
- Implement customizable commit messages for applied suggested changes. !21411 (Fabio Huser)
- Add stacktrace to issue created from the sentry error detail page. !21438
- add background migration for sha256 fingerprints of ssh keys. !21579 (Roger Meier)
- Add a cron job and worker to run the Container Expiration Policies. !21593
- Add feature flag override toggle. !21598
- Add 'resource_group' keyword to .gitlab-ci.yml for pipeline job concurrency limitation. !21617
- Add full text search to pod logs. !21656
- Add capability to disable issue auto-close feature per project. !21704 (Fabio Huser)
- Add API for getting sentry error tracking settings of a project. !21788 (raju249)
- Allow a pipeline (parent) to create a child pipeline as downstream pipeline within the same project. !21830
- Add API support for retrieving merge requests deployed in a deployment. !21837
- Add remaining project services to usage ping. !21843
- Add ability to duplicate the common metrics dashboard. !21929
- Custom snowplow events for monitoring alerts. !21963
- Add enable_modsecurity setting to managed ingress. !21966
- Add modsecurity_enabled setting to managed ingress. !21968
- Allow admins to disable users ability to change profile name. !21987
- Allow administrators to enforce access control for all pages web-sites. !22003
- Setup storage for multiple milestones. !22043
- Generate Prometheus sample metrics over pre-set intervals. !22066
- Add tags to sentry detailed error response. !22068
- Extend Design view sidebar with issue link and a list of participants. !22103
- Add Gitlab version and revision to export. !22108
- Add language and error urgency level for Sentry issue details page. !22122
- Document MAVEN_CLI_OPTS defaults for maven project dependency scanning and update when the variable is used. !22126
- Show sample metrics for an environment without prometheus configured. !22133
- Download cross-project artifacts by using needs keyword in the CI file. !22161
- Add GitLab commit to error detail endpoint. !22174
- Container expiration policies can be updated with the project api. !22180
- Allow CI_JOB_TOKENS for Conan package registry authentication. !22184
- Add option to configure branches for which to send emails on push. !22196
- Add a config for disabling CSS and jQuery animations. !22217
- Add API for rollout Elasticsearch per plan level. !22240
- Add retry logic for failures during import. !22265
- Add migrations for version control snippets. !22275
- Update tooltip content for deployment instances. !22289 (Rajendra Kadam)
- Cut and paste Markdown table from a spreadsheet. !22290
- Add CI variable to provide GitLab base URL. !22327 (Aidin Abedi)
- Bump kubeclient version from 4.4.0 to 4.6.0. !22347
- Accept `Envelope-To` as possible location for Service Desk key. !22354 (Max Winterstein)
- Added Conan installation instructions to Conan package details page. !22390
- Add API endpoint for creating a Geo node. !22392 (Rajendra Kadam)
- Link to GitLab commit in Sentry error details page. !22431
- Geo: Check current node in gitlab:geo:check Rake task. !22436
- Add internal API to update Sentry error status. !22454
- Add ability to ignore/resolve errors from error tracking detail page. !22475
- Add informational message about page limits to environments dashboard. !22489
- Add slug to services API response. !22518
- Allow an upstream pipeline to create a downstream pipeline in the same project. !22663
- Display SHA fingerprint for Deploy Keys and extend api to query those. !22665 (Roger Meier <r.meier@siemens.com>)
- Add getDateInFuture util method. !22671
- Detect go when doing dependency scanning. !22712
- Fix aligment for icons on alerts. !22760 (Rajendra Kadam)
- Allow "skip_ci" flag to be passed to rebase operation. !22800
- Add gitlab_commit_path to Sentry Error Details Response. !22803
- Document go support for dependency scanning. !22806
- Implement ability to ignore Sentry errrors from the list view. !22819
- Add ability to create an issue in an epic. !22833
- Drop support for ES5 add support for ES7. !22859
- Add View Issue button to error tracking details page. !22862
- Resolve Design View: Left/Right keyboard arrows through Designs. !22870
- Add Org to the list of available markups for project wikis. !22898 (Alexander Oleynikov)
- Backend for allowing sample metrics to be toggled from ui. !22901
- Display fn, line num and column in stacktrace entry caption. !22905
- Get Project's environment names via GraphQL. !22932
- Filter deployments using the environment & status. !22996
- Assign labels to the GMA and project k8s namespaces. !23027
- Expose mentions_disabled value via group API. !23070 (Fabio Huser)
- Bump cluster-applications image to v0.5.0 (Adds GitLab Runner support). !23110
- Resolve Sentry errors from error tracking list. !23135
- Expose `active` field in the Error Tracking API. !23150
- Track deployed merge requests using GitLab environments and deployments.
- Enable the linking of merge requests to all non review app deployments.
- Add comment_on_event_enabled to services API.
### Other (31 changes, 7 of them are from the community)
- Migrate issue trackers data. !18639
- refactor javascript to remove Immediately Invoked Function Expression from project file search. !19192 (Brian Luckenbill)
- Remove IIFEs from users_select.js. !19290 (minghuan lei)
- Remove milestone_id from epics. !20539 (Lee Tickett)
- Update d3 to 5.12. !20627 (Praveen Arimbrathodiyil)
- Add Ci Resource Group models. !20950
- Display in MR if security report is outdated. !20954
- Fix CI job's scroll down icon and update animation. !21442
- Implement saving config content for pipelines in a new table 'ci_pipelines_config'. !21827
- Display SSL limitations warning for project's pages under namespace that contains dot. !21874
- Updated monaco-editor dependency. !21938
- fix: EKS credentials form does not reset after error. !21958
- Fix regex matching for gemnasium dependency scanning jobs. !22025 (Maximilian Stendler)
- User signout and admin mode disable use now POST instead of GET. !22113 (Diego Louzán)
- Update to clarify slightly misleading tool tip. !22222
- Replace Font Awesome cog icon with GitLab settings icon. !22259
- Drop redundant index on ci_pipelines.project_id. !22325
- Display location in the Security Project Dashboard. !22376
- Add structured logging for application logs. !22379
- Remove ActiveRecord patch to ignore limit on text columns. !22406
- Update Ruby to 2.6.5. !22417
- Log database time in Sidekiq JSON logs. !22548
- Update GitLab Runner Helm Chart to 0.12.0. !22566
- Update project hooks limits to 100 for all plans. !22604
- Update Gitaly to v1.80.0. !22654
- Update GitLab's codeclimate to 0.85.6. !22659 (Takuya Noguchi)
- Updated no commit verbiage. !22765
- Use IS08601.3 format for app level logging of timestamps. !22793
- Upgrade octokit and its dependencies. !22946
- Remove feature flag for import graceful failures.
- Update the Net-LDAP gem to 0.16.2.
## 12.6.4 ## 12.6.4
### Security (1 change) ### Security (1 change)
......
...@@ -83,27 +83,7 @@ class List { ...@@ -83,27 +83,7 @@ class List {
} }
save() { save() {
const entity = this.label || this.assignee || this.milestone; return boardsStore.saveList(this);
let entityType = '';
if (this.label) {
entityType = 'label_id';
} else if (this.assignee) {
entityType = 'assignee_id';
} else if (IS_EE && this.milestone) {
entityType = 'milestone_id';
}
return boardsStore
.createList(entity.id, entityType)
.then(res => res.data)
.then(data => {
this.id = data.id;
this.type = data.list_type;
this.position = data.position;
this.label = data.label;
return this.getIssues();
});
} }
destroy() { destroy() {
......
/* eslint-disable no-shadow */ /* eslint-disable no-shadow, no-param-reassign */
/* global List */ /* global List */
import $ from 'jquery'; import $ from 'jquery';
...@@ -408,6 +408,29 @@ const boardsStore = { ...@@ -408,6 +408,29 @@ const boardsStore = {
return axios.delete(`${this.state.endpoints.listsEndpoint}/${id}`); return axios.delete(`${this.state.endpoints.listsEndpoint}/${id}`);
}, },
saveList(list) {
const entity = list.label || list.assignee || list.milestone;
let entityType = '';
if (list.label) {
entityType = 'label_id';
} else if (list.assignee) {
entityType = 'assignee_id';
} else if (IS_EE && list.milestone) {
entityType = 'milestone_id';
}
return this.createList(entity.id, entityType)
.then(res => res.data)
.then(data => {
list.id = data.id;
list.type = data.list_type;
list.position = data.position;
list.label = data.label;
return list.getIssues();
});
},
getIssuesForList(id, filter = {}) { getIssuesForList(id, filter = {}) {
const data = { id }; const data = { id };
Object.keys(filter).forEach(key => { Object.keys(filter).forEach(key => {
......
...@@ -374,7 +374,7 @@ export default { ...@@ -374,7 +374,7 @@ export default {
<div <div
:data-can-create-note="getNoteableData.current_user.can_create_note" :data-can-create-note="getNoteableData.current_user.can_create_note"
class="files d-flex" class="files d-flex prepend-top-default"
> >
<div <div
v-show="showTreeList" v-show="showTreeList"
......
<script> <script>
/* eslint-disable @gitlab/vue-i18n/no-bare-strings */
import { mapActions, mapGetters, mapState } from 'vuex'; import { mapActions, mapGetters, mapState } from 'vuex';
import { GlTooltipDirective, GlLink, GlButton } from '@gitlab/ui'; import { GlTooltipDirective, GlLink, GlButton } from '@gitlab/ui';
import { __ } from '~/locale'; import { __ } from '~/locale';
...@@ -62,6 +63,9 @@ export default { ...@@ -62,6 +63,9 @@ export default {
showDropdowns() { showDropdowns() {
return !this.commit && this.mergeRequestDiffs.length; return !this.commit && this.mergeRequestDiffs.length;
}, },
fileTreeIcon() {
return this.showTreeList ? 'collapse-left' : 'expand-left';
},
toggleFileBrowserTitle() { toggleFileBrowserTitle() {
return this.showTreeList ? __('Hide file browser') : __('Show file browser'); return this.showTreeList ? __('Hide file browser') : __('Show file browser');
}, },
...@@ -87,7 +91,7 @@ export default { ...@@ -87,7 +91,7 @@ export default {
</script> </script>
<template> <template>
<div class="mr-version-controls border-top"> <div class="mr-version-controls border-top border-bottom">
<div <div
class="mr-version-menus-container content-block" class="mr-version-menus-container content-block"
:class="{ :class="{
...@@ -104,17 +108,17 @@ export default { ...@@ -104,17 +108,17 @@ export default {
:title="toggleFileBrowserTitle" :title="toggleFileBrowserTitle"
@click="toggleShowTreeList" @click="toggleShowTreeList"
> >
<icon name="file-tree" /> <icon :name="fileTreeIcon" />
</button> </button>
<div v-if="showDropdowns" class="d-flex align-items-center compare-versions-container"> <div v-if="showDropdowns" class="d-flex align-items-center compare-versions-container">
{{ __('Compare') }} Changes between
<compare-versions-dropdown <compare-versions-dropdown
:other-versions="mergeRequestDiffs" :other-versions="mergeRequestDiffs"
:merge-request-version="mergeRequestDiff" :merge-request-version="mergeRequestDiff"
:show-commit-count="true" :show-commit-count="true"
class="mr-version-dropdown" class="mr-version-dropdown"
/> />
{{ __('and') }} and
<compare-versions-dropdown <compare-versions-dropdown
:other-versions="comparableDiffs" :other-versions="comparableDiffs"
:base-version-path="baseVersionPath" :base-version-path="baseVersionPath"
......
...@@ -123,20 +123,6 @@ export default { ...@@ -123,20 +123,6 @@ export default {
} }
return s__('MRDiff|Show full file'); return s__('MRDiff|Show full file');
}, },
changedFile() {
const {
new_path: changed,
deleted_file: deleted,
new_file: tempFile,
...diffFile
} = this.diffFile;
return {
...diffFile,
changed: Boolean(changed),
deleted,
tempFile,
};
},
}, },
mounted() { mounted() {
polyfillSticky(this.$refs.header); polyfillSticky(this.$refs.header);
...@@ -235,7 +221,7 @@ export default { ...@@ -235,7 +221,7 @@ export default {
<div <div
v-if="!diffFile.submodule && addMergeRequestButtons" v-if="!diffFile.submodule && addMergeRequestButtons"
class="file-actions d-none d-sm-flex align-items-center" class="file-actions d-none d-sm-block"
> >
<diff-stats :added-lines="diffFile.added_lines" :removed-lines="diffFile.removed_lines" /> <diff-stats :added-lines="diffFile.added_lines" :removed-lines="diffFile.removed_lines" />
<div class="btn-group" role="group"> <div class="btn-group" role="group">
......
<script> <script>
import Icon from '~/vue_shared/components/icon.vue';
import { n__ } from '~/locale'; import { n__ } from '~/locale';
export default { export default {
components: { Icon },
props: { props: {
addedLines: { addedLines: {
type: Number, type: Number,
...@@ -19,7 +21,7 @@ export default { ...@@ -19,7 +21,7 @@ export default {
}, },
computed: { computed: {
filesText() { filesText() {
return n__('file', 'files', this.diffFilesLength); return n__('File', 'Files', this.diffFilesLength);
}, },
isCompareVersionsHeader() { isCompareVersionsHeader() {
return Boolean(this.diffFilesLength); return Boolean(this.diffFilesLength);
...@@ -37,21 +39,14 @@ export default { ...@@ -37,21 +39,14 @@ export default {
}" }"
> >
<div v-if="diffFilesLength !== null" class="diff-stats-group"> <div v-if="diffFilesLength !== null" class="diff-stats-group">
<span class="text-secondary bold">{{ diffFilesLength }} {{ filesText }}</span> <icon name="doc-code" class="diff-stats-icon text-secondary" />
<strong>{{ diffFilesLength }} {{ filesText }}</strong>
</div> </div>
<div <div class="diff-stats-group cgreen">
class="diff-stats-group cgreen d-flex align-items-center" <icon name="file-addition" class="diff-stats-icon" /> <strong>{{ addedLines }}</strong>
:class="{ bold: isCompareVersionsHeader }"
>
<span>+</span>
<span class="js-file-addition-line">{{ addedLines }}</span>
</div> </div>
<div <div class="diff-stats-group cred">
class="diff-stats-group cred d-flex align-items-center" <icon name="file-deletion" class="diff-stats-icon" /> <strong>{{ removedLines }}</strong>
:class="{ bold: isCompareVersionsHeader }"
>
<span>-</span>
<span class="js-file-deletion-line">{{ removedLines }}</span>
</div> </div>
</div> </div>
</template> </template>
...@@ -4,6 +4,7 @@ import { GlTooltipDirective } from '@gitlab/ui'; ...@@ -4,6 +4,7 @@ import { GlTooltipDirective } from '@gitlab/ui';
import { s__, sprintf } from '~/locale'; import { s__, sprintf } from '~/locale';
import Icon from '~/vue_shared/components/icon.vue'; import Icon from '~/vue_shared/components/icon.vue';
import FileRow from '~/vue_shared/components/file_row.vue'; import FileRow from '~/vue_shared/components/file_row.vue';
import FileRowStats from './file_row_stats.vue';
export default { export default {
directives: { directives: {
...@@ -47,6 +48,9 @@ export default { ...@@ -47,6 +48,9 @@ export default {
return acc; return acc;
}, []); }, []);
}, },
fileRowExtraComponent() {
return this.hideFileStats ? null : FileRowStats;
},
}, },
methods: { methods: {
...mapActions('diffs', ['toggleTreeOpen', 'scrollToFile']), ...mapActions('diffs', ['toggleTreeOpen', 'scrollToFile']),
...@@ -54,8 +58,8 @@ export default { ...@@ -54,8 +58,8 @@ export default {
this.search = ''; this.search = '';
}, },
}, },
searchPlaceholder: sprintf(s__('MergeRequest|Search files (%{modifier_key}P)'), { searchPlaceholder: sprintf(s__('MergeRequest|Filter files or search with %{modifier_key}+p'), {
modifier_key: /Mac/i.test(navigator.userAgent) ? '' : 'Ctrl+', modifier_key: /Mac/i.test(navigator.userAgent) ? 'cmd' : 'ctrl',
}), }),
}; };
</script> </script>
...@@ -93,6 +97,7 @@ export default { ...@@ -93,6 +97,7 @@ export default {
:file="file" :file="file"
:level="0" :level="0"
:hide-extra-on-tree="true" :hide-extra-on-tree="true"
:extra-component="fileRowExtraComponent"
:show-changed-icon="true" :show-changed-icon="true"
@toggleTreeOpen="toggleTreeOpen" @toggleTreeOpen="toggleTreeOpen"
@clickFile="scrollToFile" @clickFile="scrollToFile"
......
...@@ -36,17 +36,12 @@ export default { ...@@ -36,17 +36,12 @@ export default {
required: false, required: false,
default: true, default: true,
}, },
showChangedStatus: {
type: Boolean,
required: false,
default: false,
},
}, },
computed: { computed: {
changedIcon() { changedIcon() {
// False positive i18n lint: https://gitlab.com/gitlab-org/frontend/eslint-plugin-i18n/issues/26 // False positive i18n lint: https://gitlab.com/gitlab-org/frontend/eslint-plugin-i18n/issues/26
// eslint-disable-next-line @gitlab/i18n/no-non-i18n-strings // eslint-disable-next-line @gitlab/i18n/no-non-i18n-strings
const suffix = this.showStagedIcon ? '-solid' : ''; const suffix = !this.file.changed && this.file.staged && this.showStagedIcon ? '-solid' : '';
return `${getCommitIconMap(this.file).icon}${suffix}`; return `${getCommitIconMap(this.file).icon}${suffix}`;
}, },
...@@ -91,8 +86,8 @@ export default { ...@@ -91,8 +86,8 @@ export default {
<span <span
v-gl-tooltip.right v-gl-tooltip.right
:title="tooltipTitle" :title="tooltipTitle"
:class="[{ 'ml-auto': isCentered }, changedIconClass]" :class="{ 'ml-auto': isCentered }"
class="file-changed-icon d-flex align-items-center " class="file-changed-icon d-inline-block"
> >
<icon v-if="showIcon" :name="changedIcon" :size="size" :class="changedIconClass" /> <icon v-if="showIcon" :name="changedIcon" :size="size" :class="changedIconClass" />
</span> </span>
......
<script> <script>
import Icon from '~/vue_shared/components/icon.vue';
import FileHeader from '~/vue_shared/components/file_row_header.vue'; import FileHeader from '~/vue_shared/components/file_row_header.vue';
import FileIcon from '~/vue_shared/components/file_icon.vue'; import FileIcon from '~/vue_shared/components/file_icon.vue';
import ChangedFileIcon from '~/vue_shared/components/changed_file_icon.vue'; import ChangedFileIcon from '~/vue_shared/components/changed_file_icon.vue';
...@@ -8,6 +9,7 @@ export default { ...@@ -8,6 +9,7 @@ export default {
components: { components: {
FileHeader, FileHeader,
FileIcon, FileIcon,
Icon,
ChangedFileIcon, ChangedFileIcon,
}, },
props: { props: {
...@@ -24,7 +26,6 @@ export default { ...@@ -24,7 +26,6 @@ export default {
required: false, required: false,
default: null, default: null,
}, },
hideExtraOnTree: { hideExtraOnTree: {
type: Boolean, type: Boolean,
required: false, required: false,
...@@ -142,17 +143,17 @@ export default { ...@@ -142,17 +143,17 @@ export default {
@mouseleave="toggleDropdown(false)" @mouseleave="toggleDropdown(false)"
> >
<div class="file-row-name-container"> <div class="file-row-name-container">
<span ref="textOutput" :style="levelIndentation" class="file-row-name str-truncated d-flex"> <span ref="textOutput" :style="levelIndentation" class="file-row-name str-truncated">
<file-icon <file-icon
v-if="!showChangedIcon || file.type === 'tree'" v-if="!showChangedIcon || file.type === 'tree'"
class="file-row-icon text-secondary mr-1" class="file-row-icon"
:file-name="file.name" :file-name="file.name"
:loading="file.loading" :loading="file.loading"
:folder="isTree" :folder="isTree"
:opened="file.opened" :opened="file.opened"
:size="16" :size="16"
/> />
<file-icon v-else :file-name="file.name" :size="16" css-classes="top mr-1" /> <changed-file-icon v-else :file="file" :size="16" class="append-right-5" />
{{ file.name }} {{ file.name }}
</span> </span>
<component <component
...@@ -162,7 +163,6 @@ export default { ...@@ -162,7 +163,6 @@ export default {
:dropdown-open="dropdownOpen" :dropdown-open="dropdownOpen"
@toggle="toggleDropdown($event)" @toggle="toggleDropdown($event)"
/> />
<changed-file-icon :file="file" :size="16" class="append-right-5" />
</div> </div>
</div> </div>
<template v-if="file.opened || file.isHeader"> <template v-if="file.opened || file.isHeader">
...@@ -172,6 +172,7 @@ export default { ...@@ -172,6 +172,7 @@ export default {
:file="childFile" :file="childFile"
:level="childFilesLevel" :level="childFilesLevel"
:hide-extra-on-tree="hideExtraOnTree" :hide-extra-on-tree="hideExtraOnTree"
:extra-component="extraComponent"
:show-changed-icon="showChangedIcon" :show-changed-icon="showChangedIcon"
@toggleTreeOpen="toggleTreeOpen" @toggleTreeOpen="toggleTreeOpen"
@clickFile="clickedFile" @clickFile="clickedFile"
......
...@@ -14,9 +14,9 @@ ...@@ -14,9 +14,9 @@
cursor: pointer; cursor: pointer;
@media (min-width: map-get($grid-breakpoints, md)) { @media (min-width: map-get($grid-breakpoints, md)) {
// The `+11` is to ensure the file header border shows when scrolled - // The `-1` below is to prevent two borders from clashing up against eachother -
// the bottom of the compare-versions header and the top of the file header // the bottom of the compare-versions header and the top of the file header
$mr-file-header-top: $mr-version-controls-height + $header-height + $mr-tabs-height + 11; $mr-file-header-top: $mr-version-controls-height + $header-height + $mr-tabs-height - 1;
position: -webkit-sticky; position: -webkit-sticky;
position: sticky; position: sticky;
...@@ -552,7 +552,7 @@ table.code { ...@@ -552,7 +552,7 @@ table.code {
.diff-stats { .diff-stats {
align-items: center; align-items: center;
padding: 0 1rem; padding: 0 0.25rem;
.diff-stats-group { .diff-stats-group {
padding: 0 0.25rem; padding: 0 0.25rem;
...@@ -564,7 +564,7 @@ table.code { ...@@ -564,7 +564,7 @@ table.code {
&.is-compare-versions-header { &.is-compare-versions-header {
.diff-stats-group { .diff-stats-group {
padding: 0 0.25rem; padding: 0 0.5rem;
} }
} }
} }
...@@ -1059,8 +1059,8 @@ table.code { ...@@ -1059,8 +1059,8 @@ table.code {
.diff-tree-list { .diff-tree-list {
position: -webkit-sticky; position: -webkit-sticky;
position: sticky; position: sticky;
$top-pos: $header-height + $mr-tabs-height + $mr-version-controls-height + 11px; $top-pos: $header-height + $mr-tabs-height + $mr-version-controls-height + 10px;
top: $header-height + $mr-tabs-height + $mr-version-controls-height + 11px; top: $header-height + $mr-tabs-height + $mr-version-controls-height + 10px;
max-height: calc(100vh - #{$top-pos}); max-height: calc(100vh - #{$top-pos});
z-index: 202; z-index: 202;
...@@ -1097,7 +1097,10 @@ table.code { ...@@ -1097,7 +1097,10 @@ table.code {
.tree-list-scroll { .tree-list-scroll {
max-height: 100%; max-height: 100%;
padding-top: $grid-size;
padding-bottom: $grid-size; padding-bottom: $grid-size;
border-top: 1px solid $border-color;
border-bottom: 1px solid $border-color;
overflow-y: scroll; overflow-y: scroll;
overflow-x: auto; overflow-x: auto;
} }
......
...@@ -708,7 +708,7 @@ ...@@ -708,7 +708,7 @@
.mr-version-controls { .mr-version-controls {
position: relative; position: relative;
z-index: 203; z-index: 203;
background: $white-light; background: $gray-light;
color: $gl-text-color; color: $gl-text-color;
margin-top: -1px; margin-top: -1px;
...@@ -732,7 +732,7 @@ ...@@ -732,7 +732,7 @@
} }
.content-block { .content-block {
padding: $gl-padding; padding: $gl-padding-top $gl-padding;
border-bottom: 0; border-bottom: 0;
} }
......
---
title: Allow CI_JOB_TOKENS for Conan package registry authentication
merge_request: 22184
author:
type: added
---
title: Restyle changes header & file tree
merge_request: 22364
author:
type: changed
---
title: 'Resolve Design View: Left/Right keyboard arrows through Designs'
merge_request: 22870
author:
type: added
---
title: Fix Delete Selected button being active after uploading designs after a deletion
merge_request: 22516
author:
type: fixed
---
title: Add Gitlab version and revision to export
merge_request: 22108
author:
type: added
---
title: Drop support for ES5 add support for ES7
merge_request: 22859
author:
type: added
---
title: Fix slow query on blob search when doing path filtering
merge_request: 21996
author:
type: performance
---
title: Fix rebase error message translation in merge requests
merge_request: 22952
author: briankabiro
type: fixed
---
title: Add tags to sentry detailed error response
merge_request: 22068
author:
type: added
---
title: Limit the amount of time ChatNotificationWorker waits for the build trace
merge_request: 22132
author:
type: fixed
---
title: Fix for 500 when error stack trace is empty
merge_request: 119205
author:
type: fixed
---
title: Fix CAS users being signed out repeatedly
merge_request: 22704
author:
type: fixed
---
title: Remove unused keyword from EKS provision service
merge_request: 22633
author:
type: fixed
---
title: Replace Font Awesome cog icon with GitLab settings icon
merge_request: 22259
author:
type: other
---
title: Extend Design view sidebar with issue link and a list of participants
merge_request: 22103
author:
type: added
---
title: Migrate the database to activate projects prometheus service integration for projects with prometheus installed on shared k8s cluster.
merge_request: 19956
author:
type: fixed
---
title: Add an option to configure forking restriction
merge_request: 17988
author:
type: added
---
title: Container expiration policies can be updated with the project api
merge_request: 22180
author:
type: added
---
title: Add a cron job and worker to run the Container Expiration Policies
merge_request: 21593
author:
type: added
---
title: Fix pages size limit setting in database if it is above the hard limit
merge_request: 20154
author:
type: fixed
---
title: Add activity across all projects to /events endpoint
merge_request: 19816
author: briankabiro
type: changed
---
title: Add support for operator in filter bar
merge_request: 19011
author:
type: added
---
title: Fix bug when clicking on same note twice in Firefox
merge_request: 21699
author: Jan Beckmann
type: fixed
---
title: Add previous revision link to blame
merge_request: 17088
author: Hiroyuki Sato
type: added
---
title: Add Index to help Hashed Storage migration on big instances
merge_request: 22391
author:
type: performance
---
title: Improve link generation performance
merge_request: 22426
author:
type: performance
---
title: Avoid pre-populating form for MR resolve issues
merge_request: 22593
author:
type: fixed
---
title: Update webpack from 4.40.2 to 4.41.5
merge_request: 22452
author: Takuya Noguchi
type: security
---
title: Fix error in Wiki when rendering the AsciiDoc include directive
merge_request: 22565
author:
type: fixed
---
title: Fix discarding renamed directories in Web IDE
merge_request: 22943
author:
type: fixed
---
title: Prevent builds from halting unnecessarily when completing prerequisites
merge_request: 22938
author:
type: fixed
---
title: 'Geo: Fix Docker repository synchronization for local storage'
merge_request: 22981
author:
type: fixed
---
title: 'Geo: Handle repositories in Docker Registry with no tags gracefully'
merge_request: 23022
author:
type: fixed
---
title: 'Fix Issue API: creating with manual IID returns conflict when IID already
in use'
merge_request: 22788
author: Mara Sophie Grosch
type: fixed
---
title: Update button label in MR widget pipeline footer
merge_request: 22900
author:
type: changed
---
title: Add Org to the list of available markups for project wikis
merge_request: 22898
author: Alexander Oleynikov
type: added
---
title: Add returning relation from GroupMembersFinder if called on root group with
only inherited param
merge_request: 23161
author:
type: fixed
---
title: Expose `active` field in the Error Tracking API
merge_request: 23150
author:
type: added
---
title: Fix unexpected behaviour of the commit form after committing in Web IDE
merge_request: 23238
author:
type: fixed
---
title: Auto stop environments after a certain period
merge_request: 20372
author:
type: added
---
title: Check both SAST_DISABLE and SAST_DISABLE_DIND when executing SAST job template
merge_request: 22166
author:
type: fixed
---
title: Check both DEPENDENCY_SCANNING_DISABLED and DS_DISABLE_DIND when executing Dependency Scanning job template
merge_request: 22172
author:
type: fixed
---
title: Add CI variable to provide GitLab base URL
merge_request: 22327
author: Aidin Abedi
type: added
---
title: Authenticate API requests with job tokens for Rack::Attack
merge_request: 21412
author:
type: fixed
---
title: Tasks in HTML comments are no longer incorrectly detected
merge_request: 21434
author:
type: fixed
---
title: Allow Unicode 11 emojis in project names
merge_request: 22776
author: Harm Berntsen
type: changed
---
title: Allow to share groups with other groups
merge_request: 23185
author:
type: changed
---
title: Display login or register widget only if user is not logged in
merge_request: 22211
author:
type: fixed
---
title: 'Resolve Create new project: Auto-populate project slug string to project name
if name is empty'
merge_request: 22627
author:
type: changed
---
title: Allow admins to disable users ability to change profile name
merge_request: 21987
author:
type: added
---
title: Fix milestone quick action to handle ancestor group milestones
merge_request: 22231
author:
type: fixed
---
title: Fix README.txt not showing up on a project page
merge_request: 21763
author: Alexander Oleynikov
type: fixed
---
title: Apply word-diff highlighting to Suggestions
merge_request: 22182
author:
type: changed
---
title: Fix "Discard" for newly-created and renamed files
merge_request: 21905
author:
type: fixed
---
title: Properly check a task embedded in a list with no text
merge_request: 21947
author:
type: fixed
---
title: Fix group issue list and group issue board filters not showing ancestor group
milestones
merge_request: 23038
author:
type: fixed
---
title: Increase size of issue boards sidebar collapse button
merge_request:
author:
type: fixed
---
title: Restores user's ability to revoke sessions from the active sessions
page.
merge_request: 17462
author: Jesse Hall @jessehall3
type: changed
---
title: Fix markdown table border colors
merge_request: 22314
author:
type: fixed
---
title: Resolve "Merge request discussions API doesn't reject an error input in some
case"
merge_request: 21936
author:
type: fixed
---
title: Migrate issue trackers data
merge_request: 18639
author:
type: other
---
title: Remove feature flag 'use_legacy_pipeline_triggers' and remove legacy tokens
merge_request: 21732
author:
type: removed
---
title: 'Fix: undefined background migration classes for EE-CE downgrades'
merge_request: 22160
author:
type: fixed
---
title: Display SSL limitations warning for project's pages under namespace that contains
dot
merge_request: 21874
author:
type: other
---
title: Adds quickstart doc link to ADO CICD settings
merge_request:
author:
type: changed
---
title: Add documentation & helper text information regarding securing a GitLab instance
merge_request: 18987
author:
type: changed
---
title: Expose full reference path for issuables in API
merge_request: 20354
author:
type: changed
---
title: Prevent MergeRequestsController#ci_environment_status.json from making HTTP requests
merge_request: 21812
author:
type: fixed
---
title: Update IDE discard of renamed entry to also discard file changes
merge_request: 22573
author:
type: fixed
---
title: Allow administrators to enforce access control for all pages web-sites
merge_request: 22003
author:
type: added
---
title: Changes to template dropdown location
merge_request: 22049
author:
type: changed
---
title: Add epic milestone sourcing foreign key
merge_request: 21907
author:
type: fixed
---
title: Display location in the Security Project Dashboard
merge_request: 22376
author:
type: other
---
title: Add build metadata to package API
merge_request: 20682
author:
type: added
---
title: Request less frequent updates from Runner when job log is not being watched
merge_request: 20841
author:
type: performance
---
title: Add API for rollout Elasticsearch per plan level
merge_request: 22240
author:
type: added
---
title: Added Conan installation instructions to Conan package details page
merge_request: 22390
author:
type: added
---
title: Added Conan recipe in place of the package name on the package details page.
merge_request: 21247
author:
type: changed
---
title: 'Fix: WebIDE doesn''t work on empty repositories again'
merge_request: 22950
author:
type: fixed
---
title: Remove IIFEs from users_select.js
merge_request: 19290
author: minghuan lei
type: other
---
title: Add epics to project import/export
merge_request: 19883
author:
type: added
---
title: Add fetching of Grafana Auth via the GraphQL API
merge_request: 21756
author:
type: changed
---
title: Add support for Liquid format in Prometheus queries
merge_request: 20793
author:
type: added
---
title: Hide mirror admin actions from developers
merge_request: 21569
author:
type: fixed
---
title: Adds created_at object to package api response
merge_request: 20816
author:
type: added
---
title: Bump cluster-applications image to v0.5.0 (Adds GitLab Runner support)
merge_request: 23110
author:
type: added
---
title: Add API support for retrieving merge requests deployed in a deployment
merge_request: 21837
author:
type: added
---
title: Move instance statistics into analytics namespace
merge_request: 21112
author:
type: changed
---
title: Setup storage for multiple milestones
merge_request: 22043
author:
type: added
---
title: Add remaining project services to usage ping
merge_request: 21843
author:
type: added
---
title: Add language and error urgency level for Sentry issue details page
merge_request: 22122
author:
type: added
---
title: Improve error list UI on mobile viewports
merge_request: 21192
author:
type: added
---
title: Add stacktrace to issue created from the sentry error detail page
merge_request: 21438
author:
type: added
---
title: Add release count to project homepage
merge_request: 21350
author:
type: added
---
title: Fix relative links in Slack message
merge_request: 22608
author:
type: fixed
---
title: Support dashes in LDAP group CN for sync on users first log in
merge_request: 20402
author:
type: fixed
---
title: Custom snowplow events for monitoring alerts
merge_request: 21963
author:
type: added
---
title: Add ability to duplicate the common metrics dashboard
merge_request: 21929
author:
type: added
---
title: Accept `Envelope-To` as possible location for Service Desk key
merge_request: 22354
author: Max Winterstein
type: added
---
title: 'fix: EKS credentials form does not reset after error'
merge_request: 21958
author:
type: other
---
title: Add fallbacks and proper errors for diff file creation
merge_request: 21034
author:
type: fixed
---
title: Added smart virtual list component to test reports to enhance rendering performance
merge_request: 22381
author:
type: performance
---
title: Document MAVEN_CLI_OPTS defaults for maven project dependency scanning and update when the variable is used
merge_request: 22126
author:
type: added
---
title: Display fn, line num and column in stacktrace entry caption
merge_request: 22905
author:
type: added
---
title: Add gitlab_commit_path to Sentry Error Details Response
merge_request: 22803
author:
type: added
---
title: Link to GitLab commit in Sentry error details page
merge_request: 22431
author:
type: added
---
title: Add GitLab commit to error detail endpoint
merge_request: 22174
author:
type: added
---
title: Implement saving config content for pipelines in a new table 'ci_pipelines_config'
merge_request: 21827
author:
type: other
---
title: Expose description_html for labels
merge_request: 21413
author:
type: changed
---
title: Fix CI job's scroll down icon and update animation
merge_request: 21442
author:
type: fix
---
title: Add retry logic for failures during import
merge_request: 22265
author:
type: added
---
title: Preload project, user and group to reuse objects during project import
merge_request: 21853
author:
type: performance
---
title: Fix releases page when tag contains a slash
merge_request: 22527
author:
type: fixed
---
title: Add modsecurity_enabled setting to managed ingress
merge_request: 21968
author:
type: added
---
title: Add enable_modsecurity setting to managed ingress
merge_request: 21966
author:
type: added
---
title: Update to clarify slightly misleading tool tip
merge_request: 22222
author:
type: other
---
title: "!21542 Part 3: Handle edge cases in stage and unstage mutations"
merge_request: 21676
author:
type: fixed
---
title: "Web IDE: Fix Incorrect diff of deletion and addition of the same file"
merge_request: 21680
author:
type: fixed
---
title: Add internal API to update Sentry error status
merge_request: 22454
author:
type: added
---
title: Add ability to ignore/resolve errors from error tracking detail page
merge_request: 22475
author:
type: added
---
title: Fix regex matching for gemnasium dependency scanning jobs
merge_request: 22025
author: Maximilian Stendler
type: fix
---
title: Use GraphQL to load error tracking detail page content
merge_request: 22422
author:
type: performance
---
title: Fix "No changes" empty state showing up in changes tab, despite there being
changes
merge_request: 21713
author:
type: fixed
---
title: Display in MR if security report is outdated
merge_request: 20954
author:
type: other
---
title: Fix MR diffs file count increments while batch loading
merge_request: 21764
author:
type: fixed
---
title: Document go support for dependency scanning
merge_request: 22806
author:
type: added
---
title: Detect go when doing dependency scanning
merge_request: 22712
author:
type: added
---
title: Add audit events to the adding members to project or group API endpoint
merge_request: 21633
author:
type: changed
---
title: Improve warning for Promote issue to epic
merge_request: 21158
author:
type: changed
---
title: fix CSS when board issue is collapsed
merge_request: 21940
author: allenlai18
type: fixed
---
title: removes store logic from issue board models
merge_request: 21391
author: nuwe1
type: other
---
title: Create optimal indexes for created_at order (Projects API)
merge_request: 22623
author:
type: performance
---
title: Add indexes for authenticated Project API calls
merge_request: 22886
author:
type: performance
---
title: Add more indexes for other order_by options (Projects API)
merge_request: 22784
author:
type: performance
---
title: Log database time in Sidekiq JSON logs
merge_request: 22548
author:
type: other
---
title: Add API endpoint for creating a Geo node
merge_request: 22392
author: Rajendra Kadam
type: added
---
title: Add getDateInFuture util method
merge_request: 22671
author:
type: added
---
title: Save Instance Administrators group ID in DB
merge_request: 22600
author:
type: changed
---
title: Add deprecation warning to Rake tasks in sidekiq namespace
merge_request:
author:
type: removed
---
title: Add comment_on_event_enabled to services API
merge_request:
author:
type: added
---
title: Add structured logging for application logs
merge_request: 22379
author:
type: other
---
title: Pass log source to the frontend
merge_request: 22694
author:
type: changed
---
title: Add full text search to pod logs
merge_request: 21656
author:
type: added
---
title: Sidebar getting partially hidden behind the content block
merge_request: 21978
author: allenlai18
type: fixed
---
title: Allow "skip_ci" flag to be passed to rebase operation
merge_request: 22800
author:
type: added
---
title: Ensure content matches extension on image uploads
merge_request: 20697
author:
type: security
---
title: New API endpoint GET /projects/:id/services
merge_request: 21330
author:
type: added
---
title: Make BackgroundMigrationWorker backward compatible
merge_request: 22271
author:
type: fixed
---
title: Add JSON error context to extends error in CI lint
merge_request: 30066
author:
type: changed
---
title: Performance improvements on milestone burndown chart
merge_request: 22380
author:
type: performance
---
title: Merge a merge request immediately when passing merge when pipeline succeeds
to the merge API when the head pipeline already succeeded
merge_request: 22777
author:
type: fixed
---
title: Don't let Gitaly calls exceed a request time of 55 seconds
merge_request: 21492
author:
type: performance
---
title: Project issue board names now sorted correctly in FOSS
merge_request: 22807
author:
type: fixed
---
title: Reduce Gitaly calls needed for issue discussions
merge_request:
author:
type: performance
---
title: Cancel running pipelines when merge request is dropped from merge train
merge_request: 22146
author:
type: fixed
---
title: Add 'resource_group' keyword to .gitlab-ci.yml for pipeline job concurrency
limitation
merge_request: 21617
author:
type: added
---
title: Add Ci Resource Group models
merge_request: 20950
author:
type: other
---
title: Bump cluster-applications image to v0.4.0, adding support to install cert-manager
merge_request: 22657
author:
type: changed
---
title: Allow an upstream pipeline to create a downstream pipeline in the same project
merge_request: 22663
author:
type: added
---
title: Turns on backend MR reports for DAST by default
merge_request: 22001
author:
type: changed
---
title: Update the Net-LDAP gem to 0.16.2
merge_request:
author:
type: other
---
title: Add ability to create an issue in an epic
merge_request: 22833
author:
type: added
---
title: Enable Code Review Analytics by default
merge_request: 23285
author:
type: changed
---
title: Validate deployment SHAs and refs
merge_request:
author:
type: fixed
---
title: Filter deployments using the environment & status
merge_request: 22996
author:
type: added
---
title: Show regular rules without approvers
merge_request: 21918
author:
type: fixed
---
title: Add measurement details for programming languages graph
merge_request: 20592
author:
type: changed
---
title: Don't run Auto DevOps when no dockerfile or matching buildpack exists
merge_request: 20267
author:
type: changed
---
title: Copy merge request routes to the - scope
merge_request: 22082
author:
type: changed
---
title: Copy repository route under - scope
merge_request: 22092
author:
type: changed
---
title: Rename GitLab Plugins feature to GitLab File Hooks
merge_request: 22979
author:
type: changed
---
title: Removes incorrect help text from EKS Kubernetes version field
merge_request:
author:
type: fixed
---
title: Updates AWS EKS service role name help text to clarify it is distinct from provision role
merge_request:
author:
type: changed
---
title: Add option to configure branches for which to send emails on push
merge_request: 22196
author:
type: added
---
title: Align embedded snippet mono space font with GitLab mono space font.
merge_request: !20865
author:
type: changed
---
title: Fix embedded snippets UI polish issues
merge_request: !22637
author:
type: changed
---
title: Download cross-project artifacts by using needs keyword in the CI file
merge_request: 22161
author:
type: added
---
title: Allow a pipeline (parent) to create a child pipeline as downstream pipeline within the same project
merge_request: 21830
author:
type: added
---
title: Get Project's environment names via GraphQL
merge_request: 22932
author:
type: added
---
title: Add API for getting sentry error tracking settings of a project
merge_request: 21788
author: raju249
type: added
---
title: Exposes tiller.log as artifact in Managed-Cluster-Applications GitLab CI template
merge_request: 22940
author:
type: changed
---
title: Fix discard all to behave like discard single file in Web IDE
merge_request: 22572
author:
type: fixed
---
title: Implement application appearance API endpoint
merge_request: 20674
author: Fabio Huser
type: added
---
title: Implement customizable commit messages for applied suggested changes
merge_request: 21411
author: Fabio Huser
type: added
---
title: Add capability to disable issue auto-close feature per project
merge_request: 21704
author: Fabio Huser
type: added
---
title: Add pipeline deletion button to pipeline details page
merge_request: 21365
author: Fabio Huser
type: added
---
title: Add support for Rust Cargo.toml dependency vizualisation and linking
merge_request: 21374
author: Fabio Huser
type: added
---
title: add background migration for sha256 fingerprints of ssh keys
merge_request: 21579
author: Roger Meier
type: added
---
title: Display SHA fingerprint for Deploy Keys and extend api to query those
merge_request: 22665
author: Roger Meier <r.meier@siemens.com>
type: added
---
title: Load MR diff types lazily to reduce initial diff payload size
merge_request: 19930
author:
type: added
---
title: Add feature flag override toggle
merge_request: 21598
author:
type: added
---
title: Fix bug in Container Scanning report remediations
merge_request: 21980
author:
type: fixed
---
title: Update tooltip content for deployment instances
merge_request: 22289
author: Rajendra Kadam
type: added
---
title: Fix transferring groups to root when EE features are enabled
merge_request: 21915
author:
type: fixed
---
title: Enable the linking of merge requests to all non review app deployments
merge_request:
author:
type: added
---
title: Add support to export and import award emojis for issues, issue notes, MR, MR notes and snippet notes
merge_request: 22493
author:
type: fixed
---
title: Fix bug when trying to expose artifacts and no artifacts are produced by the job
merge_request: 22378
author:
type: fixed
---
title: Fix RefreshMergeRequestsService raises an exception and unnecessary sidekiq retry
merge_request: 22262
author:
type: fixed
---
title: Return 503 error when metrics dashboard has no connectivity
merge_request: 22140
author:
type: fixed
---
title: Exclude snippets from external caching handling
merge_request:
author:
type: fixed
---
title: Add migrations for version control snippets
merge_request: 22275
author:
type: added
---
title: Generate Prometheus sample metrics over pre-set intervals
merge_request: 22066
author:
type: added
---
title: Add back feature flag for cache invalidator
merge_request: 22106
author:
type: changed
---
title: Upgrade to Gitaly v1.79.0
merge_request: 22515
author:
type: changed
---
title: Upgrade to Gitaly v1.81.0
merge_request: 23198
author:
type: changed
---
title: 'Fix issue: Discard button in Web IDE does nothing'
merge_request: 21902
author:
type: fixed
---
title: Stage all changes by default in Web IDE
merge_request: 21067
author:
type: added
---
title: Fix aligment for icons on alerts
merge_request: 22760
author: Rajendra Kadam
type: added
---
title: Execute Gitaly LFS call once when Vue file enabled
merge_request: 22168
author:
type: performance
---
title: Render whitespaces in code
merge_request: 17244
author: Mathieu Parent
type: added
---
title: Implement Atomic Processing that updates status of builds, stages and pipelines in one go
merge_request: 20229
author:
type: performance
---
title: Include subgroups when searching inside a group
merge_request: 22991
author:
type: fixed
---
title: Updated no commit verbiage
merge_request: 22765
author:
type: other
---
title: Process quick actions when using Service Desk templates
merge_request: 21948
author:
type: fixed
---
title: Require group owner to have linked SAML before enabling Group Managed Accounts
merge_request: 21721
author:
type: fixed
---
title: Update rack-cors to 1.0.6
merge_request: 22809
author:
type: security
---
title: Update rdoc to 6.1.2
merge_request: 22434
author:
type: security
---
title: Enable redis HSET diff caching by default
merge_request: 23105
author:
type: performance
---
title: Expose issue link type in REST API
merge_request: 21375
author:
type: added
---
title: Implement ability to ignore Sentry errrors from the list view
merge_request: 22819
author:
type: added
---
title: Resolve Sentry errors from error tracking list
merge_request: 23135
author:
type: added
---
title: LRU object caching for GroupProjectObjectBuilder
merge_request: 21823
author:
type: performance
---
title: Make jobs with resource group cancellable
merge_request: 22356
author:
type: fixed
---
title: Add `importing?` to disable some callbacks
merge_request:
author:
type: performance
---
title: 'Geo: Check current node in gitlab:geo:check Rake task'
merge_request: 22436
author:
type: added
---
title: Assign labels to the GMA and project k8s namespaces
merge_request: 23027
author:
type: added
---
title: Add informational message about page limits to environments dashboard
merge_request: 22489
author:
type: added
---
title: Update name max length
merge_request: 22840
author:
type: changed
---
title: 25968-activity-filter-to-notes-api
merge_request: 21159
author: jhenkens
type: added
---
title: "Prevent omniauth signup redirect loop"
merge_request: 22432
author: Balazs Nagy
type: fixed
---
title: Add child and parent labels to pipelines
merge_request: 21332
author:
type: added
---
title: refactor javascript to remove Immediately Invoked Function Expression from
project file search
merge_request: 19192
author: Brian Luckenbill
type: other
---
title: Hide merge request tab popover for anonymous users
merge_request: 22613
author:
type: fixed
---
title: Fix extracting Sentry external URL when URL is nil
merge_request: 23162
author:
type: fixed
---
title: Update Gitaly to v1.80.0
merge_request: 22654
author:
type: other
---
title: Remove extra whitespace in user popover
merge_request: 19938
author:
type: fixed
---
title: Update d3 to 5.12
merge_request: 20627
author: Praveen Arimbrathodiyil
type: other
---
title: Prevent job log line numbers from being selected
merge_request: 22691
author:
type: fixed
---
title: Expose mentions_disabled value via group API
merge_request: 23070
author: Fabio Huser
type: added
---
title: User signout and admin mode disable use now POST instead of GET
merge_request: 22113
author: Diego Louzán
type: other
---
title: Remove N+1 query issue when checking group root ancestor.
merge_request:
author:
type: performance
---
title: Track deployed merge requests using GitLab environments and deployments
merge_request:
author:
type: added
---
title: Remove feature flag for import graceful failures
merge_request:
author:
type: other
---
title: Remove after_initialize and before_validation for Note
merge_request: 22128
author:
type: performance
---
title: Remove ActiveRecord patch to ignore limit on text columns
merge_request: 22406
author:
type: other
---
title: Remove unused index on project_mirror_data
merge_request: 22647
author:
type: performance
---
title: Enable ability to install Crossplane app by default
merge_request: 22141
author:
type: changed
---
title: Remove milestone_id from epics
merge_request: 20539
author: Lee Tickett
type: other
---
title: Return empty body for 204 responses in API
merge_request: 22086
author:
type: fixed
---
title: Add slug to services API response
merge_request: 22518
author:
type: added
---
title: Reverts MR diff redesign which fixes Web IDE visual bugs including file dropdown
not showing up
merge_request: 23428
author:
type: fixed
---
title: Reverts Add RBAC permissions for getting knative version
merge_request: 22560
author:
type: fixed
---
title: Updated monaco-editor dependency
merge_request: 21938
author:
type: other
---
title: Update Ruby to 2.6.5
merge_request: 22417
author:
type: other
---
title: Metrics and network referee artifact types added to job artifact types
merge_request: 20181
author:
type: added
---
title: Backend for allowing sample metrics to be toggled from ui
merge_request: 22901
author:
type: added
---
title: Show sample metrics for an environment without prometheus configured
merge_request: 22133
author:
type: added
---
title: Add index to optimize loading pipeline charts
merge_request: 22052
author:
type: performance
---
title: Upgrade json-jwt to v1.11.0
merge_request: 22440
author:
type: security
---
title: Cut and paste Markdown table from a spreadsheet
merge_request: 22290
author:
type: added
---
title: Fix upload redirections when project has moved
merge_request: 22822
author:
type: fixed
---
title: Disable Prometheus metrics if initialization fails
merge_request: 22355
author:
type: fixed
---
title: Drop redundant index on ci_pipelines.project_id
merge_request: 22325
author:
type: other
---
title: Fix Error 500 in parsing invalid CI needs and dependencies
merge_request: 22567
author:
type: fixed
---
title: Gracefully error handle CI lint errors in artifacts section
merge_request: 22388
author:
type: fixed
---
title: Fix issue CSV export failing for some projects
merge_request: 23223
author:
type: fixed
---
title: Fix analytics tracking for new merge request notes
merge_request: 23273
author:
type: fixed
---
title: Gracefully handle marking a project deletion multiple times
merge_request: 22949
author:
type: fixed
---
title: Fix GitLab plugins not working without hooks configured
merge_request: 22409
author:
type: fixed
---
title: Make Sidekiq timestamps consistently ISO 8601
merge_request: 22750
author:
type: fixed
---
title: Fix deploy tokens erroneously triggering unique IP limits
merge_request: 22445
author:
type: fixed
---
title: Reduce CommitIsAncestor RPCs with environments
merge_request: 21778
author:
type: performance
---
title: Avoid Gitaly RPCs in rate-limited raw blob requests
merge_request: 22123
author:
type: performance
---
title: Speed up path generation with build artifacts
merge_request: 22257
author:
type: performance
---
title: Update foreign key constraint for personal access tokens
merge_request: 22305
author:
type: fixed
---
title: Update Mermaid to v8.4.5
merge_request: 22830
author:
type: fixed
---
title: Upgrade octokit and its dependencies
merge_request: 22946
author:
type: other
---
title: Add a config for disabling CSS and jQuery animations
merge_request: 22217
author:
type: added
---
title: When sidekiq-cluster is asked to shutdown, actively terminate any sidekiq processes that don't finish cleanly in short order
merge_request: 21796
author:
type: fixed
---
title: Reduce redis key size for the Prometheus proxy and the amount of queries by half
merge_request: 20006
author:
type: performance
---
title: Avoid making Gitaly calls when some Markdown text links to an uploaded file
merge_request: 22631
author:
type: performance
---
title: 'Use IS08601.3 format for app level logging of timestamps'
merge_request: 22793
author:
type: other
---
title: Stop exposing MR refs in favor of persistent pipeline refs
merge_request: 22198
author:
type: fixed
---
title: Identify correct sentry id in error tracking detail
merge_request: 23280
author:
type: fixed
---
title: Users without projects use a license seat in a non-premium license
merge_request: 20664
author:
type: fixed
---
title: Add View Issue button to error tracking details page
merge_request: 22862
author:
type: added
---
title: Update GitLab's codeclimate to 0.85.6
merge_request: 22659
author: Takuya Noguchi
type: other
---
title: Update GitLab Runner Helm Chart to 0.12.0
merge_request: 22566
author:
type: other
---
title: Update jupyterhub chart
merge_request: 22127
author:
type: changed
---
title: Update project hooks limits to 100 for all plans
merge_request: 22604
author:
type: other
---
title: Update prometheus chart version to 9.5.2
merge_request: 21935
author:
type: changed
---
title: Update set-value from 2.0.0 to 2.0.1
merge_request: 22366
author: Takuya Noguchi
type: security
---
title: Update auto-deploy-image to v0.8.3 for DAST default branch deploy
merge_request: 22227
author:
type: changed
---
title: Bump kubeclient version from 4.4.0 to 4.6.0
merge_request: 22347
author:
type: added
---
title: Include commit message instead of entire page content in Wiki chat notifications
merge_request: 21722
author: Ville Skyttä
type: changed
...@@ -135,7 +135,7 @@ using environment variables. ...@@ -135,7 +135,7 @@ using environment variables.
| `DS_ANALYZER_IMAGE_PREFIX` | Override the name of the Docker registry providing the official default images (proxy). Read more about [customizing analyzers](analyzers.md). | | `DS_ANALYZER_IMAGE_PREFIX` | Override the name of the Docker registry providing the official default images (proxy). Read more about [customizing analyzers](analyzers.md). |
| `DS_ANALYZER_IMAGE_TAG` | Override the Docker tag of the official default images. Read more about [customizing analyzers](analyzers.md). | | `DS_ANALYZER_IMAGE_TAG` | Override the Docker tag of the official default images. Read more about [customizing analyzers](analyzers.md). |
| `DS_PYTHON_VERSION` | Version of Python. If set to 2, dependencies are installed using Python 2.7 instead of Python 3.6. ([Introduced](https://gitlab.com/gitlab-org/gitlab/issues/12296) in GitLab 12.1)| | `DS_PYTHON_VERSION` | Version of Python. If set to 2, dependencies are installed using Python 2.7 instead of Python 3.6. ([Introduced](https://gitlab.com/gitlab-org/gitlab/issues/12296) in GitLab 12.1)|
| `DS_PIP_VERSION` | Force the install of a specific pip version (example: `"19.3"`), otherwise the pip installed in the docker image is used. | | `DS_PIP_VERSION` | Force the install of a specific pip version (example: `"19.3"`), otherwise the pip installed in the Docker image is used. ([Introduced](https://gitlab.com/gitlab-org/gitlab/issues/12811) in GitLab 12.7) |
| `DS_PIP_DEPENDENCY_PATH` | Path to load Python pip dependencies from. ([Introduced](https://gitlab.com/gitlab-org/gitlab/issues/12412) in GitLab 12.2) | | `DS_PIP_DEPENDENCY_PATH` | Path to load Python pip dependencies from. ([Introduced](https://gitlab.com/gitlab-org/gitlab/issues/12412) in GitLab 12.2) |
| `GEMNASIUM_DB_LOCAL_PATH` | Path to local gemnasium database (default `/gemnasium-db`). | `GEMNASIUM_DB_LOCAL_PATH` | Path to local gemnasium database (default `/gemnasium-db`).
| `GEMNASIUM_DB_REMOTE_URL` | Repository URL for fetching the gemnasium database (default `https://gitlab.com/gitlab-org/security-products/gemnasium-db.git`). | `GEMNASIUM_DB_REMOTE_URL` | Repository URL for fetching the gemnasium database (default `https://gitlab.com/gitlab-org/security-products/gemnasium-db.git`).
......
...@@ -664,7 +664,7 @@ available configuration options. ...@@ -664,7 +664,7 @@ available configuration options.
### Install Cilium using GitLab CI ### Install Cilium using GitLab CI
> [Introduced](https://gitlab.com/gitlab-org/cluster-integration/cluster-applications/merge_requests/22) in GitLab 12.7. > [Introduced](https://gitlab.com/gitlab-org/cluster-integration/cluster-applications/merge_requests/22) in GitLab 12.8.
[Cilium](https://cilium.io/) is a networking plugin for Kubernetes [Cilium](https://cilium.io/) is a networking plugin for Kubernetes
that you can use to implement support for that you can use to implement support for
......
...@@ -1375,6 +1375,22 @@ to the sides of the "dash" lines in the second row. This will affect every cell ...@@ -1375,6 +1375,22 @@ to the sides of the "dash" lines in the second row. This will affect every cell
| Cell 1 | Cell 2 | Cell 3 | Cell 4 | Cell 5 | Cell 6 | | Cell 1 | Cell 2 | Cell 3 | Cell 4 | Cell 5 | Cell 6 |
| Cell 7 | Cell 8 | Cell 9 | Cell 10 | Cell 11 | Cell 12 | | Cell 7 | Cell 8 | Cell 9 | Cell 10 | Cell 11 | Cell 12 |
#### Copy from spreadsheet and paste in Markdown
[Introduced](https://gitlab.com/gitlab-org/gitlab/issues/27205) in GitLab 12.7.
If you're working in spreadsheet software (e.g. Microsoft Excel, Google
Sheets, Apple Numbers), you can copy from a spreadsheet, and GitLab will
paste it as a Markdown table. For example, suppose you have the
following spreadsheet:
![Copy from spreadsheet](img/markdown_copy_from_spreadsheet_v12_7.png)
Select the cells and copy them to your clipboard. Open a GitLab Markdown
entry and paste the spreadsheet:
![Paste to Markdown table](img/markdown_paste_table_v12_7.png)
## References ## References
- This document leveraged heavily from the [Markdown-Cheatsheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet). - This document leveraged heavily from the [Markdown-Cheatsheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet).
......
...@@ -266,6 +266,8 @@ The GitLab Conan repository supports the following Conan CLI commands: ...@@ -266,6 +266,8 @@ The GitLab Conan repository supports the following Conan CLI commands:
## Using GitLab CI with Conan packages ## Using GitLab CI with Conan packages
> [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/11678) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.7.
To work with Conan commands within [GitLab CI](./../../../ci/README.md), you can use To work with Conan commands within [GitLab CI](./../../../ci/README.md), you can use
`CI_JOB_TOKEN` in place of the personal access token in your commands. `CI_JOB_TOKEN` in place of the personal access token in your commands.
......
...@@ -151,21 +151,24 @@ There are 2 methods to specify a variable in a query or dashboard: ...@@ -151,21 +151,24 @@ There are 2 methods to specify a variable in a query or dashboard:
By default, all projects include a GitLab-defined Prometheus dashboard, which By default, all projects include a GitLab-defined Prometheus dashboard, which
includes a few key metrics, but you can also define your own custom dashboards. includes a few key metrics, but you can also define your own custom dashboards.
You may create a new file from scratch or duplicate a GitLab-defined Prometheus
dashboard.
NOTE: **Note:** NOTE: **Note:**
The custom metrics as defined below do not support alerts, unlike The custom metrics as defined below do not support alerts, unlike
[additional metrics](#adding-additional-metrics-premium). [additional metrics](#adding-additional-metrics-premium).
#### Adding a new dashboard to your project #### Adding a new dashboard to your project
You can configure a custom dashboard by adding a new `.yml` file into a project's repository. Only `.yml` files present in the projects **default** branch are displayed on the project's **Operations > Metrics** section. You can configure a custom dashboard by adding a new YAML file into your project's
`.gitlab/dashboards/` directory. In order for the dashboards to be displayed on
You may create a new file from scratch or duplicate a GitLab-defined dashboard. the project's **Operations > Metrics** page, the files must have a `.yml`
extension and should be present in the project's **default** branch.
**Add a `.yml` file manually** For example:
1. Create a YAML file with the `.yml` extension under your repository's root 1. Create `.gitlab/dashboards/prom_alerts.yml` under your repository's root
directory inside `.gitlab/dashboards/`. For example, create directory with the following contents:
`.gitlab/dashboards/prom_alerts.yml` with the following contents:
```yaml ```yaml
dashboard: 'Dashboard Title' dashboard: 'Dashboard Title'
...@@ -194,7 +197,7 @@ NOTE: **Note:** ...@@ -194,7 +197,7 @@ NOTE: **Note:**
Configuration files nested under subdirectories of `.gitlab/dashboards` are not Configuration files nested under subdirectories of `.gitlab/dashboards` are not
supported and will not be available in the UI. supported and will not be available in the UI.
**Duplicate a GitLab-defined dashboard as a new `.yml` file** #### Duplicating a GitLab-defined dashboard
> [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/37238) in GitLab 12.7. > [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/37238) in GitLab 12.7.
......
...@@ -10,7 +10,7 @@ module RspecFlaky ...@@ -10,7 +10,7 @@ module RspecFlaky
# This class is responsible for loading/saving JSON reports, and pruning # This class is responsible for loading/saving JSON reports, and pruning
# outdated examples. # outdated examples.
class Report < SimpleDelegator class Report < SimpleDelegator
OUTDATED_DAYS_THRESHOLD = 90 OUTDATED_DAYS_THRESHOLD = 30
attr_reader :flaky_examples attr_reader :flaky_examples
......
...@@ -8097,6 +8097,11 @@ msgstr "" ...@@ -8097,6 +8097,11 @@ msgstr ""
msgid "Fetching licenses failed. You are not permitted to perform this action." msgid "Fetching licenses failed. You are not permitted to perform this action."
msgstr "" msgstr ""
msgid "File"
msgid_plural "Files"
msgstr[0] ""
msgstr[1] ""
msgid "File Hooks" msgid "File Hooks"
msgstr "" msgstr ""
...@@ -11680,10 +11685,10 @@ msgstr "" ...@@ -11680,10 +11685,10 @@ msgstr ""
msgid "MergeRequest|Error loading full diff. Please try again." msgid "MergeRequest|Error loading full diff. Please try again."
msgstr "" msgstr ""
msgid "MergeRequest|No files found" msgid "MergeRequest|Filter files or search with %{modifier_key}+p"
msgstr "" msgstr ""
msgid "MergeRequest|Search files (%{modifier_key}P)" msgid "MergeRequest|No files found"
msgstr "" msgstr ""
msgid "Merged" msgid "Merged"
...@@ -21778,9 +21783,6 @@ msgstr "" ...@@ -21778,9 +21783,6 @@ msgstr ""
msgid "among other things" msgid "among other things"
msgstr "" msgstr ""
msgid "and"
msgstr ""
msgid "any-approver for the merge request already exists" msgid "any-approver for the merge request already exists"
msgstr "" msgstr ""
...@@ -22220,11 +22222,6 @@ msgstr "" ...@@ -22220,11 +22222,6 @@ msgstr ""
msgid "failed to dismiss associated finding(id=%{finding_id}): %{message}" msgid "failed to dismiss associated finding(id=%{finding_id}): %{message}"
msgstr "" msgstr ""
msgid "file"
msgid_plural "files"
msgstr[0] ""
msgstr[1] ""
msgid "finding is not found or is already attached to a vulnerability" msgid "finding is not found or is already attached to a vulnerability"
msgstr "" msgstr ""
......
...@@ -24,5 +24,5 @@ puts "Current report has #{report.size} entries." ...@@ -24,5 +24,5 @@ puts "Current report has #{report.size} entries."
new_report = report.prune_outdated new_report = report.prune_outdated
puts "New report has #{new_report.size} entries: #{report.size - new_report.size} entries older than 90 days were removed." puts "New report has #{new_report.size} entries: #{report.size - new_report.size} entries older than #{RspecFlaky::Report::OUTDATED_DAYS_THRESHOLD} days were removed."
puts "Saved #{new_report_file}." if new_report.write(new_report_file) puts "Saved #{new_report_file}." if new_report.write(new_report_file)
...@@ -25,7 +25,7 @@ function update_tests_metadata() { ...@@ -25,7 +25,7 @@ function update_tests_metadata() {
scripts/merge-reports "${FLAKY_RSPEC_SUITE_REPORT_PATH}" rspec_flaky/all_*.json scripts/merge-reports "${FLAKY_RSPEC_SUITE_REPORT_PATH}" rspec_flaky/all_*.json
export FLAKY_RSPEC_GENERATE_REPORT="1" export FLAKY_RSPEC_GENERATE_REPORT="1"
scripts/prune-old-flaky-specs "${FLAKY_RSPEC_SUITE_REPORT_PATH}" scripts/flaky_examples/prune-old-flaky-examples "${FLAKY_RSPEC_SUITE_REPORT_PATH}"
if [[ -n ${TESTS_METADATA_S3_BUCKET} ]]; then if [[ -n ${TESTS_METADATA_S3_BUCKET} ]]; then
scripts/sync-reports put "${TESTS_METADATA_S3_BUCKET}" "${FLAKY_RSPEC_SUITE_REPORT_PATH}" scripts/sync-reports put "${TESTS_METADATA_S3_BUCKET}" "${FLAKY_RSPEC_SUITE_REPORT_PATH}"
......
...@@ -50,7 +50,7 @@ describe 'Merge request > User sees versions', :js do ...@@ -50,7 +50,7 @@ describe 'Merge request > User sees versions', :js do
expect(page).to have_content 'latest version' expect(page).to have_content 'latest version'
end end
expect(page).to have_content '8 files' expect(page).to have_content '8 Files'
end end
it_behaves_like 'allows commenting', it_behaves_like 'allows commenting',
...@@ -84,7 +84,7 @@ describe 'Merge request > User sees versions', :js do ...@@ -84,7 +84,7 @@ describe 'Merge request > User sees versions', :js do
end end
it 'shows comments that were last relevant at that version' do it 'shows comments that were last relevant at that version' do
expect(page).to have_content '5 files' expect(page).to have_content '5 Files'
position = Gitlab::Diff::Position.new( position = Gitlab::Diff::Position.new(
old_path: ".gitmodules", old_path: ".gitmodules",
...@@ -128,10 +128,12 @@ describe 'Merge request > User sees versions', :js do ...@@ -128,10 +128,12 @@ describe 'Merge request > User sees versions', :js do
diff_id: merge_request_diff3.id, diff_id: merge_request_diff3.id,
start_sha: '6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9' start_sha: '6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9'
) )
expect(page).to have_content '4 files' expect(page).to have_content '4 Files'
additions_content = page.find('.diff-stats.is-compare-versions-header .diff-stats-group .js-file-addition-line').text additions_content = page.find('.diff-stats.is-compare-versions-header .diff-stats-group svg.ic-file-addition')
deletions_content = page.find('.diff-stats.is-compare-versions-header .diff-stats-group .js-file-deletion-line').text .ancestor('.diff-stats-group').text
deletions_content = page.find('.diff-stats.is-compare-versions-header .diff-stats-group svg.ic-file-deletion')
.ancestor('.diff-stats-group').text
expect(additions_content).to eq '15' expect(additions_content).to eq '15'
expect(deletions_content).to eq '6' expect(deletions_content).to eq '6'
...@@ -154,10 +156,12 @@ describe 'Merge request > User sees versions', :js do ...@@ -154,10 +156,12 @@ describe 'Merge request > User sees versions', :js do
end end
it 'show diff between new and old version' do it 'show diff between new and old version' do
additions_content = page.find('.diff-stats.is-compare-versions-header .diff-stats-group .js-file-addition-line').text additions_content = page.find('.diff-stats.is-compare-versions-header .diff-stats-group svg.ic-file-addition')
deletions_content = page.find('.diff-stats.is-compare-versions-header .diff-stats-group .js-file-deletion-line').text .ancestor('.diff-stats-group').text
deletions_content = page.find('.diff-stats.is-compare-versions-header .diff-stats-group svg.ic-file-deletion')
.ancestor('.diff-stats-group').text
expect(page).to have_content '4 files' expect(page).to have_content '4 Files'
expect(additions_content).to eq '15' expect(additions_content).to eq '15'
expect(deletions_content).to eq '6' expect(deletions_content).to eq '6'
end end
...@@ -167,7 +171,7 @@ describe 'Merge request > User sees versions', :js do ...@@ -167,7 +171,7 @@ describe 'Merge request > User sees versions', :js do
page.within '.mr-version-dropdown' do page.within '.mr-version-dropdown' do
expect(page).to have_content 'latest version' expect(page).to have_content 'latest version'
end end
expect(page).to have_content '8 files' expect(page).to have_content '8 Files'
end end
it_behaves_like 'allows commenting', it_behaves_like 'allows commenting',
...@@ -193,7 +197,7 @@ describe 'Merge request > User sees versions', :js do ...@@ -193,7 +197,7 @@ describe 'Merge request > User sees versions', :js do
find('.btn-default').click find('.btn-default').click
click_link 'version 1' click_link 'version 1'
end end
expect(page).to have_content '0 files' expect(page).to have_content '0 Files'
end end
end end
...@@ -219,7 +223,7 @@ describe 'Merge request > User sees versions', :js do ...@@ -219,7 +223,7 @@ describe 'Merge request > User sees versions', :js do
expect(page).to have_content 'version 1' expect(page).to have_content 'version 1'
end end
expect(page).to have_content '0 files' expect(page).to have_content '0 Files'
end end
end end
......
...@@ -6,7 +6,7 @@ import eventHub from '~/boards/eventhub'; ...@@ -6,7 +6,7 @@ import eventHub from '~/boards/eventhub';
import { listObj, listObjDuplicate } from './mock_data'; import { listObj, listObjDuplicate } from './mock_data';
import ListIssue from '~/boards/models/issue'; import ListIssue from '~/boards/models/issue';
import '~/boards/models/list'; import List from '~/boards/models/list';
jest.mock('js-cookie'); jest.mock('js-cookie');
...@@ -190,6 +190,30 @@ describe('boardsStore', () => { ...@@ -190,6 +190,30 @@ describe('boardsStore', () => {
}); });
}); });
describe('saveList', () => {
let list;
beforeEach(() => {
list = new List(listObj);
setupDefaultResponses();
});
it('makes a request to save a list', () => {
const expectedResponse = expect.objectContaining({ issues: [createTestIssue()] });
const expectedListValue = {
id: listObj.id,
position: listObj.position,
type: listObj.list_type,
label: listObj.label,
};
expect(list.id).toBe(listObj.id);
expect(list.position).toBe(listObj.position);
expect(list).toMatchObject(expectedListValue);
return expect(boardsStore.saveList(list)).resolves.toEqual(expectedResponse);
});
});
describe('getIssuesForList', () => { describe('getIssuesForList', () => {
const id = 'TOO-MUCH'; const id = 'TOO-MUCH';
const url = `${endpoints.listsEndpoint}/${id}/issues?id=${id}`; const url = `${endpoints.listsEndpoint}/${id}/issues?id=${id}`;
......
...@@ -49,7 +49,8 @@ describe('CompareVersions', () => { ...@@ -49,7 +49,8 @@ describe('CompareVersions', () => {
expect(treeListBtn.exists()).toBe(true); expect(treeListBtn.exists()).toBe(true);
expect(treeListBtn.attributes('title')).toBe('Hide file browser'); expect(treeListBtn.attributes('title')).toBe('Hide file browser');
expect(treeListBtn.find(Icon).props('name')).toBe('file-tree'); expect(treeListBtn.findAll(Icon).length).not.toBe(0);
expect(treeListBtn.find(Icon).props('name')).toBe('collapse-left');
}); });
it('should render comparison dropdowns with correct values', () => { it('should render comparison dropdowns with correct values', () => {
......
import { shallowMount } from '@vue/test-utils'; import { shallowMount } from '@vue/test-utils';
import Icon from '~/vue_shared/components/icon.vue';
import DiffStats from '~/diffs/components/diff_stats.vue'; import DiffStats from '~/diffs/components/diff_stats.vue';
describe('diff_stats', () => { describe('diff_stats', () => {
...@@ -23,11 +24,18 @@ describe('diff_stats', () => { ...@@ -23,11 +24,18 @@ describe('diff_stats', () => {
}, },
}); });
const findFileLine = name => wrapper.find(name); const findIcon = name =>
const additions = findFileLine('.js-file-addition-line'); wrapper
const deletions = findFileLine('.js-file-deletion-line'); .findAll(Icon)
.filter(c => c.attributes('name') === name)
.at(0).element.parentNode;
expect(additions.text()).toBe('100'); const additions = findIcon('file-addition');
expect(deletions.text()).toBe('200'); const deletions = findIcon('file-deletion');
const filesChanged = findIcon('doc-code');
expect(additions.textContent).toContain('100');
expect(deletions.textContent).toContain('200');
expect(filesChanged.textContent).toContain('300');
}); });
}); });
...@@ -56,10 +56,10 @@ describe('Changed file icon', () => { ...@@ -56,10 +56,10 @@ describe('Changed file icon', () => {
describe.each` describe.each`
file | iconName | tooltipText | desc file | iconName | tooltipText | desc
${changedFile()} | ${'file-modified-solid'} | ${'Unstaged modification'} | ${'with file changed'} ${changedFile()} | ${'file-modified'} | ${'Unstaged modification'} | ${'with file changed'}
${stagedFile()} | ${'file-modified-solid'} | ${'Staged modification'} | ${'with file staged'} ${stagedFile()} | ${'file-modified-solid'} | ${'Staged modification'} | ${'with file staged'}
${changedAndStagedFile()} | ${'file-modified-solid'} | ${'Unstaged and staged modification'} | ${'with file changed and staged'} ${changedAndStagedFile()} | ${'file-modified'} | ${'Unstaged and staged modification'} | ${'with file changed and staged'}
${newFile()} | ${'file-addition-solid'} | ${'Unstaged addition'} | ${'with file new'} ${newFile()} | ${'file-addition'} | ${'Unstaged addition'} | ${'with file new'}
`('$desc', ({ file, iconName, tooltipText }) => { `('$desc', ({ file, iconName, tooltipText }) => {
beforeEach(() => { beforeEach(() => {
factory({ file }); factory({ file });
......
...@@ -93,13 +93,13 @@ describe('RepoTab', () => { ...@@ -93,13 +93,13 @@ describe('RepoTab', () => {
Vue.nextTick() Vue.nextTick()
.then(() => { .then(() => {
expect(vm.$el.querySelector('.file-modified-solid')).toBeNull(); expect(vm.$el.querySelector('.file-modified')).toBeNull();
vm.$el.dispatchEvent(new Event('mouseout')); vm.$el.dispatchEvent(new Event('mouseout'));
}) })
.then(Vue.nextTick) .then(Vue.nextTick)
.then(() => { .then(() => {
expect(vm.$el.querySelector('.file-modified-solid')).not.toBeNull(); expect(vm.$el.querySelector('.file-modified')).not.toBeNull();
done(); done();
}) })
......
...@@ -3,11 +3,11 @@ ...@@ -3,11 +3,11 @@
require 'spec_helper' require 'spec_helper'
describe RspecFlaky::Report, :aggregate_failures do describe RspecFlaky::Report, :aggregate_failures do
let(:a_hundred_days) { 3600 * 24 * 100 } let(:thirty_one_days) { 3600 * 24 * 31 }
let(:collection_hash) do let(:collection_hash) do
{ {
a: { example_id: 'spec/foo/bar_spec.rb:2' }, a: { example_id: 'spec/foo/bar_spec.rb:2' },
b: { example_id: 'spec/foo/baz_spec.rb:3', first_flaky_at: (Time.now - a_hundred_days).to_s, last_flaky_at: (Time.now - a_hundred_days).to_s } b: { example_id: 'spec/foo/baz_spec.rb:3', first_flaky_at: (Time.now - thirty_one_days).to_s, last_flaky_at: (Time.now - thirty_one_days).to_s }
} }
end end
let(:suite_flaky_example_report) do let(:suite_flaky_example_report) do
...@@ -109,7 +109,7 @@ describe RspecFlaky::Report, :aggregate_failures do ...@@ -109,7 +109,7 @@ describe RspecFlaky::Report, :aggregate_failures do
end end
describe '#prune_outdated' do describe '#prune_outdated' do
it 'returns a new collection without the examples older than 90 days by default' do it 'returns a new collection without the examples older than 30 days by default' do
new_report = flaky_examples.to_h.dup.tap { |r| r.delete(:b) } new_report = flaky_examples.to_h.dup.tap { |r| r.delete(:b) }
new_flaky_examples = report.prune_outdated new_flaky_examples = report.prune_outdated
...@@ -119,7 +119,7 @@ describe RspecFlaky::Report, :aggregate_failures do ...@@ -119,7 +119,7 @@ describe RspecFlaky::Report, :aggregate_failures do
end end
it 'accepts a given number of days' do it 'accepts a given number of days' do
new_flaky_examples = report.prune_outdated(days: 200) new_flaky_examples = report.prune_outdated(days: 32)
expect(new_flaky_examples.to_h).to eq(report.to_h) expect(new_flaky_examples.to_h).to eq(report.to_h)
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment