is-a-dev-docs

is-a.dev Documentation

git clone https://github.com/notamitgamer/is-a-dev-docs.git
· rebuilt hourlyOpen on GitHub
root / src / maintainers / reviewing-prs.md

reviewing-prs.md (5447B)


      1 ---
      2 label: Reviewing PRs
      3 ---
      4 
      5 # Reviewing Pull Requests
      6 Hello! Welcome to the is-a.dev maintainer team. This document is intended to get you up to speed with the pull request reviewing process.
      7 
      8 First and most importantly, please read the [documentation](https://docs.is-a.dev). All of it. Seriously. It's important. Additionally, take a cursory glance over our [Terms of Service](https://is-a.dev/terms).
      9 
     10 Let's begin.
     11 
     12 ## When to Instantly Close a PR
     13 You should instantly close a pull request when:
     14 
     15 1. The website has no preview provided *and* isn't accessible. We expect previews for *all* webpages.
     16 2. The checkbox stating the user's agreement to our [ToS](https://is-a.dev/terms) (Terms of Service) has not been checked.
     17 3. The PR is requesting NS records without a valid reason or without a reason provided at all. See [this page](https://docs.is-a.dev/faq/#who-can-use-ns-records) for details on what we consider a valid reason to request NS records.
     18 4. The user violates our ToS in any way; e.g., if they are under thirteen years of age, if their webpage is breaking the law or hosting illegal content, cryptocurrency mining sites or tools, impersonation without consent, et cetera.
     19 5. The webpage is not related to software development. This does not apply for nested subdomains![^1]
     20 6. Webpages who want to use our subdomain for commercial purposes. Including but not limited to *anything* with a "pricing plan" page. A portfolio stating that the user is available for hire is not considered commercial usage.
     21 7. The user breaks GitHub's [Terms of Service](https://docs.github.com/en/site-policy/github-terms/github-terms-of-service).
     22 8. The PR is a duplicate of another PR (i.e., the user made multiple PRs in the hopes of getting their domain faster).
     23 9. Any one the "Requirements" checkboxes have not been fulfilled.
     24 
     25 [^1]: Nested subdomains are a subdomain of a subdomain, such as `nested.example.is-a.dev`. `example.is-a.dev` is not a nested subdomain, it is a subdomain!
     26 
     27 ## Steps to Reviewing a PR
     28 First, approve checks if needed. Do this by clicking the button at the bottom of the PR labelled "Approve workflows to run".
     29 
     30 ![](../media/reviewing-prs/checks-need-approval.png)
     31 
     32 Now, check the preview (if applicable) or attempt to access the website based on the DNS records in the JSON file (in the "Files changed" tab at the top of the pull request). Now, judge if it should be closed based on the above "When to Instantly Close a PR".
     33 
     34 You cannot merge a PR if the checks do not pass. If the checks fail, examine the JSON file(s) and their respective filename(s) and/or the "View details" button under the menu which itself is under the "Some checks were not successful" message.
     35 
     36 ![](../media/reviewing-prs/checks-failed.png)
     37 
     38 *Request changes* based on the issues at hand. Do not be rude in your review and act professionally. We recommend using reviewbot to streamline the process of requesting changes!
     39 
     40 If there are no issues with the PR at this point, you are free to merge it.
     41 If you requested changes, please *apply labels to the PR*. For example, if the PR violates our ToS because it is a commercial website:
     42 
     43 ![](../media/reviewing-prs/apply-labels.png)
     44 
     45 ## Tips & Tricks
     46 1. Use GitHub's saved replies feature to speed up reviewing. You can create and edit saved replies [here](https://github.com/settings/replies). Here's an example:
     47 
     48 ![](../media/reviewing-prs/example-saved-reply.png)
     49 
     50 You can use quickly select and use saved replies in the reply/reviewing text box by pressing Ctrl/Command + Period (.) together.
     51 
     52 We recommend using reviewbot instead of saved replies, however! See the next section.
     53 
     54 2. Mass approve checks first, review afterwards. This allows you to skip the hassle of waiting for checks to finish running.
     55 
     56 3. When unsure of whether or not to approve or request changes on a PR, do not hesitate to ask another, more experienced maintainer on how to deal with it. You can also simply skip the PR and wait for someone else to review it.
     57 
     58 ## Reviewbot
     59 A very helpful tool we have at our disposal is [reviewbot](https://github.com/iostpa/reviewbot). Reviewbot is a GitHub bot maintained by [iostpa](https://iostpa.com) which sends a comment in a pull request upon the application of labels with an explanation of each label in some detail. Reviewbot can also optionally close a pull request based on the `status: denied` label.
     60 
     61 Example usage would be as follows: on a pull request that adds a website unrelated to software development, you should add the `status: denied` and `reason: not dev related` labels to the pull request, and simply move on. Reviewbot will close the pull request on your behalf and explain the reason why the pull request was denied in detail to the PR author. 
     62 
     63 !!!
     64 Note: You may use `status: invalid` to simply request changes on a PR instead of closing it.
     65 !!!
     66 
     67 Please use `status: denied` or `status: invalid` in conjuction with other `reason: x` labels (or `status: needs preview`). If none of the labels fit the reason why you denied the pull request, use `reason: other` in conjuction with either status label and comment your reason directly in the pull request.
     68 
     69 !!!
     70 Reviewbot has a 3 second time window. This means that you can make last-minute changes before reviewbot starts sending the message.
     71 !!!
     72 
     73 Here is an example of using reviewbot with the `status: denied` and `reason: not dev related` labels:
     74 
     75 ![reviewbot example](../media/reviewbot-example.png)