Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate to simple-icons slugs #4273

Closed
paulmelnikow opened this issue Oct 31, 2019 · 1 comment
Closed

Migrate to simple-icons slugs #4273

paulmelnikow opened this issue Oct 31, 2019 · 1 comment
Labels
core Server, BaseService, GitHub auth, Shared helpers

Comments

@paulmelnikow
Copy link
Member

Based on our request at simple-icons/simple-icons#1362 and simple-icons/simple-icons#1520, simple-icons is now shipping a canonical slug to go with each icon. As @chris48s put it in #3641 (comment):

This is nice because it means we've got a consistent slug on each object which is discoverable from the simpleicons website/repository/library. Adopting this would be easier for users because our slugs would match the ones used elsewhere.

However there's a downside:

The downside is that the slugs we've generated in the past are quite different for a lot of icons, so just switching from key.toLowerCase().replace(/ /g, '-') to simpleIcons[key].slug would break a lot of badges in the wild. This is a rough diff between our slugs and theirs:

This is a rough diff between our slugs and theirs:

--- oldslugs	2019-08-09 21:39:22.237364058 +0100
+++ newslugs	2019-08-09 21:40:35.632137692 +0100
@@ -3 +2,0 @@
-dev.to
@@ -6,3 +5 @@
-rollup.js
-webcomponents.org
-.net
+dot-net
@@ -10 +7 @@
-about.me
+about-dot-me
@@ -14,12 +11,12 @@
-adobe-acrobat-reader
-adobe-after-effects
-adobe-audition
-adobe-dreamweaver
-adobe-illustrator
-adobe-indesign
-adobe-lightroom-cc
-adobe-lightroom-classic
-adobe-photoshop
-adobe-premiere
-adobe-typekit
-adobe-xd
+adobeacrobatreader
+adobeaftereffects
+adobeaudition
+adobedreamweaver
+adobeillustrator
+adobeindesign
+adobelightroomcc
+adobelightroomclassic
+adobephotoshop
+adobepremiere
+adobetypekit
+adobexd
@@ -27 +24 @@
-allociné
+allocine
@@ -29 +26 @@
-amazon-aws
+amazonaws
@@ -31 +28 @@
-american-express
+americanexpress
@@ -35 +32 @@
-angular-universal
+angularuniversal
@@ -38 +35 @@
-apache-flink
+apacheflink
@@ -40,2 +37,2 @@
-apple-music
-apple-pay
+applemusic
+applepay
@@ -43,2 +40,2 @@
-arch-linux
-archive-of-our-own
+archlinux
+archiveofourown
@@ -49 +46 @@
-at&t
+at-and-t
@@ -56,2 +53,2 @@
-azure-devops
-azure-pipelines
+azuredevops
+azurepipelines
@@ -63 +60 @@
-bath-asu
+bathasu
@@ -66 +63 @@
-big-cartel
+bigcartel
@@ -79 +76 @@
-brand.ai
+brand-dot-ai
@@ -83 +80 @@
-buy-me-a-coffee
+buymeacoffee
@@ -86 +83 @@
-campaign-monitor
+campaignmonitor
@@ -88 +85 @@
-cash-app
+cashapp
@@ -96 +93 @@
-cirrus-ci
+cirrusci
@@ -105 +102 @@
-code-climate
+codeclimate
@@ -123,2 +120,2 @@
-adobe-creative-cloud
-creative-commons
+adobecreativecloud
+creativecommons
@@ -128,4 +125,4 @@
-css-wizardry
-common-workflow-language
-c++
-d3.js
+csswizardry
+commonworkflowlanguage
+cplusplus
+d3-dot-js
@@ -133 +130 @@
-dassault-systèmes
+dassaultsystemes
@@ -141 +138 @@
-designer-news
+designernews
@@ -143,0 +141 @@
+dev-dot-to
@@ -155 +153 @@
-draugiem.lv
+draugiem-dot-lv
@@ -166 +164 @@
-eclipse-ide
+eclipseide
@@ -168 +166 @@
-elastic-cloud
+elasticcloud
@@ -170 +168 @@
-elastic-stack
+elasticstack
@@ -174 +172 @@
-empire-kred
+empirekred
@@ -176 +174 @@
-epic-games
+epicgames
@@ -182 +180 @@
-event-store
+eventstore
@@ -185 +183 @@
-experts-exchange
+expertsexchange
@@ -194 +192 @@
-fido-alliance
+fidoalliance
@@ -209,2 +207,2 @@
-fur-affinity
-furry-network
+furaffinity
+furrynetwork
@@ -224,2 +222,2 @@
-gnu-social
-gog.com
+gnusocial
+gog-dot-com
@@ -230,12 +228,12 @@
-google-allo
-google-chrome
-google-cloud
-google-analytics
-google-drive
-google-hangouts
-google-hangouts-chat
-google-keep
-google-pay
-google-play
-google-podcasts
-gov.uk
+googleallo
+googlechrome
+googlecloud
+googleanalytics
+googledrive
+googlehangouts
+googlehangoutschat
+googlekeep
+googlepay
+googleplay
+googlepodcasts
+gov-dot-uk
@@ -259 +257 @@
-hatena-bookmark
+hatenabookmark
@@ -274 +272 @@
-humble-bundle
+humblebundle
@@ -287 +285 @@
-intellij-idea
+intellijidea
@@ -289 +287 @@
-internet-explorer
+internetexplorer
@@ -291 +289 @@
-itch.io
+itch-dot-io
@@ -311 +309 @@
-khan-academy
+khanacademy
@@ -325,2 +323,2 @@
-laravel-horizon
-last.fm
+laravelhorizon
+last-dot-fm
@@ -329 +327 @@
-let’s-encrypt
+letsencrypt
@@ -335 +333 @@
-line-webtoon
+linewebtoon
@@ -338 +336 @@
-linux-foundation
+linuxfoundation
@@ -343 +341 @@
-macy’s
+macys
@@ -347 +345 @@
-mail.ru
+mail-dot-ru
@@ -354 +352 @@
-material-design
+materialdesign
@@ -365 +363 @@
-micro.blog
+micro-dot-blog
@@ -368,10 +366,10 @@
-microsoft-access
-microsoft-azure
-microsoft-edge
-microsoft-excel
-microsoft-onedrive
-microsoft-onenote
-microsoft-outlook
-microsoft-powerpoint
-microsoft-word
-linux-mint
+microsoftaccess
+microsoftazure
+microsoftedge
+microsoftexcel
+microsoftonedrive
+microsoftonenote
+microsoftoutlook
+microsoftpowerpoint
+microsoftword
+linuxmint
@@ -384 +382 @@
-monkey-tie
+monkeytie
@@ -389,2 +387,2 @@
-mozilla-firefox
-mx-linux
+mozillafirefox
+mxlinux
@@ -397 +395 @@
-next.js
+next-dot-js
@@ -402,3 +400,3 @@
-nintendo-gamecube
-nintendo-switch
-node.js
+nintendogamecube
+nintendoswitch
+node-dot-js
@@ -409 +407 @@
-nuxt.js
+nuxt-dot-js
@@ -412 +410 @@
-octopus-deploy
+octopusdeploy
@@ -415 +413 @@
-open-access
+openaccess
@@ -433 +431 @@
-picarto.tv
+picarto-dot-tv
@@ -438 +436 @@
-pivotal-tracker
+pivotaltracker
@@ -440 +438 @@
-player.me
+player-dot-me
@@ -442,2 +440,2 @@
-playstation-3
-playstation-4
+playstation3
+playstation4
@@ -456,2 +454,2 @@
-product-hunt
-proto.io
+producthunt
+proto-dot-io
@@ -471 +469 @@
-raspberry-pi
+raspberrypi
@@ -473 +471 @@
-read-the-docs
+readthedocs
@@ -477 +475 @@
-red-hat
+redhat
@@ -483,0 +482 @@
+rollup-dot-js
@@ -493 +492 @@
-samsung-pay
+samsungpay
@@ -496 +495 @@
-sauce-labs
+saucelabs
@@ -500 +499 @@
-scrutinizer-ci
+scrutinizerci
@@ -505 +504 @@
-server-fault
+serverfault
@@ -509,2 +508,2 @@
-simple-icons
-sina-weibo
+simpleicons
+sinaweibo
@@ -518 +517 @@
-smashing-magazine
+smashingmagazine
@@ -534 +533 @@
-speaker-deck
+speakerdeck
@@ -540,2 +539,2 @@
-stack-exchange
-stack-overflow
+stackexchange
+stackoverflow
@@ -557 +556 @@
-sublime-text
+sublimetext
@@ -559 +558 @@
-super-user
+superuser
@@ -570,2 +569,2 @@
-tencent-qq
-tencent-weibo
+tencentqq
+tencentweibo
@@ -573,2 +572,2 @@
-the-mighty
-the-movie-database
+themighty
+themoviedatabase
@@ -576 +575 @@
-tik-tok
+tiktok
@@ -586 +585 @@
-travis-ci
+travisci
@@ -592 +591 @@
-turkish-airlines
+turkishairlines
@@ -607 +606 @@
-unreal-engine
+unrealengine
@@ -622 +621 @@
-visual-studio-code
+visualstudiocode
@@ -624 +623 @@
-vlc-media-player
+vlcmediaplayer
@@ -626 +625 @@
-vue.js
+vue-dot-js
@@ -629,0 +629 @@
+webcomponents-dot-org
@@ -633 +633 @@
-when-i-work
+wheniwork
@@ -635 +635 @@
-wii-u
+wiiu
@@ -641,2 +641,2 @@
-wolfram-language
-wolfram-mathematica
+wolframlanguage
+wolframmathematica
@@ -644 +644 @@
-wp-engine
+wpengine
@@ -651,2 +651,2 @@
-y-combinator
-yahoo!
+ycombinator
+yahoo

I think it's worth making this leap, as it ultimately will resolve the recurring issue: #3639 #3297 #2980, and preferable to refining our current approach (as initially proposed in #3641).

We need a plan for how to handle the deprecation. We got some feedback in #3635 about how we handled the last one (which I realize I've yet to take the time to respond to 🙈). Overall I think it's not in our mission to keep features forever, just so people don't need to adapt or update their badges, and some amount of steering people to new endpoints and parameters is okay. But lots of people are likely to find out about these changes only through the broken badges… and I don't know exactly how to prevent that (or to make it better).

In the short term we could produce an up-to-date diff and then hard-code aliases; I'm fine deferring to another day the rest of the deprecation plan.

As a side note, I'm also a fan of failing loudly when a parameter is wrong, which is never something we've done with logos or any of the other query parameters.

@calebcartwright
Copy link
Member

Closing as I believe this has subsequently been resolved via #6591

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core Server, BaseService, GitHub auth, Shared helpers
Projects
None yet
Development

No branches or pull requests

2 participants