Add our own versions of the icons, generated from script

This commit is contained in:
Joe Rickerby
2020-12-12 14:47:14 +00:00
parent dbb65f94bd
commit 84a4b0518f
12 changed files with 58 additions and 22 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ repos:
- id: check-merge-conflict - id: check-merge-conflict
- id: check-yaml - id: check-yaml
- id: end-of-file-fixer - id: end-of-file-fixer
exclude: cibuildwheel/resources/pinned_docker_images.cfg exclude: (cibuildwheel/resources/pinned_docker_images.cfg)|(.svg$)
- id: mixed-line-ending - id: mixed-line-ending
- id: trailing-whitespace - id: trailing-whitespace
+17 -17
View File
@@ -201,29 +201,29 @@ Here are some repos that use cibuildwheel.
[xmlstarlet]: https://github.com/dimitern/xmlstarlet [xmlstarlet]: https://github.com/dimitern/xmlstarlet
[pybind11 scikit_build_example]: https://github.com/pybind/scikit_build_example [pybind11 scikit_build_example]: https://github.com/pybind/scikit_build_example
[appveyor icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/appveyor.svg [appveyor icon]: docs/data/readme_icons/appveyor.svg
[github icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/github.svg [github icon]: docs/data/readme_icons/github.svg
[azurepipelines icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/azurepipelines.svg [azurepipelines icon]: docs/data/readme_icons/azurepipelines.svg
[circleci icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/circleci.svg [circleci icon]: docs/data/readme_icons/circleci.svg
[gitlab icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/gitlab.svg [gitlab icon]: docs/data/readme_icons/gitlab.svg
[travisci icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/travisci.svg [travisci icon]: docs/data/readme_icons/travisci.svg
[windows icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/windows.svg [windows icon]: docs/data/readme_icons/windows.svg
[apple icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/apple.svg [apple icon]: docs/data/readme_icons/apple.svg
[linux icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/linux.svg [linux icon]: docs/data/readme_icons/linux.svg
<!-- scikit-learn: 43356, last pushed 0 days ago --> <!-- scikit-learn: 43359, last pushed 0 days ago -->
<!-- Matplotlib: 12734, last pushed 0 days ago --> <!-- Matplotlib: 12734, last pushed 0 days ago -->
<!-- twisted-iocpsupport: 4107, last pushed 0 days ago --> <!-- twisted-iocpsupport: 4107, last pushed 0 days ago -->
<!-- scikit-image: 4085, last pushed 0 days ago --> <!-- scikit-image: 4085, last pushed 0 days ago -->
<!-- websockets: 3065, last pushed 0 days ago --> <!-- websockets: 3065, last pushed 0 days ago -->
<!-- pyzmq: 2655, last pushed 8 days ago --> <!-- pyzmq: 2655, last pushed 9 days ago -->
<!-- aiortc: 2058, last pushed 10 days ago --> <!-- aiortc: 2058, last pushed 10 days ago -->
<!-- h5py: 1451, last pushed 0 days ago --> <!-- h5py: 1451, last pushed 1 days ago -->
<!-- coverage.py: 1428, last pushed 3 days ago --> <!-- coverage.py: 1429, last pushed 3 days ago -->
<!-- River: 1173, last pushed 0 days ago --> <!-- River: 1174, last pushed 0 days ago -->
<!-- PyAV: 1107, last pushed 2 days ago --> <!-- PyAV: 1107, last pushed 2 days ago -->
<!-- google neuroglancer: 545, last pushed 2 days ago --> <!-- google neuroglancer: 545, last pushed 2 days ago -->
<!-- aioquic: 543, last pushed 37 days ago --> <!-- aioquic: 543, last pushed 38 days ago -->
<!-- AutoPy: 503, last pushed 94 days ago --> <!-- AutoPy: 503, last pushed 94 days ago -->
<!-- pikepdf: 477, last pushed 3 days ago --> <!-- pikepdf: 477, last pushed 3 days ago -->
<!-- Parselmouth: 429, last pushed 15 days ago --> <!-- Parselmouth: 429, last pushed 15 days ago -->
@@ -232,7 +232,7 @@ Here are some repos that use cibuildwheel.
<!-- pybind11 python_example: 219, last pushed 32 days ago --> <!-- pybind11 python_example: 219, last pushed 32 days ago -->
<!-- pybind11 cmake_example: 217, last pushed 16 days ago --> <!-- pybind11 cmake_example: 217, last pushed 16 days ago -->
<!-- iminuit: 164, last pushed 3 days ago --> <!-- iminuit: 164, last pushed 3 days ago -->
<!-- jq.py: 137, last pushed 61 days ago --> <!-- jq.py: 137, last pushed 62 days ago -->
<!-- bx-python: 95, last pushed 75 days ago --> <!-- bx-python: 95, last pushed 75 days ago -->
<!-- boost-histogram: 60, last pushed 0 days ago --> <!-- boost-histogram: 60, last pushed 0 days ago -->
<!-- pybase64: 52, last pushed 2 days ago --> <!-- pybase64: 52, last pushed 2 days ago -->
@@ -240,7 +240,7 @@ Here are some repos that use cibuildwheel.
<!-- etebase-py: 39, last pushed 0 days ago --> <!-- etebase-py: 39, last pushed 0 days ago -->
<!-- pyjet: 27, last pushed 17 days ago --> <!-- pyjet: 27, last pushed 17 days ago -->
<!-- numpythia: 23, last pushed 16 days ago --> <!-- numpythia: 23, last pushed 16 days ago -->
<!-- fathon: 17, last pushed 48 days ago --> <!-- fathon: 17, last pushed 49 days ago -->
<!-- pyinstrument_cext: 9, last pushed 17 days ago --> <!-- pyinstrument_cext: 9, last pushed 17 days ago -->
<!-- xmlstarlet: 7, last pushed 5 days ago --> <!-- xmlstarlet: 7, last pushed 5 days ago -->
<!-- pybind11 scikit_build_example: 1, last pushed 30 days ago --> <!-- pybind11 scikit_build_example: 1, last pushed 30 days ago -->
+31 -4
View File
@@ -5,7 +5,7 @@ Convert a yaml project list into a nice table.
Suggested usage: Suggested usage:
./bin/projects.py bin/projects.yml --online --auth $GITHUB_API_TOKEN --readme README.md ./bin/projects.py docs/data/projects.yml --online --auth $GITHUB_API_TOKEN --readme README.md
git diff git diff
""" """
@@ -18,6 +18,9 @@ from typing import Dict, Any, List, Optional, TextIO
import click import click
import yaml import yaml
from github import Github from github import Github
import urllib.request
import xml.dom.minidom
from pathlib import Path
ICONS = ( ICONS = (
@@ -110,12 +113,38 @@ class Project:
return f"<!-- {self.name}: {self.num_stars}, last pushed {days} days ago -->" return f"<!-- {self.name}: {self.num_stars}, last pushed {days} days ago -->"
def fetch_icon(icon_name: str) -> None:
url = f'https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/{icon_name}.svg'
with urllib.request.urlopen(url) as f:
original_svg_data = f.read()
document = xml.dom.minidom.parseString(original_svg_data)
svgElement = document.documentElement
assert svgElement.nodeName == 'svg'
svgElement.setAttribute('width', '16px')
svgElement.setAttribute('fill', '#606060')
icon_path = path_for_icon(icon_name)
icon_path.parent.mkdir(parents=True, exist_ok=True)
with open(path_for_icon(icon_name), 'w') as f:
f.write(svgElement.toxml())
def path_for_icon(icon_name: str) -> Path:
return Path('.') / 'docs' / 'data' / 'readme_icons' / f'{icon_name}.svg'
def str_projects( def str_projects(
config: List[Dict[str, Any]], *, online: bool = True, auth: Optional[str] = None config: List[Dict[str, Any]], *, online: bool = True, auth: Optional[str] = None
) -> str: ) -> str:
io = StringIO() io = StringIO()
print = functools.partial(builtins.print, file=io) print = functools.partial(builtins.print, file=io)
if online:
for icon in ICONS:
fetch_icon(icon)
github = Github(auth) if online else None github = Github(auth) if online else None
projects = sorted((Project(item, github) for item in config), reverse=online) projects = sorted((Project(item, github) for item in config), reverse=online)
@@ -130,9 +159,7 @@ def str_projects(
print() print()
for icon in ICONS: for icon in ICONS:
print( print(f"[{icon} icon]: {path_for_icon(icon).as_posix()}")
f"[{icon} icon]: https://cdn.jsdelivr.net/npm/simple-icons@v4/icons/{icon}.svg"
)
print() print()
for project in projects: for project in projects:
+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 24 24" width="16px" fill="#606060"><title>Apple icon</title><path d="M7.078 23.55c-.473-.316-.893-.703-1.244-1.15-.383-.463-.738-.95-1.064-1.454-.766-1.12-1.365-2.345-1.78-3.636-.5-1.502-.743-2.94-.743-4.347 0-1.57.34-2.94 1.002-4.09.49-.9 1.22-1.653 2.1-2.182.85-.53 1.84-.82 2.84-.84.35 0 .73.05 1.13.15.29.08.64.21 1.07.37.55.21.85.34.95.37.32.12.59.17.8.17.16 0 .39-.05.645-.13.145-.05.42-.14.81-.31.386-.14.692-.26.935-.35.37-.11.728-.21 1.05-.26.39-.06.777-.08 1.148-.05.71.05 1.36.2 1.94.42 1.02.41 1.843 1.05 2.457 1.96-.26.16-.5.346-.725.55-.487.43-.9.94-1.23 1.505-.43.77-.65 1.64-.644 2.52.015 1.083.29 2.035.84 2.86.387.6.904 1.114 1.534 1.536.31.21.582.355.84.45-.12.375-.252.74-.405 1.1-.347.807-.76 1.58-1.25 2.31-.432.63-.772 1.1-1.03 1.41-.402.48-.79.84-1.18 1.097-.43.285-.935.436-1.452.436-.35.015-.7-.03-1.034-.127-.29-.095-.576-.202-.856-.323-.293-.134-.596-.248-.905-.34-.38-.1-.77-.148-1.164-.147-.4 0-.79.05-1.16.145-.31.088-.61.196-.907.325-.42.175-.695.29-.855.34-.324.096-.656.154-.99.175-.52 0-1.004-.15-1.486-.45zm6.854-18.46c-.68.34-1.326.484-1.973.436-.1-.646 0-1.31.27-2.037.24-.62.56-1.18 1-1.68.46-.52 1.01-.95 1.63-1.26.66-.34 1.29-.52 1.89-.55.08.68 0 1.35-.25 2.07-.228.64-.568 1.23-1 1.76-.435.52-.975.95-1.586 1.26z"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 24 24" width="16px" fill="#606060"><title>AppVeyor icon</title><path d="M 12,0 C 18.6,0 24,5.4 24,12 24,18.6 18.6,24 12,24 5.4,24 0,18.6 0,12 0,5.4 5.4,0 12,0 Z m 2.94,14.34 C 16.26,12.66 16.08,10.26 14.4,9 12.78,7.74 10.38,8.04 9,9.72 7.68,11.4 7.86,13.8 9.54,15.06 c 1.68,1.26 4.08,0.96 5.4,-0.72 z m -6.42,7.8 c 0.72,0.3 2.28,0.6 3.06,0.6 l 5.22,-7.56 c 1.68,-2.52 1.26,-5.94 -1.08,-7.8 -2.1,-1.68 -5.04,-1.62 -7.14,0 l -7.26,5.58 c 0.18,1.92 0.72,2.88 0.72,2.94 l 4.14,-4.5 c -0.3,1.98 0.42,4.02 2.1,5.28 1.44,1.14 3.18,1.44 4.86,1.08 z"/></svg>

After

Width:  |  Height:  |  Size: 613 B

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 24 24" width="16px" fill="#606060"><title>Azure Pipelines icon</title><path d="M1.8 18H0v6h6v-1.8H1.8zM23 0h-8.93a2 2 0 0 0-1.67.89L9 5.99H1a1 1 0 0 0-1 1v5.5l3.5 3.61 1.2-1.29 1.5 1.5L5 17.53l1.48 1.48 1.22-1.22 1.5 1.51L8 20.5l3.5 3.5H17a1 1 0 0 0 1-1v-8l5.11-3.4A2 2 0 0 0 24 9.92V1a1 1 0 0 0-1-1zm-5 9a3 3 0 1 1 0-6 3 3 0 0 1 0 6z"/></svg>

After

Width:  |  Height:  |  Size: 407 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 24 24" width="16px" fill="#606060"><title>CircleCI icon</title><path d="M8.963 12c0-1.584 1.284-2.855 2.855-2.855 1.572 0 2.856 1.284 2.856 2.855 0 1.572-1.284 2.856-2.856 2.856-1.57 0-2.855-1.284-2.855-2.856zm2.855-12C6.215 0 1.522 3.84.19 9.025c-.01.036-.01.07-.01.12 0 .313.252.576.575.576H5.59c.23 0 .433-.13.517-.333.997-2.16 3.18-3.672 5.712-3.672 3.466 0 6.286 2.82 6.286 6.287 0 3.47-2.82 6.29-6.29 6.29-2.53 0-4.714-1.5-5.71-3.673-.097-.19-.29-.336-.517-.336H.755c-.312 0-.575.253-.575.576 0 .037.014.072.014.12C1.514 20.16 6.214 24 11.818 24c6.624 0 12-5.375 12-12 0-6.623-5.376-12-12-12z"/></svg>

After

Width:  |  Height:  |  Size: 671 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 24 24" width="16px" fill="#606060"><title>GitHub icon</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg>

After

Width:  |  Height:  |  Size: 855 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 24 24" width="16px" fill="#606060"><title>GitLab icon</title><path d="M4.845.904c-.435 0-.82.28-.955.692C2.639 5.449 1.246 9.728.07 13.335a1.437 1.437 0 00.522 1.607l11.071 8.045c.2.145.472.144.67-.004l11.073-8.04a1.436 1.436 0 00.522-1.61c-1.285-3.942-2.683-8.256-3.817-11.746a1.004 1.004 0 00-.957-.684.987.987 0 00-.949.69l-2.405 7.408H8.203l-2.41-7.408a.987.987 0 00-.942-.69h-.006zm-.006 1.42l2.173 6.678H2.675zm14.326 0l2.168 6.678h-4.341zm-10.593 7.81h6.862c-1.142 3.52-2.288 7.04-3.434 10.559L8.572 10.135zm-5.514.005h4.321l3.086 9.5zm13.567 0h4.325c-2.467 3.17-4.95 6.328-7.411 9.502 1.028-3.167 2.059-6.334 3.086-9.502zM2.1 10.762l6.977 8.947-7.817-5.682a.305.305 0 01-.112-.341zm19.798 0l.952 2.922a.305.305 0 01-.11.341v.002l-7.82 5.68.026-.035z"/></svg>

After

Width:  |  Height:  |  Size: 830 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.4 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 24 24" width="16px" fill="#606060"><title>Windows icon</title><path d="M0 3.449L9.75 2.1v9.451H0m10.949-9.602L24 0v11.4H10.949M0 12.6h9.75v9.451L0 20.699M10.949 12.6H24V24l-12.9-1.801"/></svg>

After

Width:  |  Height:  |  Size: 256 B