diff --git a/.github/workflows/peek_icons.yml b/.github/workflows/peek_icons.yml index ac5062bdb7..20f3455f15 100644 --- a/.github/workflows/peek_icons.yml +++ b/.github/workflows/peek_icons.yml @@ -3,7 +3,10 @@ on: pull_request: types: [labeled] jobs: - build: + peek: + # four outcomes: successful check and upload, + # unsuccessful check (fail due to user), + # fail due to system, skipped name: Peek Icons if: github.event.label.name == 'bot:peek' runs-on: windows-2019 @@ -20,6 +23,18 @@ jobs: python -m pip install --upgrade pip pip install -r ./.github/scripts/requirements.txt + - name: Save the PR number in an artifact + shell: bash + env: + PR_NUM: ${{ github.event.number }} + run: echo $PR_NUM > pr_num.txt + + - name: Upload the PR number + uses: actions/upload-artifact@v2 + with: + name: pr_num + path: ./pr_num.txt + - name: Run icomoon_peek.py env: PR_TITLE: ${{ github.event.pull_request.title }} @@ -36,21 +51,9 @@ jobs: name: screenshots path: ./screenshots/*.png - - name: Save the pr num in an artifact - shell: bash - env: - PR_NUM: ${{ github.event.number }} - run: echo $PR_NUM > pr_num.txt - - - name: Upload the pr num - uses: actions/upload-artifact@v2 - with: - name: pr_num - path: ./pr_num.txt - - name: Upload geckodriver.log for debugging purposes uses: actions/upload-artifact@v2 if: failure() with: name: geckodriver-log - path: ./geckodriver.log \ No newline at end of file + path: ./geckodriver.log diff --git a/.github/workflows/post_peek_screenshot.yml b/.github/workflows/post_peek_screenshot.yml index 541441f37c..0a7a3ae920 100644 --- a/.github/workflows/post_peek_screenshot.yml +++ b/.github/workflows/post_peek_screenshot.yml @@ -8,10 +8,16 @@ jobs: post_screenshots_in_comment: name: Post the screenshot runs-on: ubuntu-18.04 + if: github.event.action == 'completed' && github.event.workflow_run.conclusion != 'skipped' + env: + # three possible values: 'skipped', 'success', 'failure' + # have to print github.event to console to see these values + # note: can't use this env variable up in the if statement above for some reason. + # I don't think it's an ordering issue cause it seems 'if' is auto evaluate first + PEEK_STATUS: ${{ github.event.workflow_run.conclusion }} steps: - - name: Check if the trigger run worked. If not, fail the current run. - if: github.event.workflow_run.conclusion != 'success' - uses: cutenode/action-always-fail@v1.0.1 + - name: Check state of last run + run: echo $PEEK_STATUS - name: Download workflow artifact uses: dawidd6/action-download-artifact@v2.11.0 @@ -21,7 +27,6 @@ jobs: run_id: ${{ github.event.workflow_run.id }} - name: Read the pr_num file - if: success() id: pr_num_reader uses: juliangruber/read-file-action@v1.0.0 with: @@ -29,6 +34,7 @@ jobs: - name: Upload screenshot of the newly made icons gotten from the artifacts id: icons_overview_img_step + if: env.PEEK_STATUS == 'success' && success() uses: devicons/public-upload-to-imgur@v2.2.1 with: path: ./screenshots/new_icons.png @@ -37,17 +43,15 @@ jobs: - name: Upload zoomed in screenshot of the newly made icons gotten from the artifacts id: icons_detailed_img_step uses: devicons/public-upload-to-imgur@v2.2.1 - if: success() + if: env.PEEK_STATUS == 'success' && success() with: path: ./screenshots/screenshot_*.png client_id: ${{secrets.IMGUR_CLIENT_ID}} - name: Comment on the PR about the result - Success uses: jungwinter/comment@v1 # let us comment on a specific PR - if: success() + if: env.PEEK_STATUS == 'success' && success() env: - OVERVIEW_IMG_MARKDOWN: ${{ fromJSON(steps.icons_overview_img_step.outputs.markdown_urls)[0] }} - DETAILED_IMGS_MARKDOWN: ${{ join(fromJSON(steps.icons_detailed_img_step.outputs.markdown_urls), '') }} MESSAGE: | Hi there, @@ -71,10 +75,13 @@ jobs: type: create issue_number: ${{ steps.pr_num_reader.outputs.content }} token: ${{ secrets.GITHUB_TOKEN }} - body: ${{format(env.MESSAGE, env.OVERVIEW_IMG_MARKDOWN, env.DETAILED_IMGS_MARKDOWN)}} + body: > + ${{ format(env.MESSAGE, + fromJSON(steps.icons_overview_img_step.outputs.markdown_urls)[0], + join(fromJSON(steps.icons_detailed_img_step.outputs.markdown_urls), '')) }} - name: Comment on the PR about the result - Failure - if: failure() || cancelled() + if: failure() || env.PEEK_STATUS == 'failure' uses: jungwinter/comment@v1 # let us comment on a specific PR env: MESSAGE: | @@ -88,7 +95,7 @@ jobs: - Your icon information has been added to the `devicon.json` as seen [here](https://github.com/devicons/devicon/blob/master/CONTRIBUTING.md#updateDevicon) - Your PR title follows the format seen [here](https://github.com/devicons/devicon/blob/master/CONTRIBUTING.md#overview) - Once everything is fixed, I will try. If I still fail (sorry!), the maintainers will investigate further. + I will retry once everything is fixed. If I still fail (sorry!) or there are other erros, the maintainers will investigate. Best of luck, Peek Bot :relaxed: diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml new file mode 100644 index 0000000000..859b053da8 --- /dev/null +++ b/.github/workflows/stale.yml @@ -0,0 +1,22 @@ +name: 'Stale' +on: + schedule: + - cron: '30 1 * * *' + +jobs: + stale: + runs-on: ubuntu-latest + steps: + - uses: actions/stale@main + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + stale-pr-message: 'Hello there, + we noticed that this PR has been inactive for a while now. If there are any changes which are suitable for our repository, + we would love to have it. It would be great if you can continue with this PR, but if you cannot, we might fork your changes and merge the changes ourselves. + + Since GitHub tracks contributions by commits, you will still be credited. + + Let us know what you think 😃' + stale-pr-label: 'stale' + days-before-pr-stale: 30 + days-before-pr-close: -1 diff --git a/README.md b/README.md index 160d27b9e7..4ac6b4ca8c 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,7 @@
  • Getting started
  • Requesting icon
  • Contributing
  • +
  • Stale pull requests
  • Go build yourself
  • @@ -155,6 +156,11 @@ Add css rules in your stylesheet to see how you can contribute to this project.

    +

    Stale pull requests

    +

    +After a pull request has been open for over 30 days with no activity or response from the author, it'll be automatically marked as stale. We might fork your changes and merge the changes ourselves. Since GitHub tracks contributions by commits, you will be credited. +

    +

    Go build yourself

    Feel free to follow those steps when you want to build the font diff --git a/devicon.json b/devicon.json index e935377cc7..c20122553b 100644 --- a/devicon.json +++ b/devicon.json @@ -798,6 +798,27 @@ "color": "#f7974e", "aliases": [] }, + { + "name": "dart", + "tags": [ + "programming", + "language" + ], + "versions": { + "svg": [ + "original", + "original-wordmark", + "plain", + "plain-wordmark" + ], + "font": [ + "plain", + "plain-wordmark" + ] + }, + "color": "#00A8E1", + "aliases": [] + }, { "name": "debian", "tags": [ @@ -1087,6 +1108,23 @@ } ] }, + { + "name": "figma", + "tags": [ + "design" + ], + "versions": { + "svg": [ + "original", + "plain" + ], + "font": [ + "plain" + ] + }, + "color": "#f24e1e", + "aliases": [] + }, { "name": "firebase", "tags": [ @@ -1438,6 +1476,26 @@ "color": "#feb672", "aliases": [] }, + { + "name": "graphql", + "tags": [ + "language", + "data", + "query" + ], + "versions": { + "svg": [ + "plain", + "plain-wordmark" + ], + "font": [ + "plain", + "plain-wordmark" + ] + }, + "color": "#e434aa", + "aliases": [] + }, { "name": "groovy", "tags": [ @@ -3009,6 +3067,27 @@ "color": "#bb2031", "aliases": [] }, + { + "name": "thealgorithms", + "tags": [ + "organization", + "algorithms" + ], + "versions": { + "svg": [ + "original", + "original-wordmark", + "plain", + "plain-wordmark" + ], + "font": [ + "plain", + "plain-wordmark" + ] + }, + "color": "#00BCB4", + "aliases": [] + }, { "name": "trello", "tags": [ diff --git a/icons/dart/dart-original-wordmark.svg b/icons/dart/dart-original-wordmark.svg new file mode 100644 index 0000000000..f592c09f74 --- /dev/null +++ b/icons/dart/dart-original-wordmark.svg @@ -0,0 +1 @@ + diff --git a/icons/dart/dart-original.svg b/icons/dart/dart-original.svg new file mode 100644 index 0000000000..3be7c5ee1d --- /dev/null +++ b/icons/dart/dart-original.svg @@ -0,0 +1 @@ + diff --git a/icons/dart/dart-plain-wordmark.svg b/icons/dart/dart-plain-wordmark.svg new file mode 100644 index 0000000000..f9914f9ad2 --- /dev/null +++ b/icons/dart/dart-plain-wordmark.svg @@ -0,0 +1 @@ + diff --git a/icons/dart/dart-plain.svg b/icons/dart/dart-plain.svg new file mode 100644 index 0000000000..5ba9721ba0 --- /dev/null +++ b/icons/dart/dart-plain.svg @@ -0,0 +1 @@ + diff --git a/icons/figma/figma-original.svg b/icons/figma/figma-original.svg new file mode 100644 index 0000000000..38d2486f60 --- /dev/null +++ b/icons/figma/figma-original.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/icons/figma/figma-plain.svg b/icons/figma/figma-plain.svg new file mode 100644 index 0000000000..3a2803e9a7 --- /dev/null +++ b/icons/figma/figma-plain.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/icons/graphql/graphql-plain-wordmark.svg b/icons/graphql/graphql-plain-wordmark.svg new file mode 100644 index 0000000000..fb175fbeb4 --- /dev/null +++ b/icons/graphql/graphql-plain-wordmark.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/icons/graphql/graphql-plain.svg b/icons/graphql/graphql-plain.svg new file mode 100644 index 0000000000..c3b6d7b2d6 --- /dev/null +++ b/icons/graphql/graphql-plain.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/icons/thealgorithms/thealgorithms-original-wordmark.svg b/icons/thealgorithms/thealgorithms-original-wordmark.svg new file mode 100644 index 0000000000..46bfdd5a8f --- /dev/null +++ b/icons/thealgorithms/thealgorithms-original-wordmark.svg @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/icons/thealgorithms/thealgorithms-original.svg b/icons/thealgorithms/thealgorithms-original.svg new file mode 100644 index 0000000000..40106fec42 --- /dev/null +++ b/icons/thealgorithms/thealgorithms-original.svg @@ -0,0 +1,12 @@ + + + + + + diff --git a/icons/thealgorithms/thealgorithms-plain-wordmark.svg b/icons/thealgorithms/thealgorithms-plain-wordmark.svg new file mode 100644 index 0000000000..7b35bb50eb --- /dev/null +++ b/icons/thealgorithms/thealgorithms-plain-wordmark.svg @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/icons/thealgorithms/thealgorithms-plain.svg b/icons/thealgorithms/thealgorithms-plain.svg new file mode 100644 index 0000000000..f6def98b05 --- /dev/null +++ b/icons/thealgorithms/thealgorithms-plain.svg @@ -0,0 +1,12 @@ + + + + + + diff --git a/package-lock.json b/package-lock.json index 4945858d5c..9e17533f76 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1739,7 +1739,7 @@ "replace-homedir": "^1.0.0", "semver-greatest-satisfied-range": "^1.1.0", "v8flags": "^3.2.0", - "yargs": "^7.1.0" + "yargs": "^13.3.2" } } } @@ -3528,12 +3528,12 @@ "string-width": "^3.0.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "yargs-parser": "^18.1.2" } }, "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "version": "18.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "dev": true, "requires": { @@ -4514,8 +4514,8 @@ "dev": true }, "yargs": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz", + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", "integrity": "sha512-huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g==", "dev": true, "requires": { @@ -4531,12 +4531,12 @@ "string-width": "^1.0.2", "which-module": "^1.0.0", "y18n": "^3.2.1", - "yargs-parser": "5.0.0-security.0" + "yargs-parser": ">=18.1.2" } }, "yargs-parser": { - "version": "5.0.0-security.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz", + "version": "18.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", "integrity": "sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ==", "dev": true, "requires": {