Code Monkey home page Code Monkey logo

.github's People

Contributors

dominik-schmid avatar gr2m avatar igwejk avatar jamiemagee avatar kfcampbell avatar nickfloyd avatar oscard0m avatar rarkins avatar wolfy1339 avatar zhiliangpt avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

.github's Issues

Automerging renovate PRs

Please don't use scripts for automerging the renovate PRs.

Whenever a new major version of a dependency is pushed and renovate opens a PR, we should take the time to read the changelog and not blindly merge them because tests are passing.

Because of this, some PRs that contained breaking changes that also affected the dependee package and these were merged as patch releases.

Now, I understand that these PRs could have been marked with a "Request Changes" review and it would have stopped them from being merged, however we shouldn't blindly rely on tests passing to merge these PRs

Getting pull request using wrong url?

Discussed in https://github.com/orgs/octokit/discussions/57

Originally posted by TuinboonDev September 9, 2023
Hello, im using this code snippet to get a single pull request:

await context.octokit.rest.pulls.get({ owner, repo, number })

Except it uses this url: https://api.github.com/repos/MYGITHUBNAME/REPO/pulls/?number=9 which gives a 404.
While I think it should be: https://api.github.com/repos/MYGITHUBNAME/REPO/pulls/9

Can anyone help me out?

Create 'test.yml' reusable workflow

๐Ÿ“– Description

Create a reusable test.yml workflow to be used across all the repositories of Octokit.js ecosystem.

๐Ÿ Goal

  1. To centralize GitHub Workflows used across repositories in Octokit so we can easily maintain them in a single point
  2. To reduce the noise Renovatebot produces when a third-party GitHub Action inside our workflows has an update1.

๐Ÿ”ญ Scope

  • As a first step, this re-usable workflow will support octokit/*{.js|.ts} only.
  • Runs npm run lint --if-present
  • Runs npm run build --if-present (context here)

๐Ÿ”ฎ Future work

  • Compose actions/checkout and actions/setup-node and evaluate the execution time (more info here)
  • Extend this workflow to support the remaining octokit/* of the JS Ecosystem (more info here)
  • To evaluate the type-only test with tsd (context here)

๐Ÿšš Migration Plan

WIP

๐Ÿ’ฌ Discussion points / ๐Ÿšซ Blockers

Parametrize node_versions [Solved โœ…]

The idea would be to parametrize the node_versions for strategy.matrix but apparently, GitHub Action Inputs do not support string[] as an input type (see here, here and here).

Conclusion ๐Ÿง‘โ€โš–๏ธ

We are using `fromJSON` helper (details [here](https://github.com//pull/13#discussion_r922566626))

Custom steps in test.yml [Solved โœ…]

Right now, most of our test.yml used across Octokit.js repositories have the following code:

name: Test
jobs:
  test_matrix:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node_version:
          - 18
          - 20
    steps:
      - uses: actions/checkout@v3
      - name: Use Node.js ${{ matrix.node_version }}
        uses: actions/setup-node@v3
        with:
          node-version: ${{ matrix.node_version }}
          cache: npm
      - run: npm ci
      - run: npm test
  test:
    runs-on: ubuntu-latest
    needs: test_matrix
    steps:
      - run: exit 1
        if: ${{ needs.test_matrix.result != 'success' }}
      - uses: actions/checkout@v3
      - run: npm ci
      - run: npm run lint
    if: ${{ always() }}

But there are some repositories which have extra steps or different steps:

  • What approach do we want to follow for custom steps?
    1. Extra custom-test workflows which extend a generic test.yml?
    2. Add extra logic to test.yml to give support to all the use cases?

Conclusion ๐Ÿง‘โ€โš–๏ธ

- We want to support all the use cases by adding extra logic (more details [here](https://github.com//pull/13#issuecomment-1186010553)). - As a first step, we will focus on octokit/*{.js|.ts} repositories

Footnotes

  1. https://github.com/orgs/octokit/teams/js-community/discussions/11?from_comment=12 โ†ฉ

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.