From 0c3366f9a2b717ec278908558451db7f87dceb75 Mon Sep 17 00:00:00 2001 From: Nat DeFries <42820733+nmdefries@users.noreply.github.com> Date: Wed, 16 Sep 2020 11:22:26 -0400 Subject: [PATCH 1/4] Copied .github directory from www-covidcast --- .github/CONTRIBUTING.md | 92 +++++++++++++++++++++++ .github/ISSUE_TEMPLATE/bug_report.md | 39 ++++++++++ .github/ISSUE_TEMPLATE/config.yml | 1 + .github/ISSUE_TEMPLATE/feature_request.md | 19 +++++ .github/PULL_REQUEST_TEMPLATE.md | 15 ++++ .github/workflows/ci.yml | 28 +++++++ 6 files changed, 194 insertions(+) create mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/PULL_REQUEST_TEMPLATE.md create mode 100644 .github/workflows/ci.yml diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 000000000..79cb5eccd --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,92 @@ +# Contributing to COVIDCast + +## Branches + +- `main` + + The main branch of this project is called `main` and contains the latest release candidate. + It is protected such that only reviewed pull requests are merged in. + +- `dev` + + The `dev` branch is used for the current release and continuous merge during a sprint. + New features or bugfixes are merged into this branch using a pull request. + +- `/` + + new features by authors are created in feature branches. By convention the branch should start with the author name. + The name itself should either reflects its content in a condensed form or referencing an issue which this branch addresses. Examples: `sgratzl/hotspots`, `sgratzl/issue_34`. + +## Issues + +Issues are the main communication point when it comes to bugfixes, new features, or other possible changes. The repository has several issue templates that help to structure issues. An bug issue should address a single bug in the application. + +The discussion / comments within an issue should restrict to the topic of the issue identified by its title. An exception are general `discussion` labeled issues which are designed for an more open discussion. Once the discussion agrees to a solution/change a new issue should be created with a clear description. + +Issues are assigned to a single user which is responsible for the implementation of the issue eventually leading to a pull request. + +## Project Board + +The main project board is located at https://github.com/cmu-delphi/www-covidcast/projects/2. + +The columns have the following meaning: + +- `To Do` + + contains newly created issues that needs still to be evaluated and discussed and not yet ready to be implemented + +- `Up Next` + + contains assigned issues that should be implemented next. The top most issue has the highest priority + +- `In Progress` + + once a developer starts working on an issue he/she should move the issue from the `Up Next` to the `In Progress` column indicating that it is currently implemented + +- `In Review` + + after creating the pull request for an issue the pull request card as well as the corresponding issue card are moved to the `In Review` column indicating that they can be reviewed and tested. + +- `Done` + + after merging the pull request, the pull request and issue cards can be moved to the `Done` column + +- `Icebox` + + the `Icebox` column contains issues that open for discussion, have no specific plan, or longer future ideas + +## Pull Requests + +The purpose of a pull request is to merge the solution to an existing issue into the current `dev` branch. +The comments / reviews of the PR should limit to the changed aspects of this PR. Discussions of new ideas or unrelated bugs should be moved to slack and eventually to a new Github issue. + +### Pull Request Creation + +By default new pull requests should be merged into the `dev` branch. +The `main` branch is protected for the current release candidate only. +An exception of this rule are hotfixes which fixes specific bugs in the current release candidate. + +Follow the pull request template request review of the primary code and also assign the primary code owner. + +### Draft Pull Requests + +Draft pull requests can be created to collect early feedback during the development. The code is not stable yet, nor the feature. Once the implementation is complete the PR should be marked `Ready for Review`. + +### Pull Request Reviews + +Every pull request has to be reviewed. The review should be done by the primary code owner of this repository. +The primary code owner can request reviews of other users if needed. Tasks of reviewing a PR include + +- testing the feature/bugfix which the PR addresses +- check the code quality of the code, regarding: + - use of camel case naming convention, e.g. `testMethod` instead of `test_method` + - comments for complicated code sections + - no `console.log` statements + - no `debugger` statements + - no `TODO` markers + - no duplicated code + - good modularization + - ... + +Once the PR has be successfully reviewed and approved the primary code owner / assignee merges the PR. +In addition, he/she should close any references issues which are not automatically closed. diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 000000000..4b2c3e4b6 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,39 @@ +--- +name: 🐛 Bug report +about: If something isn't working as expected 🤔. +title: '' +labels: 'bug' +assignees: '' +--- + +**Actual Behavior:** + + + +When I... + +**Steps to Reproduce the Bug:** + + + +1. go to **PASTE BROWSER URL HERE** + +**Expected behavior** + + + +**Screenshots** + + + +**Rating Scale (1 is minor, 7 is severe):** + + + +**Context** + +- Browser: + +**Additional context** + + diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 000000000..0086358db --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1 @@ +blank_issues_enabled: true diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 000000000..45c49c855 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,19 @@ +--- +name: 🚀 Feature Request +about: Suggest an idea for this project +title: '' +labels: 'enhancement' +assignees: '' +--- + + + +It would be great if ... + +**User story** + + + +**Additional context** + + diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 000000000..4330e05d0 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,15 @@ +closes + +**Prerequisites**: + +- [ ] Unless it is a hotfix it should be merged against the `dev` branch +- [ ] Branch is up-to-date with the branch to be merged with, i.e. `dev` +- [ ] Build is successful +- [ ] Code is cleaned up and formatted + +### Summary + + diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 000000000..3386ec6f7 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,28 @@ +name: ci + +on: [push] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v1 + with: + node-version: '12.x' + - name: Cache Node.js modules + uses: actions/cache@v2 + with: + path: ~/.npm # npm cache files are stored in `~/.npm` on Linux/macOS + key: ${{ runner.OS }}-node2-${{ hashFiles('**/package-lock.json') }} + restore-keys: | + ${{ runner.OS }}-node2- + - run: npm ci + - run: npm run lint + - run: npm run build + - name: Deploy + if: github.ref == 'refs/heads/main' && github.event_name == 'push' + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./public From 432443183e7d035382404479ff342407083fe2c1 Mon Sep 17 00:00:00 2001 From: Nat DeFries <42820733+nmdefries@users.noreply.github.com> Date: Wed, 16 Sep 2020 12:05:35 -0400 Subject: [PATCH 2/4] Removed pull request template and contributing info. Added data quality issue template. Edited existing templates to make more relevant. --- .github/CONTRIBUTING.md | 92 -------------------- .github/ISSUE_TEMPLATE/bug_report.md | 8 +- .github/ISSUE_TEMPLATE/data_quality_issue.md | 29 ++++++ .github/ISSUE_TEMPLATE/feature_request.md | 4 +- .github/PULL_REQUEST_TEMPLATE.md | 15 ---- .github/workflows/ci.yml | 28 ------ 6 files changed, 34 insertions(+), 142 deletions(-) delete mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/ISSUE_TEMPLATE/data_quality_issue.md delete mode 100644 .github/PULL_REQUEST_TEMPLATE.md delete mode 100644 .github/workflows/ci.yml diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md deleted file mode 100644 index 79cb5eccd..000000000 --- a/.github/CONTRIBUTING.md +++ /dev/null @@ -1,92 +0,0 @@ -# Contributing to COVIDCast - -## Branches - -- `main` - - The main branch of this project is called `main` and contains the latest release candidate. - It is protected such that only reviewed pull requests are merged in. - -- `dev` - - The `dev` branch is used for the current release and continuous merge during a sprint. - New features or bugfixes are merged into this branch using a pull request. - -- `/` - - new features by authors are created in feature branches. By convention the branch should start with the author name. - The name itself should either reflects its content in a condensed form or referencing an issue which this branch addresses. Examples: `sgratzl/hotspots`, `sgratzl/issue_34`. - -## Issues - -Issues are the main communication point when it comes to bugfixes, new features, or other possible changes. The repository has several issue templates that help to structure issues. An bug issue should address a single bug in the application. - -The discussion / comments within an issue should restrict to the topic of the issue identified by its title. An exception are general `discussion` labeled issues which are designed for an more open discussion. Once the discussion agrees to a solution/change a new issue should be created with a clear description. - -Issues are assigned to a single user which is responsible for the implementation of the issue eventually leading to a pull request. - -## Project Board - -The main project board is located at https://github.com/cmu-delphi/www-covidcast/projects/2. - -The columns have the following meaning: - -- `To Do` - - contains newly created issues that needs still to be evaluated and discussed and not yet ready to be implemented - -- `Up Next` - - contains assigned issues that should be implemented next. The top most issue has the highest priority - -- `In Progress` - - once a developer starts working on an issue he/she should move the issue from the `Up Next` to the `In Progress` column indicating that it is currently implemented - -- `In Review` - - after creating the pull request for an issue the pull request card as well as the corresponding issue card are moved to the `In Review` column indicating that they can be reviewed and tested. - -- `Done` - - after merging the pull request, the pull request and issue cards can be moved to the `Done` column - -- `Icebox` - - the `Icebox` column contains issues that open for discussion, have no specific plan, or longer future ideas - -## Pull Requests - -The purpose of a pull request is to merge the solution to an existing issue into the current `dev` branch. -The comments / reviews of the PR should limit to the changed aspects of this PR. Discussions of new ideas or unrelated bugs should be moved to slack and eventually to a new Github issue. - -### Pull Request Creation - -By default new pull requests should be merged into the `dev` branch. -The `main` branch is protected for the current release candidate only. -An exception of this rule are hotfixes which fixes specific bugs in the current release candidate. - -Follow the pull request template request review of the primary code and also assign the primary code owner. - -### Draft Pull Requests - -Draft pull requests can be created to collect early feedback during the development. The code is not stable yet, nor the feature. Once the implementation is complete the PR should be marked `Ready for Review`. - -### Pull Request Reviews - -Every pull request has to be reviewed. The review should be done by the primary code owner of this repository. -The primary code owner can request reviews of other users if needed. Tasks of reviewing a PR include - -- testing the feature/bugfix which the PR addresses -- check the code quality of the code, regarding: - - use of camel case naming convention, e.g. `testMethod` instead of `test_method` - - comments for complicated code sections - - no `console.log` statements - - no `debugger` statements - - no `TODO` markers - - no duplicated code - - good modularization - - ... - -Once the PR has be successfully reviewed and approved the primary code owner / assignee merges the PR. -In addition, he/she should close any references issues which are not automatically closed. diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 4b2c3e4b6..1e45ee8df 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -14,9 +14,7 @@ When I... **Steps to Reproduce the Bug:** - - -1. go to **PASTE BROWSER URL HERE** + **Expected behavior** @@ -26,13 +24,13 @@ When I... -**Rating Scale (1 is minor, 7 is severe):** +**Severity:** **Context** -- Browser: + **Additional context** diff --git a/.github/ISSUE_TEMPLATE/data_quality_issue.md b/.github/ISSUE_TEMPLATE/data_quality_issue.md new file mode 100644 index 000000000..898607352 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/data_quality_issue.md @@ -0,0 +1,29 @@ +--- +name: Data quality issue +about: Missing data, weird data, broken data +title: '' +labels: 'data quality' +assignees: 'nmdefries' +--- + +**Actual Behavior:** + + + +When I... + +**Steps to Reproduce the Bug:** + + + +**Expected behavior** + + + +**Severity:** + + + +**Context** + + diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md index 45c49c855..25ddadfc8 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -2,7 +2,7 @@ name: 🚀 Feature Request about: Suggest an idea for this project title: '' -labels: 'enhancement' +labels: 'API addition' assignees: '' --- @@ -12,7 +12,7 @@ It would be great if ... **User story** - + **Additional context** diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 4330e05d0..000000000 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,15 +0,0 @@ -closes - -**Prerequisites**: - -- [ ] Unless it is a hotfix it should be merged against the `dev` branch -- [ ] Branch is up-to-date with the branch to be merged with, i.e. `dev` -- [ ] Build is successful -- [ ] Code is cleaned up and formatted - -### Summary - - diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml deleted file mode 100644 index 3386ec6f7..000000000 --- a/.github/workflows/ci.yml +++ /dev/null @@ -1,28 +0,0 @@ -name: ci - -on: [push] - -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v1 - with: - node-version: '12.x' - - name: Cache Node.js modules - uses: actions/cache@v2 - with: - path: ~/.npm # npm cache files are stored in `~/.npm` on Linux/macOS - key: ${{ runner.OS }}-node2-${{ hashFiles('**/package-lock.json') }} - restore-keys: | - ${{ runner.OS }}-node2- - - run: npm ci - - run: npm run lint - - run: npm run build - - name: Deploy - if: github.ref == 'refs/heads/main' && github.event_name == 'push' - uses: peaceiris/actions-gh-pages@v3 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./public From 8e6c33777a4e148c49b2857f5bcb44247e482878 Mon Sep 17 00:00:00 2001 From: Nat DeFries <42820733+nmdefries@users.noreply.github.com> Date: Thu, 17 Sep 2020 18:10:50 -0400 Subject: [PATCH 3/4] Removed bug_report template. Updated other templates to have more detail --- .github/ISSUE_TEMPLATE/bug_report.md | 37 ------------------- .github/ISSUE_TEMPLATE/data_quality_issue.md | 6 +-- .github/ISSUE_TEMPLATE/feature_request.md | 19 ---------- .../ISSUE_TEMPLATE/source_signal_request.md | 19 ++++++++++ 4 files changed, 20 insertions(+), 61 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/ISSUE_TEMPLATE/source_signal_request.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 1e45ee8df..000000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -name: 🐛 Bug report -about: If something isn't working as expected 🤔. -title: '' -labels: 'bug' -assignees: '' ---- - -**Actual Behavior:** - - - -When I... - -**Steps to Reproduce the Bug:** - - - -**Expected behavior** - - - -**Screenshots** - - - -**Severity:** - - - -**Context** - - - -**Additional context** - - diff --git a/.github/ISSUE_TEMPLATE/data_quality_issue.md b/.github/ISSUE_TEMPLATE/data_quality_issue.md index 898607352..7ef594f61 100644 --- a/.github/ISSUE_TEMPLATE/data_quality_issue.md +++ b/.github/ISSUE_TEMPLATE/data_quality_issue.md @@ -8,14 +8,10 @@ assignees: 'nmdefries' **Actual Behavior:** - + When I... -**Steps to Reproduce the Bug:** - - - **Expected behavior** diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 25ddadfc8..000000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -name: 🚀 Feature Request -about: Suggest an idea for this project -title: '' -labels: 'API addition' -assignees: '' ---- - - - -It would be great if ... - -**User story** - - - -**Additional context** - - diff --git a/.github/ISSUE_TEMPLATE/source_signal_request.md b/.github/ISSUE_TEMPLATE/source_signal_request.md new file mode 100644 index 000000000..885541a23 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/source_signal_request.md @@ -0,0 +1,19 @@ +--- +name: 🚀 New Source or Signal +about: Suggest incorporation of a new source or signal +title: '' +labels: 'API addition' +assignees: '' +--- + + + +It would be great if ... + +**Data details** + + + +**Additional context** + + From 98652c6be5f1dc86b222404c4c2ebefdd1cf0aba Mon Sep 17 00:00:00 2001 From: Nat DeFries <42820733+nmdefries@users.noreply.github.com> Date: Thu, 17 Sep 2020 18:27:59 -0400 Subject: [PATCH 4/4] Removed Severity section from data_quality template --- .github/ISSUE_TEMPLATE/data_quality_issue.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/data_quality_issue.md b/.github/ISSUE_TEMPLATE/data_quality_issue.md index 7ef594f61..c75b14e1c 100644 --- a/.github/ISSUE_TEMPLATE/data_quality_issue.md +++ b/.github/ISSUE_TEMPLATE/data_quality_issue.md @@ -16,10 +16,6 @@ When I... -**Severity:** - - - **Context**