From 949c30d42b91a0dd3959a3ca303b8f76158a2556 Mon Sep 17 00:00:00 2001 From: Alexis Reigel Date: Thu, 7 Dec 2017 13:15:49 +0100 Subject: remove all .ico favicon variations, use png always the ci status icons are generated client side, wo we don't need the static files anymore. --- .../ci_favicons/dev/favicon_status_canceled.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/dev/favicon_status_created.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/dev/favicon_status_failed.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/dev/favicon_status_manual.ico | Bin 4286 -> 0 bytes .../ci_favicons/dev/favicon_status_not_found.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/dev/favicon_status_pending.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/dev/favicon_status_running.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/dev/favicon_status_skipped.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/dev/favicon_status_success.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/dev/favicon_status_warning.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_canceled.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_canceled.png | Bin 0 -> 864 bytes .../images/ci_favicons/favicon_status_created.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_created.png | Bin 0 -> 889 bytes .../images/ci_favicons/favicon_status_failed.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_failed.png | Bin 0 -> 1015 bytes .../images/ci_favicons/favicon_status_manual.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_manual.png | Bin 0 -> 1067 bytes .../images/ci_favicons/favicon_status_not_found.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_not_found.png | Bin 0 -> 945 bytes .../images/ci_favicons/favicon_status_pending.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_pending.png | Bin 0 -> 919 bytes .../images/ci_favicons/favicon_status_running.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_running.png | Bin 0 -> 1077 bytes .../images/ci_favicons/favicon_status_skipped.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_skipped.png | Bin 0 -> 923 bytes .../images/ci_favicons/favicon_status_success.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_success.png | Bin 0 -> 1044 bytes .../images/ci_favicons/favicon_status_warning.ico | Bin 4286 -> 0 bytes .../images/ci_favicons/favicon_status_warning.png | Bin 0 -> 830 bytes .../ci_favicons/overlays/favicon_status_canceled.png | Bin 864 -> 0 bytes .../ci_favicons/overlays/favicon_status_created.png | Bin 889 -> 0 bytes .../ci_favicons/overlays/favicon_status_failed.png | Bin 1015 -> 0 bytes .../ci_favicons/overlays/favicon_status_manual.png | Bin 1067 -> 0 bytes .../ci_favicons/overlays/favicon_status_not_found.png | Bin 945 -> 0 bytes .../ci_favicons/overlays/favicon_status_pending.png | Bin 919 -> 0 bytes .../ci_favicons/overlays/favicon_status_running.png | Bin 1077 -> 0 bytes .../ci_favicons/overlays/favicon_status_skipped.png | Bin 923 -> 0 bytes .../ci_favicons/overlays/favicon_status_success.png | Bin 1044 -> 0 bytes .../ci_favicons/overlays/favicon_status_warning.png | Bin 830 -> 0 bytes app/assets/images/favicon-blue.png | Bin 0 -> 1522 bytes app/assets/images/favicon-yellow.ico | Bin 5430 -> 0 bytes app/assets/images/favicon-yellow.png | Bin 0 -> 1667 bytes app/assets/images/favicon.ico | Bin 5430 -> 0 bytes app/assets/images/favicon.png | Bin 0 -> 1611 bytes app/assets/javascripts/favicon_admin.js | 2 +- .../vue_shared/components/file_icon/file_icon_map.js | 2 +- app/models/project_services/jira_service.rb | 2 +- doc/user/reserved_names.md | 2 +- lib/gitlab/favicon.rb | 9 ++++----- lib/gitlab/path_regex.rb | 2 +- public/favicon.ico | Bin 5430 -> 0 bytes public/favicon.png | Bin 0 -> 1611 bytes spec/controllers/projects/jobs_controller_spec.rb | 2 +- .../projects/merge_requests_controller_spec.rb | 2 +- .../controllers/projects/pipelines_controller_spec.rb | 2 +- .../user_creates_image_diff_notes_spec.rb | 2 +- spec/javascripts/jobs/mock_data.js | 4 ++-- spec/javascripts/pipelines/graph/mock_data.js | 18 +++++++++--------- spec/lib/gitlab/favicon_spec.rb | 10 +++++----- spec/models/project_services/jira_service_spec.rb | 2 +- spec/serializers/build_serializer_spec.rb | 4 ++-- spec/serializers/pipeline_serializer_spec.rb | 2 +- spec/serializers/status_entity_spec.rb | 6 +++--- spec/services/system_note_service_spec.rb | 6 +++--- 65 files changed, 39 insertions(+), 40 deletions(-) delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_canceled.ico delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_created.ico delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_failed.ico delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_manual.ico delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_not_found.ico delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_pending.ico delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_running.ico delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_skipped.ico delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_success.ico delete mode 100644 app/assets/images/ci_favicons/dev/favicon_status_warning.ico delete mode 100644 app/assets/images/ci_favicons/favicon_status_canceled.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_canceled.png delete mode 100644 app/assets/images/ci_favicons/favicon_status_created.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_created.png delete mode 100644 app/assets/images/ci_favicons/favicon_status_failed.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_failed.png delete mode 100644 app/assets/images/ci_favicons/favicon_status_manual.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_manual.png delete mode 100644 app/assets/images/ci_favicons/favicon_status_not_found.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_not_found.png delete mode 100644 app/assets/images/ci_favicons/favicon_status_pending.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_pending.png delete mode 100644 app/assets/images/ci_favicons/favicon_status_running.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_running.png delete mode 100644 app/assets/images/ci_favicons/favicon_status_skipped.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_skipped.png delete mode 100644 app/assets/images/ci_favicons/favicon_status_success.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_success.png delete mode 100644 app/assets/images/ci_favicons/favicon_status_warning.ico create mode 100644 app/assets/images/ci_favicons/favicon_status_warning.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_canceled.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_created.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_failed.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_manual.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_not_found.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_pending.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_running.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_skipped.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_success.png delete mode 100644 app/assets/images/ci_favicons/overlays/favicon_status_warning.png create mode 100644 app/assets/images/favicon-blue.png delete mode 100644 app/assets/images/favicon-yellow.ico create mode 100644 app/assets/images/favicon-yellow.png delete mode 100644 app/assets/images/favicon.ico create mode 100644 app/assets/images/favicon.png delete mode 100644 public/favicon.ico create mode 100644 public/favicon.png diff --git a/app/assets/images/ci_favicons/dev/favicon_status_canceled.ico b/app/assets/images/ci_favicons/dev/favicon_status_canceled.ico deleted file mode 100644 index 4af3582b60d..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_canceled.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/dev/favicon_status_created.ico b/app/assets/images/ci_favicons/dev/favicon_status_created.ico deleted file mode 100644 index 13639da2e8a..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_created.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/dev/favicon_status_failed.ico b/app/assets/images/ci_favicons/dev/favicon_status_failed.ico deleted file mode 100644 index 5f0e711b104..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_failed.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/dev/favicon_status_manual.ico b/app/assets/images/ci_favicons/dev/favicon_status_manual.ico deleted file mode 100644 index 8b1168a1267..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_manual.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/dev/favicon_status_not_found.ico b/app/assets/images/ci_favicons/dev/favicon_status_not_found.ico deleted file mode 100644 index ed19b69e1c5..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_not_found.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/dev/favicon_status_pending.ico b/app/assets/images/ci_favicons/dev/favicon_status_pending.ico deleted file mode 100644 index 5dfefd4cc5a..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_pending.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/dev/favicon_status_running.ico b/app/assets/images/ci_favicons/dev/favicon_status_running.ico deleted file mode 100644 index a41539c0e3e..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_running.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/dev/favicon_status_skipped.ico b/app/assets/images/ci_favicons/dev/favicon_status_skipped.ico deleted file mode 100644 index 2c1ae552b93..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_skipped.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/dev/favicon_status_success.ico b/app/assets/images/ci_favicons/dev/favicon_status_success.ico deleted file mode 100644 index 70f0ca61eca..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_success.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/dev/favicon_status_warning.ico b/app/assets/images/ci_favicons/dev/favicon_status_warning.ico deleted file mode 100644 index db289e03eb1..00000000000 Binary files a/app/assets/images/ci_favicons/dev/favicon_status_warning.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_canceled.ico b/app/assets/images/ci_favicons/favicon_status_canceled.ico deleted file mode 100644 index 23adcffff50..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_canceled.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_canceled.png b/app/assets/images/ci_favicons/favicon_status_canceled.png new file mode 100644 index 00000000000..8adaa9c600b Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_canceled.png differ diff --git a/app/assets/images/ci_favicons/favicon_status_created.ico b/app/assets/images/ci_favicons/favicon_status_created.ico deleted file mode 100644 index f9d93b390d8..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_created.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_created.png b/app/assets/images/ci_favicons/favicon_status_created.png new file mode 100644 index 00000000000..ca788dd0034 Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_created.png differ diff --git a/app/assets/images/ci_favicons/favicon_status_failed.ico b/app/assets/images/ci_favicons/favicon_status_failed.ico deleted file mode 100644 index 28a22ebf724..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_failed.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_failed.png b/app/assets/images/ci_favicons/favicon_status_failed.png new file mode 100644 index 00000000000..93f1e2772fd Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_failed.png differ diff --git a/app/assets/images/ci_favicons/favicon_status_manual.ico b/app/assets/images/ci_favicons/favicon_status_manual.ico deleted file mode 100644 index dbbf1abf30c..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_manual.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_manual.png b/app/assets/images/ci_favicons/favicon_status_manual.png new file mode 100644 index 00000000000..c926062c806 Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_manual.png differ diff --git a/app/assets/images/ci_favicons/favicon_status_not_found.ico b/app/assets/images/ci_favicons/favicon_status_not_found.ico deleted file mode 100644 index 49b9b232dd1..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_not_found.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_not_found.png b/app/assets/images/ci_favicons/favicon_status_not_found.png new file mode 100644 index 00000000000..df3049315a9 Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_not_found.png differ diff --git a/app/assets/images/ci_favicons/favicon_status_pending.ico b/app/assets/images/ci_favicons/favicon_status_pending.ico deleted file mode 100644 index 05962f3f148..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_pending.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_pending.png b/app/assets/images/ci_favicons/favicon_status_pending.png new file mode 100644 index 00000000000..f7d67d4a230 Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_pending.png differ diff --git a/app/assets/images/ci_favicons/favicon_status_running.ico b/app/assets/images/ci_favicons/favicon_status_running.ico deleted file mode 100644 index 7fa3d4d48d4..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_running.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_running.png b/app/assets/images/ci_favicons/favicon_status_running.png new file mode 100644 index 00000000000..ff4167c4b20 Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_running.png differ diff --git a/app/assets/images/ci_favicons/favicon_status_skipped.ico b/app/assets/images/ci_favicons/favicon_status_skipped.ico deleted file mode 100644 index b0c26b62068..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_skipped.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_skipped.png b/app/assets/images/ci_favicons/favicon_status_skipped.png new file mode 100644 index 00000000000..a9c36464b69 Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_skipped.png differ diff --git a/app/assets/images/ci_favicons/favicon_status_success.ico b/app/assets/images/ci_favicons/favicon_status_success.ico deleted file mode 100644 index b150960b5be..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_success.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_success.png b/app/assets/images/ci_favicons/favicon_status_success.png new file mode 100644 index 00000000000..bcc30c73f5f Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_success.png differ diff --git a/app/assets/images/ci_favicons/favicon_status_warning.ico b/app/assets/images/ci_favicons/favicon_status_warning.ico deleted file mode 100644 index 7e71d71684d..00000000000 Binary files a/app/assets/images/ci_favicons/favicon_status_warning.ico and /dev/null differ diff --git a/app/assets/images/ci_favicons/favicon_status_warning.png b/app/assets/images/ci_favicons/favicon_status_warning.png new file mode 100644 index 00000000000..6db3b0280f5 Binary files /dev/null and b/app/assets/images/ci_favicons/favicon_status_warning.png differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_canceled.png b/app/assets/images/ci_favicons/overlays/favicon_status_canceled.png deleted file mode 100644 index 8adaa9c600b..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_canceled.png and /dev/null differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_created.png b/app/assets/images/ci_favicons/overlays/favicon_status_created.png deleted file mode 100644 index ca788dd0034..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_created.png and /dev/null differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_failed.png b/app/assets/images/ci_favicons/overlays/favicon_status_failed.png deleted file mode 100644 index 93f1e2772fd..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_failed.png and /dev/null differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_manual.png b/app/assets/images/ci_favicons/overlays/favicon_status_manual.png deleted file mode 100644 index c926062c806..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_manual.png and /dev/null differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_not_found.png b/app/assets/images/ci_favicons/overlays/favicon_status_not_found.png deleted file mode 100644 index df3049315a9..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_not_found.png and /dev/null differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_pending.png b/app/assets/images/ci_favicons/overlays/favicon_status_pending.png deleted file mode 100644 index f7d67d4a230..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_pending.png and /dev/null differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_running.png b/app/assets/images/ci_favicons/overlays/favicon_status_running.png deleted file mode 100644 index ff4167c4b20..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_running.png and /dev/null differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_skipped.png b/app/assets/images/ci_favicons/overlays/favicon_status_skipped.png deleted file mode 100644 index a9c36464b69..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_skipped.png and /dev/null differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_success.png b/app/assets/images/ci_favicons/overlays/favicon_status_success.png deleted file mode 100644 index bcc30c73f5f..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_success.png and /dev/null differ diff --git a/app/assets/images/ci_favicons/overlays/favicon_status_warning.png b/app/assets/images/ci_favicons/overlays/favicon_status_warning.png deleted file mode 100644 index 6db3b0280f5..00000000000 Binary files a/app/assets/images/ci_favicons/overlays/favicon_status_warning.png and /dev/null differ diff --git a/app/assets/images/favicon-blue.png b/app/assets/images/favicon-blue.png new file mode 100644 index 00000000000..2229fe79462 Binary files /dev/null and b/app/assets/images/favicon-blue.png differ diff --git a/app/assets/images/favicon-yellow.ico b/app/assets/images/favicon-yellow.ico deleted file mode 100644 index b650f277fb6..00000000000 Binary files a/app/assets/images/favicon-yellow.ico and /dev/null differ diff --git a/app/assets/images/favicon-yellow.png b/app/assets/images/favicon-yellow.png new file mode 100644 index 00000000000..2d5289818b4 Binary files /dev/null and b/app/assets/images/favicon-yellow.png differ diff --git a/app/assets/images/favicon.ico b/app/assets/images/favicon.ico deleted file mode 100644 index 3479cbbb46f..00000000000 Binary files a/app/assets/images/favicon.ico and /dev/null differ diff --git a/app/assets/images/favicon.png b/app/assets/images/favicon.png new file mode 100644 index 00000000000..845e0ec34a5 Binary files /dev/null and b/app/assets/images/favicon.png differ diff --git a/app/assets/javascripts/favicon_admin.js b/app/assets/javascripts/favicon_admin.js index 6b2dcf4502e..97e87054ce0 100644 --- a/app/assets/javascripts/favicon_admin.js +++ b/app/assets/javascripts/favicon_admin.js @@ -4,7 +4,7 @@ export default class FaviconAdmin { constructor() { const faviconContainer = $('.js-favicons'); const faviconUrl = faviconContainer.data('favicon'); - const overlayUrls = faviconContainer.data('status-overlays'); + const overlayUrls = faviconContainer.data('status-overlays') || []; overlayUrls.forEach((statusOverlay) => { createOverlayIcon(faviconUrl, statusOverlay).then((faviconWithOverlayUrl) => { diff --git a/app/assets/javascripts/vue_shared/components/file_icon/file_icon_map.js b/app/assets/javascripts/vue_shared/components/file_icon/file_icon_map.js index 9ffbaae3ea5..9bca1993ccc 100644 --- a/app/assets/javascripts/vue_shared/components/file_icon/file_icon_map.js +++ b/app/assets/javascripts/vue_shared/components/file_icon/file_icon_map.js @@ -513,7 +513,7 @@ const fileNameIcons = { 'credits.md': 'credits', 'credits.md.rendered': 'credits', '.flowconfig': 'flow', - 'favicon.ico': 'favicon', + 'favicon.png': 'favicon', 'karma.conf.js': 'karma', 'karma.conf.ts': 'karma', 'karma.conf.coffee': 'karma', diff --git a/app/models/project_services/jira_service.rb b/app/models/project_services/jira_service.rb index eb3261c902f..2edfe7d81f8 100644 --- a/app/models/project_services/jira_service.rb +++ b/app/models/project_services/jira_service.rb @@ -265,7 +265,7 @@ class JiraService < IssueTrackerService title: title, status: status, icon: { - title: 'GitLab', url16x16: asset_url('favicon.ico', host: gitlab_config.url) + title: 'GitLab', url16x16: asset_url('favicon.png', host: gitlab_config.url) } } } diff --git a/doc/user/reserved_names.md b/doc/user/reserved_names.md index 50ec99be48b..6c1378560ef 100644 --- a/doc/user/reserved_names.md +++ b/doc/user/reserved_names.md @@ -58,7 +58,7 @@ Currently the following names are reserved as top level groups: - dashboard - deploy.html - explore -- favicon.ico +- favicon.png - groups - header_logo_dark.png - header_logo_light.png diff --git a/lib/gitlab/favicon.rb b/lib/gitlab/favicon.rb index e28d4c67661..d0178d0fdf9 100644 --- a/lib/gitlab/favicon.rb +++ b/lib/gitlab/favicon.rb @@ -3,16 +3,15 @@ module Gitlab class << self def main return custom_favicon_url(appearance_favicon.favicon_main.url) if appearance_favicon.exists? - return 'favicon-yellow.ico' if Gitlab::Utils.to_boolean(ENV['CANARY']) - return 'favicon-blue.ico' if Rails.env.development? + return ActionController::Base.helpers.image_path('favicon-yellow.png') if Gitlab::Utils.to_boolean(ENV['CANARY']) + return ActionController::Base.helpers.image_path('favicon-blue.png') if Rails.env.development? - 'favicon.ico' + ActionController::Base.helpers.image_path('favicon.png') end def status_overlay(status_name) path = File.join( 'ci_favicons', - 'overlays', "#{status_name}.png" ) @@ -27,7 +26,7 @@ module Gitlab def available_status_names @available_status_names ||= begin - Dir.glob(Rails.root.join('app', 'assets', 'images', 'ci_favicons', 'overlays', "*.png")) + Dir.glob(Rails.root.join('app', 'assets', 'images', 'ci_favicons', '*.png')) .map { |file| File.basename(file, '.png') } .sort end diff --git a/lib/gitlab/path_regex.rb b/lib/gitlab/path_regex.rb index 4dc38aae61e..e5191f5c7f9 100644 --- a/lib/gitlab/path_regex.rb +++ b/lib/gitlab/path_regex.rb @@ -30,7 +30,7 @@ module Gitlab dashboard deploy.html explore - favicon.ico + favicon.png files groups health_check diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index 3479cbbb46f..00000000000 Binary files a/public/favicon.ico and /dev/null differ diff --git a/public/favicon.png b/public/favicon.png new file mode 100644 index 00000000000..845e0ec34a5 Binary files /dev/null and b/public/favicon.png differ diff --git a/spec/controllers/projects/jobs_controller_spec.rb b/spec/controllers/projects/jobs_controller_spec.rb index a08fcea27a5..06c8a432561 100644 --- a/spec/controllers/projects/jobs_controller_spec.rb +++ b/spec/controllers/projects/jobs_controller_spec.rb @@ -265,7 +265,7 @@ describe Projects::JobsController, :clean_gitlab_redis_shared_state do expect(json_response['text']).to eq status.text expect(json_response['label']).to eq status.label expect(json_response['icon']).to eq status.icon - expect(json_response['favicon']).to match_asset_path "/assets/ci_favicons/#{status.favicon}.ico" + expect(json_response['favicon']).to match_asset_path "/assets/ci_favicons/#{status.favicon}.png" end end diff --git a/spec/controllers/projects/merge_requests_controller_spec.rb b/spec/controllers/projects/merge_requests_controller_spec.rb index 6e8de6db9c3..eb83884d54e 100644 --- a/spec/controllers/projects/merge_requests_controller_spec.rb +++ b/spec/controllers/projects/merge_requests_controller_spec.rb @@ -681,7 +681,7 @@ describe Projects::MergeRequestsController do expect(json_response['text']).to eq status.text expect(json_response['label']).to eq status.label expect(json_response['icon']).to eq status.icon - expect(json_response['favicon']).to match_asset_path "/assets/ci_favicons/#{status.favicon}.ico" + expect(json_response['favicon']).to match_asset_path "/assets/ci_favicons/#{status.favicon}.png" end end diff --git a/spec/controllers/projects/pipelines_controller_spec.rb b/spec/controllers/projects/pipelines_controller_spec.rb index 9e7bc20a6d1..c524f5d7f8a 100644 --- a/spec/controllers/projects/pipelines_controller_spec.rb +++ b/spec/controllers/projects/pipelines_controller_spec.rb @@ -190,7 +190,7 @@ describe Projects::PipelinesController do expect(json_response['text']).to eq status.text expect(json_response['label']).to eq status.label expect(json_response['icon']).to eq status.icon - expect(json_response['favicon']).to match_asset_path("/assets/ci_favicons/#{status.favicon}.ico") + expect(json_response['favicon']).to match_asset_path("/assets/ci_favicons/#{status.favicon}.png") end end diff --git a/spec/features/merge_request/user_creates_image_diff_notes_spec.rb b/spec/features/merge_request/user_creates_image_diff_notes_spec.rb index 7c4fd25bb39..25c408516d1 100644 --- a/spec/features/merge_request/user_creates_image_diff_notes_spec.rb +++ b/spec/features/merge_request/user_creates_image_diff_notes_spec.rb @@ -12,7 +12,7 @@ feature 'Merge request > User creates image diff notes', :js do # Stub helper to return any blob file as image from public app folder. # This is necessary to run this specs since we don't display repo images in capybara. allow_any_instance_of(DiffHelper).to receive(:diff_file_blob_raw_url).and_return('/apple-touch-icon.png') - allow_any_instance_of(DiffHelper).to receive(:diff_file_old_blob_raw_url).and_return('/favicon.ico') + allow_any_instance_of(DiffHelper).to receive(:diff_file_old_blob_raw_url).and_return('/favicon.png') end context 'create commit diff notes' do diff --git a/spec/javascripts/jobs/mock_data.js b/spec/javascripts/jobs/mock_data.js index 25ca8eb6c0b..dd025255bd1 100644 --- a/spec/javascripts/jobs/mock_data.js +++ b/spec/javascripts/jobs/mock_data.js @@ -20,7 +20,7 @@ export default { group: 'success', has_details: true, details_path: '/root/ci-mock/-/jobs/4757', - favicon: '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + favicon: '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', action: { icon: 'retry', title: 'Retry', @@ -78,7 +78,7 @@ export default { group: 'success', has_details: true, details_path: '/root/ci-mock/pipelines/140', - favicon: '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + favicon: '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', }, duration: 6, finished_at: '2017-06-01T17:32:00.042Z', diff --git a/spec/javascripts/pipelines/graph/mock_data.js b/spec/javascripts/pipelines/graph/mock_data.js index 70eba98e939..9e25a4b3fed 100644 --- a/spec/javascripts/pipelines/graph/mock_data.js +++ b/spec/javascripts/pipelines/graph/mock_data.js @@ -20,7 +20,7 @@ export default { has_details: true, details_path: '/root/ci-mock/pipelines/123', favicon: - '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', }, duration: 9, finished_at: '2017-04-19T14:30:27.542Z', @@ -40,7 +40,7 @@ export default { has_details: true, details_path: '/root/ci-mock/builds/4153', favicon: - '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', action: { icon: 'retry', title: 'Retry', @@ -65,7 +65,7 @@ export default { has_details: true, details_path: '/root/ci-mock/builds/4153', favicon: - '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', action: { icon: 'retry', title: 'Retry', @@ -85,7 +85,7 @@ export default { has_details: true, details_path: '/root/ci-mock/pipelines/123#test', favicon: - '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', }, path: '/root/ci-mock/pipelines/123#test', dropdown_path: '/root/ci-mock/pipelines/123/stage.json?stage=test', @@ -105,7 +105,7 @@ export default { has_details: true, details_path: '/root/ci-mock/builds/4166', favicon: - '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', action: { icon: 'retry', title: 'Retry', @@ -130,7 +130,7 @@ export default { has_details: true, details_path: '/root/ci-mock/builds/4166', favicon: - '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', action: { icon: 'retry', title: 'Retry', @@ -152,7 +152,7 @@ export default { has_details: true, details_path: '/root/ci-mock/builds/4159', favicon: - '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', action: { icon: 'retry', title: 'Retry', @@ -177,7 +177,7 @@ export default { has_details: true, details_path: '/root/ci-mock/builds/4159', favicon: - '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', action: { icon: 'retry', title: 'Retry', @@ -197,7 +197,7 @@ export default { has_details: true, details_path: '/root/ci-mock/pipelines/123#deploy', favicon: - '/assets/ci_favicons/dev/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.ico', + '/assets/ci_favicons/favicon_status_success-308b4fc054cdd1b68d0865e6cfb7b02e92e3472f201507418f8eddb74ac11a59.png', }, path: '/root/ci-mock/pipelines/123#deploy', dropdown_path: '/root/ci-mock/pipelines/123/stage.json?stage=deploy', diff --git a/spec/lib/gitlab/favicon_spec.rb b/spec/lib/gitlab/favicon_spec.rb index 22b9c631ed8..fdc5c0180e4 100644 --- a/spec/lib/gitlab/favicon_spec.rb +++ b/spec/lib/gitlab/favicon_spec.rb @@ -2,19 +2,19 @@ require 'rails_helper' RSpec.describe Gitlab::Favicon, :request_store do describe '.main' do - it 'defaults to favicon.ico' do + it 'defaults to favicon.png' do allow(Rails).to receive(:env).and_return(ActiveSupport::StringInquirer.new('production')) - expect(described_class.main).to eq 'favicon.ico' + expect(described_class.main).to match_asset_path '/assets/favicon.png' end it 'has blue favicon for development' do allow(Rails).to receive(:env).and_return(ActiveSupport::StringInquirer.new('development')) - expect(described_class.main).to eq 'favicon-blue.ico' + expect(described_class.main).to match_asset_path '/assets/favicon-blue.png' end it 'has yellow favicon for canary' do stub_env('CANARY', 'true') - expect(described_class.main).to eq 'favicon-yellow.ico' + expect(described_class.main).to match_asset_path 'favicon-yellow.png' end it 'uses the custom favicon if a favicon appearance is present' do @@ -27,7 +27,7 @@ RSpec.describe Gitlab::Favicon, :request_store do subject { described_class.status_overlay('favicon_status_created') } it 'returns the overlay for the status' do - expect(subject).to eq '/assets/ci_favicons/overlays/favicon_status_created.png' + expect(subject).to match_asset_path '/assets/ci_favicons/favicon_status_created.png' end end diff --git a/spec/models/project_services/jira_service_spec.rb b/spec/models/project_services/jira_service_spec.rb index 54ef0be67ff..3a6a6c116c2 100644 --- a/spec/models/project_services/jira_service_spec.rb +++ b/spec/models/project_services/jira_service_spec.rb @@ -173,7 +173,7 @@ describe JiraService do object: { url: "#{Gitlab.config.gitlab.url}/#{project.full_path}/commit/#{merge_request.diff_head_sha}", title: "GitLab: Solved by commit #{merge_request.diff_head_sha}.", - icon: { title: "GitLab", url16x16: "http://localhost/favicon.ico" }, + icon: { title: "GitLab", url16x16: "http://localhost/favicon.png" }, status: { resolved: true } } ) diff --git a/spec/serializers/build_serializer_spec.rb b/spec/serializers/build_serializer_spec.rb index 98cd15e248b..52459cd369d 100644 --- a/spec/serializers/build_serializer_spec.rb +++ b/spec/serializers/build_serializer_spec.rb @@ -39,7 +39,7 @@ describe BuildSerializer do expect(subject[:label]).to eq('failed') expect(subject[:tooltip]).to eq('failed
(unknown failure)') expect(subject[:icon]).to eq(status.icon) - expect(subject[:favicon]).to match_asset_path("/assets/ci_favicons/#{status.favicon}.ico") + expect(subject[:favicon]).to match_asset_path("/assets/ci_favicons/#{status.favicon}.png") end end @@ -54,7 +54,7 @@ describe BuildSerializer do expect(subject[:label]).to eq('passed') expect(subject[:tooltip]).to eq('passed') expect(subject[:icon]).to eq(status.icon) - expect(subject[:favicon]).to match_asset_path("/assets/ci_favicons/#{status.favicon}.ico") + expect(subject[:favicon]).to match_asset_path("/assets/ci_favicons/#{status.favicon}.png") end end end diff --git a/spec/serializers/pipeline_serializer_spec.rb b/spec/serializers/pipeline_serializer_spec.rb index b741308e2c5..33c8213f9a7 100644 --- a/spec/serializers/pipeline_serializer_spec.rb +++ b/spec/serializers/pipeline_serializer_spec.rb @@ -174,7 +174,7 @@ describe PipelineSerializer do expect(subject[:text]).to eq(status.text) expect(subject[:label]).to eq(status.label) expect(subject[:icon]).to eq(status.icon) - expect(subject[:favicon]).to match_asset_path("/assets/ci_favicons/#{status.favicon}.ico") + expect(subject[:favicon]).to match_asset_path("/assets/ci_favicons/#{status.favicon}.png") end end end diff --git a/spec/serializers/status_entity_spec.rb b/spec/serializers/status_entity_spec.rb index 559475e571c..73f81405d54 100644 --- a/spec/serializers/status_entity_spec.rb +++ b/spec/serializers/status_entity_spec.rb @@ -18,17 +18,17 @@ describe StatusEntity do it 'contains status details' do expect(subject).to include :text, :icon, :favicon, :label, :group, :tooltip expect(subject).to include :has_details, :details_path - expect(subject[:favicon]).to match_asset_path('/assets/ci_favicons/favicon_status_success.ico') + expect(subject[:favicon]).to match_asset_path('/assets/ci_favicons/favicon_status_success.png') end it 'contains a dev namespaced favicon if dev env' do allow(Rails.env).to receive(:development?) { true } - expect(entity.as_json[:favicon]).to match_asset_path('/assets/ci_favicons/dev/favicon_status_success.ico') + expect(entity.as_json[:favicon]).to match_asset_path('/assets/ci_favicons/favicon_status_success.png') end it 'contains a canary namespaced favicon if canary env' do stub_env('CANARY', 'true') - expect(entity.as_json[:favicon]).to match_asset_path('/assets/ci_favicons/canary/favicon_status_success.ico') + expect(entity.as_json[:favicon]).to match_asset_path('/assets/ci_favicons/canary/favicon_status_success.png') end end end diff --git a/spec/services/system_note_service_spec.rb b/spec/services/system_note_service_spec.rb index e28b0ea5cf2..b7f38874c26 100644 --- a/spec/services/system_note_service_spec.rb +++ b/spec/services/system_note_service_spec.rb @@ -789,7 +789,7 @@ describe SystemNoteService do object: { url: project_commit_url(project, commit), title: "GitLab: Mentioned on commit - #{commit.title}", - icon: { title: "GitLab", url16x16: "http://localhost/favicon.ico" }, + icon: { title: "GitLab", url16x16: "http://localhost/favicon.png" }, status: { resolved: false } } ) @@ -815,7 +815,7 @@ describe SystemNoteService do object: { url: project_issue_url(project, issue), title: "GitLab: Mentioned on issue - #{issue.title}", - icon: { title: "GitLab", url16x16: "http://localhost/favicon.ico" }, + icon: { title: "GitLab", url16x16: "http://localhost/favicon.png" }, status: { resolved: false } } ) @@ -841,7 +841,7 @@ describe SystemNoteService do object: { url: project_snippet_url(project, snippet), title: "GitLab: Mentioned on snippet - #{snippet.title}", - icon: { title: "GitLab", url16x16: "http://localhost/favicon.ico" }, + icon: { title: "GitLab", url16x16: "http://localhost/favicon.png" }, status: { resolved: false } } ) -- cgit v1.2.3