New URLs for Project Badges

Hi, all. For lifters who are using badges on their READMEs, we’re making a change. Before, the URLs started with /badges/github and only worked with GitHub repositories. We’ve now changed that so any lifted package can have a badge with the format /badges/package/{platform}/{name}. Visit the Tell Potential Subscribers task for your package to pick up the new badge URL.


If you’ve already completed the task, you’ll find it in your Completed Tasks list:


We’ll be discontinuing the old badges next Wednesday and the old URLs will no longer work, so switch over now!

1 Like

Any chance we could keep the old badges working longer? They’ll cause a broken image on my PyPI page, and updating that page requires pushing a new release.

Generally speaking, URLs should work forever -

@nedbat, how much time do you need?

@ljharb, understandable, but keeping this old public endpoint working as-is is a potential security risk, and the new badges support more packages than just those with GitHub repositories.

I don’t have a specific timeline. I guess don’t keep it on my account. It will be a broken image, but the badge will be right on GitHub, and there are much larger Tidelift elements on the PyPI page.

+1 for “URLs should work forever”.[1]

This change broke my Tidelift badge images too. My badges are prominently shown at the top of my project’s home page, docs pages for existing release versions, PyPI release pages (which are now immutable, i.e. broken badges forever on those pages), as well as GitHub. So, many Tidelift maintainers now have a lot of different places they have to go update these URLs, and many places where they must leave them broken. Some more prominent examples: urllib3, setuptools, Pillow.

But broken badges make our projects look less professional and maintained, which in turn makes companies less likely to pay for the Tidelift subscription.

Tidelift should redirect from the old badge URLs to the new ones rather than break our badges. This would not pose a security risk. You have the data. Can you please consider doing this?

[1] In the rare case that there’s no way to avoid breaking URLs – which shouldn’t have been the case here – please give more than a week’s notice, especially during one of the most popular times of year for people to go on vacation.

[2] I was surprised to see Tidelift hasn’t yet submitted a PR to the simple-icons project to add the Tidelift logo. With that change, Tidelift would not have to resort to using a big, unwieldy data URL to get the logo to appear in the new badges.

i.e. It would allow something like this to work:

(see e.g. )

instead of:;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAOCAYAAADJ7fe0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAAWJQAAFiUBSVIk8AAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAAVhJREFUKBV1kj0vBFEUhmd2sdZHh2IlGhKFQuOviEYiNlFodCqtUqPxA%2FwCjUTnDygkGoVERFQaZFlE9nreO%2BdM5u5wkifvuee892Pu3CyEcA0DeIc%2B9IwftJsR6Cko3uCjguZdjuBZhhwmYDjGrOC96WED41UtsgEdGEAPlmAfpuAbFF%2BFZLfoMfRBGzThDtLgePPwBIpdddGzOArhPHUXowbNptE2www6a%2Fm96Y3pHN7oQ1s%2B13pxt1ENaKzBFWyWzaJ%2BRO0C9Jny6VPSoKjLVbMDC5bn5OPuJF%2BBSe95PVEMuugY5AegS9fCh7BedP45hRnj8TC34QQUe9bTZyh2KgvFk2vc8GIlXyTfsvqr6bPpNgv52ynnlomZJNpB70Xhl%2Bf6Sa02p1bApEfnETwxVa%2Faj%2BW%2FFtHltmxS%2FO3krvpTtTnVgu%2F6gvHRFvG78Ef3kOe5PimJXycY74blT5R%2BAAAAAElFTkSuQmCC

1 Like

We’ve put in redirects for the old badge URLs. We’ll be monitoring the usage of the old badge URLs and, once they drop off completely, we’ll get rid of them. We still ask that you move to the new URLs when possible, as they more accurately reflect that we’re focused on packages rather than GitHub repositories. If we’ve missed anybody, let me know and I’ll make sure we get them in there.

Additionally, next time we propose a change like this, we’ll give more notice. Thanks everyone for your feedback.