Compare commits

...

7 Commits

Author SHA1 Message Date
Peter Evans
340e629d2f Merge pull request #152 from peter-evans/dev
Add input for draft pull requests
2020-04-04 09:50:05 +09:00
Peter Evans
abc19caa82 Add input for draft pull requests 2020-04-04 09:47:58 +09:00
Peter Evans
3474dda921 Update documentation 2020-04-03 17:26:11 +09:00
Peter Evans
ad11b10aa4 Merge pull request #151 from peter-evans/renovate/jest-monorepo
Update dependency jest to v25.2.7
2020-04-03 17:14:23 +09:00
Renovate Bot
86aa5be8bf Update dependency jest to v25.2.7 2020-04-03 07:58:49 +00:00
Peter Evans
6867319cf3 Merge pull request #149 from peter-evans/renovate/jest-monorepo
Update dependency jest to v25.2.6
2020-04-02 21:58:25 +09:00
Renovate Bot
cc84a2389e Update dependency jest to v25.2.6 2020-04-02 10:36:04 +00:00
11 changed files with 373 additions and 329 deletions

View File

@@ -28,6 +28,7 @@ jobs:
milestone: 1
project: Example Project
project-column: To do
draft: false
branch: example-patches
request-to-parent: false
- name: Check outputs

View File

@@ -53,6 +53,7 @@ All inputs are **optional**. If not set, sensible default values will be used.
| `milestone` | The number of the milestone to associate this pull request with. | |
| `project` | The name of the project for which a card should be created. Requires `project-column`. | |
| `project-column` | The name of the project column under which a card should be created. Requires `project`. | |
| `draft` | Create a [draft pull request](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests#draft-pull-requests). | `false` |
| `branch` | The branch name. See [Branch naming](#branch-naming) for details. | `create-pull-request/patch` |
| `request-to-parent` | Create the pull request in the parent repository of the checked out fork. See [push pull request branches to a fork](https://github.com/peter-evans/create-pull-request/blob/master/docs/concepts-guidelines.md#push-pull-request-branches-to-a-fork) for details. | `false` |
| `base` | Sets the pull request base branch. | Defaults to the branch checked out in the workflow. |
@@ -179,6 +180,7 @@ jobs:
milestone: 1
project: Example Project
project-column: To do
draft: false
branch: example-patches
request-to-parent: false
- name: Check outputs

View File

@@ -4,6 +4,20 @@ from github import Github, GithubException
import os
def string_to_bool(str):
if str is None:
return False
else:
return str.lower() in [
"true",
"1",
"t",
"y",
"yes",
"on",
]
def cs_string_to_list(str):
# Split the comma separated string into a list
l = [i.strip() for i in str.split(",")]
@@ -56,27 +70,31 @@ def create_or_update_pull_request(
team_reviewers,
project_name,
project_column_name,
draft,
request_to_parent,
):
if request_to_parent is None:
request_to_parent = False
else:
request_to_parent = request_to_parent.lower() in ['true', '1', 't', 'y', 'yes', 'on']
github_repo = head_repo = Github(github_token).get_repo(github_repository)
if request_to_parent:
if string_to_bool(request_to_parent):
github_repo = github_repo.parent
if github_repo is None:
raise ValueError("The checked out repository is not a fork. Input 'request-to-parent' should be set to false.")
raise ValueError(
"The checked out repository is not a fork. Input 'request-to-parent' should be set to false."
)
head_branch = f"{head_repo.owner.login}:{branch}"
# Create the pull request
try:
pull_request = github_repo.create_pull(
title=title, body=body, base=base, head=head_branch
title=title,
body=body,
base=base,
head=head_branch,
draft=string_to_bool(draft),
)
print(
f"Created pull request #{pull_request.number} ({head_branch} => {github_repo.owner.login}:{base})"
)
print(f"Created pull request #{pull_request.number} ({head_branch} => {github_repo.owner.login}:{base})")
except GithubException as e:
if e.status == 422:
# A pull request exists for this branch and base
@@ -86,7 +104,9 @@ def create_or_update_pull_request(
)[0]
# Update title and body
pull_request.as_issue().edit(title=title, body=body)
print(f"Updated pull request #{pull_request.number} ({head_branch} => {github_repo.owner.login}:{base})")
print(
f"Updated pull request #{pull_request.number} ({head_branch} => {github_repo.owner.login}:{base})"
)
else:
print(str(e))
raise

View File

@@ -224,5 +224,6 @@ if result["action"] in ["created", "updated"]:
os.environ.get("CPR_TEAM_REVIEWERS"),
os.environ.get("CPR_PROJECT_NAME"),
os.environ.get("CPR_PROJECT_COLUMN_NAME"),
os.environ.get("CPR_DRAFT"),
os.environ.get("CPR_REQUEST_TO_PARENT"),
)

2
dist/index.js vendored
View File

@@ -4274,6 +4274,7 @@ async function run() {
milestone: core.getInput("milestone"),
project: core.getInput("project"),
projectColumn: core.getInput("project-column"),
draft: core.getInput("draft"),
branch: core.getInput("branch"),
request_to_parent: core.getInput("request-to-parent"),
base: core.getInput("base"),
@@ -4296,6 +4297,7 @@ async function run() {
if (inputs.milestone) process.env.CPR_MILESTONE = inputs.milestone;
if (inputs.project) process.env.CPR_PROJECT_NAME = inputs.project;
if (inputs.projectColumn) process.env.CPR_PROJECT_COLUMN_NAME = inputs.projectColumn;
if (inputs.draft) process.env.CPR_DRAFT = inputs.draft;
if (inputs.branch) process.env.CPR_BRANCH = inputs.branch;
if (inputs.request_to_parent) process.env.CPR_REQUEST_TO_PARENT = inputs.request_to_parent;
if (inputs.base) process.env.CPR_BASE = inputs.base;

View File

@@ -162,16 +162,13 @@ How to use SSH (deploy keys) with create-pull-request action:
1. [Create a new SSH key pair](https://help.github.com/en/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key) for your repository. Do not set a passphrase.
2. Copy the contents of the public key (.pub file) to a new repository [deploy key](https://developer.github.com/v3/guides/managing-deploy-keys/#deploy-keys) and check the box to "Allow write access."
3. Add a secret to the repository containing the entire contents of the private key.
4. As shown in the example steps below, use the [`webfactory/ssh-agent`](https://github.com/webfactory/ssh-agent) action to install the private key and clone your repository. Remember to checkout the `base` of your pull request if it's not the default branch, e.g. `git checkout my-branch`.
4. As shown in the example below, configure `actions/checkout` to use the deploy key you have created.
```yml
steps:
- uses: webfactory/ssh-agent@v0.2.0
- uses: actions/checkout@v2
with:
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
- name: Checkout via SSH
run: git clone git@github.com:peter-evans/create-pull-request.git .
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
# Make changes to pull request here

600
package-lock.json generated
View File

@@ -343,14 +343,14 @@
"dev": true
},
"@jest/console": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/@jest/console/-/console-25.2.3.tgz",
"integrity": "sha512-k+37B1aSvOt9tKHWbZZSOy1jdgzesB0bj96igCVUG1nAH1W5EoUfgc5EXbBVU08KSLvkVdWopLXaO3xfVGlxtQ==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/@jest/console/-/console-25.2.6.tgz",
"integrity": "sha512-bGp+0PicZVCEhb+ifnW9wpKWONNdkhtJsRE7ap729hiAfTvCN6VhGx0s/l/V/skA2pnyqq+N/7xl9ZWfykDpsg==",
"dev": true,
"requires": {
"@jest/source-map": "^25.2.1",
"@jest/source-map": "^25.2.6",
"chalk": "^3.0.0",
"jest-util": "^25.2.3",
"jest-util": "^25.2.6",
"slash": "^3.0.0"
},
"dependencies": {
@@ -407,33 +407,33 @@
}
},
"@jest/core": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/@jest/core/-/core-25.2.4.tgz",
"integrity": "sha512-WcWYShl0Bqfcb32oXtjwbiR78D/djhMdJW+ulp4/bmHgeODcsieqUJfUH+kEv8M7VNV77E6jds5aA+WuGh1nmg==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/@jest/core/-/core-25.2.7.tgz",
"integrity": "sha512-Nd6ELJyR+j0zlwhzkfzY70m04hAur0VnMwJXVe4VmmD/SaQ6DEyal++ERQ1sgyKIKKEqRuui6k/R0wHLez4P+g==",
"dev": true,
"requires": {
"@jest/console": "^25.2.3",
"@jest/reporters": "^25.2.4",
"@jest/test-result": "^25.2.4",
"@jest/transform": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/console": "^25.2.6",
"@jest/reporters": "^25.2.6",
"@jest/test-result": "^25.2.6",
"@jest/transform": "^25.2.6",
"@jest/types": "^25.2.6",
"ansi-escapes": "^4.2.1",
"chalk": "^3.0.0",
"exit": "^0.1.2",
"graceful-fs": "^4.2.3",
"jest-changed-files": "^25.2.3",
"jest-config": "^25.2.4",
"jest-haste-map": "^25.2.3",
"jest-message-util": "^25.2.4",
"jest-regex-util": "^25.2.1",
"jest-resolve": "^25.2.3",
"jest-resolve-dependencies": "^25.2.4",
"jest-runner": "^25.2.4",
"jest-runtime": "^25.2.4",
"jest-snapshot": "^25.2.4",
"jest-util": "^25.2.3",
"jest-validate": "^25.2.3",
"jest-watcher": "^25.2.4",
"jest-changed-files": "^25.2.6",
"jest-config": "^25.2.7",
"jest-haste-map": "^25.2.6",
"jest-message-util": "^25.2.6",
"jest-regex-util": "^25.2.6",
"jest-resolve": "^25.2.6",
"jest-resolve-dependencies": "^25.2.7",
"jest-runner": "^25.2.7",
"jest-runtime": "^25.2.7",
"jest-snapshot": "^25.2.7",
"jest-util": "^25.2.6",
"jest-validate": "^25.2.6",
"jest-watcher": "^25.2.7",
"micromatch": "^4.0.2",
"p-each-series": "^2.1.0",
"realpath-native": "^2.0.0",
@@ -513,40 +513,40 @@
}
},
"@jest/environment": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-25.2.4.tgz",
"integrity": "sha512-wA4xlhD19/gukkDpJ5HQsTle0pgnzI5qMFEjw267lpTDC8d9N7Ihqr5pI+l0p8Qn1SQhai+glSqxrGdzKy4jxw==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-25.2.6.tgz",
"integrity": "sha512-17WIw+wCb9drRNFw1hi8CHah38dXVdOk7ga9exThhGtXlZ9mK8xH4DjSB9uGDGXIWYSHmrxoyS6KJ7ywGr7bzg==",
"dev": true,
"requires": {
"@jest/fake-timers": "^25.2.4",
"@jest/types": "^25.2.3",
"jest-mock": "^25.2.3"
"@jest/fake-timers": "^25.2.6",
"@jest/types": "^25.2.6",
"jest-mock": "^25.2.6"
}
},
"@jest/fake-timers": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.2.4.tgz",
"integrity": "sha512-oC1TJiwfMcBttVN7Wz+VZnqEAgYTiEMu0QLOXpypR89nab0uCB31zm/QeBZddhSstn20qe3yqOXygp6OwvKT/Q==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.2.6.tgz",
"integrity": "sha512-A6qtDIA2zg/hVgUJJYzQSHFBIp25vHdSxW/s4XmTJAYxER6eL0NQdQhe4+232uUSviKitubHGXXirt5M7blPiA==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"jest-message-util": "^25.2.4",
"jest-mock": "^25.2.3",
"jest-util": "^25.2.3",
"@jest/types": "^25.2.6",
"jest-message-util": "^25.2.6",
"jest-mock": "^25.2.6",
"jest-util": "^25.2.6",
"lolex": "^5.0.0"
}
},
"@jest/reporters": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-25.2.4.tgz",
"integrity": "sha512-VHbLxM03jCc+bTLOluW/IqHR2G0Cl0iATwIQbuZtIUast8IXO4fD0oy4jpVGpG5b20S6REA8U3BaQoCW/CeVNQ==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-25.2.6.tgz",
"integrity": "sha512-DRMyjaxcd6ZKctiXNcuVObnPwB1eUs7xrUVu0J2V0p5/aZJei5UM9GL3s/bmN4hRV8Mt3zXh+/9X2o0Q4ClZIA==",
"dev": true,
"requires": {
"@bcoe/v8-coverage": "^0.2.3",
"@jest/console": "^25.2.3",
"@jest/test-result": "^25.2.4",
"@jest/transform": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/console": "^25.2.6",
"@jest/test-result": "^25.2.6",
"@jest/transform": "^25.2.6",
"@jest/types": "^25.2.6",
"chalk": "^3.0.0",
"collect-v8-coverage": "^1.0.0",
"exit": "^0.1.2",
@@ -556,10 +556,10 @@
"istanbul-lib-report": "^3.0.0",
"istanbul-lib-source-maps": "^4.0.0",
"istanbul-reports": "^3.0.0",
"jest-haste-map": "^25.2.3",
"jest-resolve": "^25.2.3",
"jest-util": "^25.2.3",
"jest-worker": "^25.2.1",
"jest-haste-map": "^25.2.6",
"jest-resolve": "^25.2.6",
"jest-util": "^25.2.6",
"jest-worker": "^25.2.6",
"node-notifier": "^6.0.0",
"slash": "^3.0.0",
"source-map": "^0.6.0",
@@ -621,9 +621,9 @@
}
},
"@jest/source-map": {
"version": "25.2.1",
"resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.2.1.tgz",
"integrity": "sha512-PgScGJm1U27+9Te/cxP4oUFqJ2PX6NhBL2a6unQ7yafCgs8k02c0LSyjSIx/ao0AwcAdCczfAPDf5lJ7zoB/7A==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.2.6.tgz",
"integrity": "sha512-VuIRZF8M2zxYFGTEhkNSvQkUKafQro4y+mwUxy5ewRqs5N/ynSFUODYp3fy1zCnbCMy1pz3k+u57uCqx8QRSQQ==",
"dev": true,
"requires": {
"callsites": "^3.0.0",
@@ -632,46 +632,45 @@
}
},
"@jest/test-result": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.2.4.tgz",
"integrity": "sha512-AI7eUy+q2lVhFnaibDFg68NGkrxVWZdD6KBr9Hm6EvN0oAe7GxpEwEavgPfNHQjU2mi6g+NsFn/6QPgTUwM1qg==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.2.6.tgz",
"integrity": "sha512-gmGgcF4qz/pkBzyfJuVHo2DA24kIgVQ5Pf/VpW4QbyMLSegi8z+9foSZABfIt5se6k0fFj/3p/vrQXdaOgit0w==",
"dev": true,
"requires": {
"@jest/console": "^25.2.3",
"@jest/transform": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/console": "^25.2.6",
"@jest/types": "^25.2.6",
"@types/istanbul-lib-coverage": "^2.0.0",
"collect-v8-coverage": "^1.0.0"
}
},
"@jest/test-sequencer": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.2.4.tgz",
"integrity": "sha512-TEZm/Rkd6YgskdpTJdYLBtu6Gc11tfWPuSpatq0duH77ekjU8dpqX2zkPdY/ayuHxztV5LTJoV5BLtI9mZfXew==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.2.7.tgz",
"integrity": "sha512-s2uYGOXONDSTJQcZJ9A3Zkg3hwe53RlX1HjUNqjUy3HIqwgwCKJbnAKYsORPbhxXi3ARMKA7JNBi9arsTxXoYw==",
"dev": true,
"requires": {
"@jest/test-result": "^25.2.4",
"jest-haste-map": "^25.2.3",
"jest-runner": "^25.2.4",
"jest-runtime": "^25.2.4"
"@jest/test-result": "^25.2.6",
"jest-haste-map": "^25.2.6",
"jest-runner": "^25.2.7",
"jest-runtime": "^25.2.7"
}
},
"@jest/transform": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.2.4.tgz",
"integrity": "sha512-6eRigvb+G6bs4kW5j1/y8wu4nCrmVuIe0epPBbiWaYlwawJ8yi1EIyK3d/btDqmBpN5GpN4YhR6iPPnDmkYdTA==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.2.6.tgz",
"integrity": "sha512-rZnjCjZf9avPOf9q/w9RUZ9Uc29JmB53uIXNJmNz04QbDMD5cR/VjfikiMKajBsXe2vnFl5sJ4RTt+9HPicauQ==",
"dev": true,
"requires": {
"@babel/core": "^7.1.0",
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"babel-plugin-istanbul": "^6.0.0",
"chalk": "^3.0.0",
"convert-source-map": "^1.4.0",
"fast-json-stable-stringify": "^2.0.0",
"graceful-fs": "^4.2.3",
"jest-haste-map": "^25.2.3",
"jest-regex-util": "^25.2.1",
"jest-util": "^25.2.3",
"jest-haste-map": "^25.2.6",
"jest-regex-util": "^25.2.6",
"jest-util": "^25.2.6",
"micromatch": "^4.0.2",
"pirates": "^4.0.1",
"realpath-native": "^2.0.0",
@@ -733,9 +732,9 @@
}
},
"@jest/types": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/@jest/types/-/types-25.2.3.tgz",
"integrity": "sha512-6oLQwO9mKif3Uph3RX5J1i3S7X7xtDHWBaaaoeKw8hOzV6YUd0qDcYcHZ6QXMHDIzSr7zzrEa51o2Ovlj6AtKQ==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/@jest/types/-/types-25.2.6.tgz",
"integrity": "sha512-myJTTV37bxK7+3NgKc4Y/DlQ5q92/NOwZsZ+Uch7OXdElxOg61QYc72fPYNAjlvbnJ2YvbXLamIsa9tj48BmyQ==",
"dev": true,
"requires": {
"@types/istanbul-lib-coverage": "^2.0.0",
@@ -806,9 +805,9 @@
}
},
"@types/babel__core": {
"version": "7.1.6",
"resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.6.tgz",
"integrity": "sha512-tTnhWszAqvXnhW7m5jQU9PomXSiKXk2sFxpahXvI20SZKu9ylPi8WtIxueZ6ehDWikPT0jeFujMj3X4ZHuf3Tg==",
"version": "7.1.7",
"resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.7.tgz",
"integrity": "sha512-RL62NqSFPCDK2FM1pSDH0scHpJvsXtZNiYlMB73DgPBaG1E38ZYVL+ei5EkWRbr+KC4YNiAUNBnRj+bgwpgjMw==",
"dev": true,
"requires": {
"@babel/parser": "^7.1.0",
@@ -1089,16 +1088,16 @@
"dev": true
},
"babel-jest": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.2.4.tgz",
"integrity": "sha512-+yDzlyJVWrqih9i2Cvjpt7COaN8vUwCsKGtxJLzg6I0xhxD54K8mvDUCliPKLufyzHh/c5C4MRj4Vk7VMjOjIg==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.2.6.tgz",
"integrity": "sha512-MDJOAlwtIeIQiGshyX0d2PxTbV73xZMpNji40ivVTPQOm59OdRR9nYCkffqI7ugtsK4JR98HgNKbDbuVf4k5QQ==",
"dev": true,
"requires": {
"@jest/transform": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/transform": "^25.2.6",
"@jest/types": "^25.2.6",
"@types/babel__core": "^7.1.0",
"babel-plugin-istanbul": "^6.0.0",
"babel-preset-jest": "^25.2.1",
"babel-preset-jest": "^25.2.6",
"chalk": "^3.0.0",
"slash": "^3.0.0"
},
@@ -1169,23 +1168,23 @@
}
},
"babel-plugin-jest-hoist": {
"version": "25.2.1",
"resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.2.1.tgz",
"integrity": "sha512-HysbCQfJhxLlyxDbKcB2ucGYV0LjqK4h6dBoI3RtFuOxTiTWK6XGZMsHb0tGh8iJdV4hC6Z2GCHzVvDeh9i0lQ==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.2.6.tgz",
"integrity": "sha512-qE2xjMathybYxjiGFJg0mLFrz0qNp83aNZycWDY/SuHiZNq+vQfRQtuINqyXyue1ELd8Rd+1OhFSLjms8msMbw==",
"dev": true,
"requires": {
"@types/babel__traverse": "^7.0.6"
}
},
"babel-preset-jest": {
"version": "25.2.1",
"resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.2.1.tgz",
"integrity": "sha512-zXHJBM5iR8oEO4cvdF83AQqqJf3tJrXy3x8nfu2Nlqvn4cneg4Ca8M7cQvC5S9BzDDy1O0tZ9iXru9J6E3ym+A==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.2.6.tgz",
"integrity": "sha512-Xh2eEAwaLY9+SyMt/xmGZDnXTW/7pSaBPG0EMo7EuhvosFKVWYB6CqwYD31DaEQuoTL090oDZ0FEqygffGRaSQ==",
"dev": true,
"requires": {
"@babel/plugin-syntax-bigint": "^7.0.0",
"@babel/plugin-syntax-object-rest-spread": "^7.0.0",
"babel-plugin-jest-hoist": "^25.2.1"
"babel-plugin-jest-hoist": "^25.2.6"
}
},
"balanced-match": {
@@ -1449,9 +1448,9 @@
"dev": true
},
"collect-v8-coverage": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.0.tgz",
"integrity": "sha512-VKIhJgvk8E1W28m5avZ2Gv2Ruv5YiF56ug2oclvaG9md69BuZImMG2sk9g7QNKLUbtYAKQjXjYxbYZVUlMMKmQ==",
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz",
"integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==",
"dev": true
},
"collection-visit": {
@@ -1672,9 +1671,9 @@
"dev": true
},
"diff-sequences": {
"version": "25.2.1",
"resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.1.tgz",
"integrity": "sha512-foe7dXnGlSh3jR1ovJmdv+77VQj98eKCHHwJPbZ2eEf0fHwKbkZicpPxEch9smZ+n2dnF6QFwkOQdLq9hpeJUg==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.6.tgz",
"integrity": "sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==",
"dev": true
},
"doctrine": {
@@ -1934,17 +1933,17 @@
}
},
"expect": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/expect/-/expect-25.2.4.tgz",
"integrity": "sha512-hfuPhPds4yOsZtIw4kwAg70r0hqGmpqekgA+VX7pf/3wZ6FY+xIOXZhNsPMMMsspYG/YIsbAiwqsdnD4Ht+bCA==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/expect/-/expect-25.2.7.tgz",
"integrity": "sha512-yA+U2Ph0MkMsJ9N8q5hs9WgWI6oJYfecdXta6LkP/alY/jZZL1MHlJ2wbLh60Ucqf3G+51ytbqV3mlGfmxkpNw==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"ansi-styles": "^4.0.0",
"jest-get-type": "^25.2.1",
"jest-matcher-utils": "^25.2.3",
"jest-message-util": "^25.2.4",
"jest-regex-util": "^25.2.1"
"jest-get-type": "^25.2.6",
"jest-matcher-utils": "^25.2.7",
"jest-message-util": "^25.2.6",
"jest-regex-util": "^25.2.6"
},
"dependencies": {
"ansi-styles": {
@@ -2739,14 +2738,14 @@
}
},
"jest": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest/-/jest-25.2.4.tgz",
"integrity": "sha512-Lu4LXxf4+durzN/IFilcAoQSisOwgHIXgl9vffopePpSSwFqfj1Pj4y+k3nL8oTbnvjxgDIsEcepy6he4bWqnQ==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest/-/jest-25.2.7.tgz",
"integrity": "sha512-XV1n/CE2McCikl4tfpCY950RytHYvxdo/wvtgmn/qwA8z1s16fuvgFL/KoPrrmkqJTaPMUlLVE58pwiaTX5TdA==",
"dev": true,
"requires": {
"@jest/core": "^25.2.4",
"@jest/core": "^25.2.7",
"import-local": "^3.0.2",
"jest-cli": "^25.2.4"
"jest-cli": "^25.2.7"
},
"dependencies": {
"ansi-styles": {
@@ -2791,21 +2790,21 @@
"dev": true
},
"jest-cli": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-25.2.4.tgz",
"integrity": "sha512-zeY2pRDWKj2LZudIncvvguwLMEdcnJqc2jJbwza1beqi80qqLvkPF/BjbFkK2sIV3r+mfTJS+7ITrvK6pCdRjg==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-25.2.7.tgz",
"integrity": "sha512-OOAZwY4Jkd3r5WhVM5L3JeLNFaylvHUczMLxQDVLrrVyb1Cy+DNJ6MVsb5TLh6iBklB42m5TOP+IbOgKGGOtMw==",
"dev": true,
"requires": {
"@jest/core": "^25.2.4",
"@jest/test-result": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/core": "^25.2.7",
"@jest/test-result": "^25.2.6",
"@jest/types": "^25.2.6",
"chalk": "^3.0.0",
"exit": "^0.1.2",
"import-local": "^3.0.2",
"is-ci": "^2.0.0",
"jest-config": "^25.2.4",
"jest-util": "^25.2.3",
"jest-validate": "^25.2.3",
"jest-config": "^25.2.7",
"jest-util": "^25.2.6",
"jest-validate": "^25.2.6",
"prompts": "^2.0.1",
"realpath-native": "^2.0.0",
"yargs": "^15.3.1"
@@ -2823,12 +2822,12 @@
}
},
"jest-changed-files": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.2.3.tgz",
"integrity": "sha512-EFxy94dvvbqRB36ezIPLKJ4fDIC+jAdNs8i8uTwFpaXd6H3LVc3ova1lNS4ZPWk09OCR2vq5kSdSQgar7zMORg==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.2.6.tgz",
"integrity": "sha512-F7l2m5n55jFnJj4ItB9XbAlgO+6umgvz/mdK76BfTd2NGkvGf9x96hUXP/15a1K0k14QtVOoutwpRKl360msvg==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"execa": "^3.2.0",
"throat": "^5.0.0"
},
@@ -2925,28 +2924,28 @@
}
},
"jest-config": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-config/-/jest-config-25.2.4.tgz",
"integrity": "sha512-fxy3nIpwJqOUQJRVF/q+pNQb6dv5b9YufOeCbpPZJ/md1zXpiupbhfehpfODhnKOfqbzSiigtSLzlWWmbRxnqQ==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest-config/-/jest-config-25.2.7.tgz",
"integrity": "sha512-rIdPPXR6XUxi+7xO4CbmXXkE6YWprvlKc4kg1SrkCL2YV5m/8MkHstq9gBZJ19Qoa3iz/GP+0sTG/PcIwkFojg==",
"dev": true,
"requires": {
"@babel/core": "^7.1.0",
"@jest/test-sequencer": "^25.2.4",
"@jest/types": "^25.2.3",
"babel-jest": "^25.2.4",
"@jest/test-sequencer": "^25.2.7",
"@jest/types": "^25.2.6",
"babel-jest": "^25.2.6",
"chalk": "^3.0.0",
"deepmerge": "^4.2.2",
"glob": "^7.1.1",
"jest-environment-jsdom": "^25.2.4",
"jest-environment-node": "^25.2.4",
"jest-get-type": "^25.2.1",
"jest-jasmine2": "^25.2.4",
"jest-regex-util": "^25.2.1",
"jest-resolve": "^25.2.3",
"jest-util": "^25.2.3",
"jest-validate": "^25.2.3",
"jest-environment-jsdom": "^25.2.6",
"jest-environment-node": "^25.2.6",
"jest-get-type": "^25.2.6",
"jest-jasmine2": "^25.2.7",
"jest-regex-util": "^25.2.6",
"jest-resolve": "^25.2.6",
"jest-util": "^25.2.6",
"jest-validate": "^25.2.6",
"micromatch": "^4.0.2",
"pretty-format": "^25.2.3",
"pretty-format": "^25.2.6",
"realpath-native": "^2.0.0"
},
"dependencies": {
@@ -3003,15 +3002,15 @@
}
},
"jest-diff": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.2.3.tgz",
"integrity": "sha512-VtZ6LAQtaQpFsmEzps15dQc5ELbJxy4L2DOSo2Ev411TUEtnJPkAMD7JneVypeMJQ1y3hgxN9Ao13n15FAnavg==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.2.6.tgz",
"integrity": "sha512-KuadXImtRghTFga+/adnNrv9s61HudRMR7gVSbP35UKZdn4IK2/0N0PpGZIqtmllK9aUyye54I3nu28OYSnqOg==",
"dev": true,
"requires": {
"chalk": "^3.0.0",
"diff-sequences": "^25.2.1",
"jest-get-type": "^25.2.1",
"pretty-format": "^25.2.3"
"diff-sequences": "^25.2.6",
"jest-get-type": "^25.2.6",
"pretty-format": "^25.2.6"
},
"dependencies": {
"ansi-styles": {
@@ -3067,25 +3066,25 @@
}
},
"jest-docblock": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.2.3.tgz",
"integrity": "sha512-d3/tmjLLrH5fpRGmIm3oFa3vOaD/IjPxtXVOrfujpfJ9y1tCDB1x/tvunmdOVAyF03/xeMwburl6ITbiQT1mVA==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.2.6.tgz",
"integrity": "sha512-VAYrljEq0upq0oERfIaaNf28gC6p9gORndhHstCYF8NWGNQJnzoaU//S475IxfWMk4UjjVmS9rJKLe5Jjjbixw==",
"dev": true,
"requires": {
"detect-newline": "^3.0.0"
}
},
"jest-each": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-each/-/jest-each-25.2.3.tgz",
"integrity": "sha512-RTlmCjsBDK2c9T5oO4MqccA3/5Y8BUtiEy7OOQik1iyCgdnNdHbI0pNEpyapZPBG0nlvZ4mIu7aY6zNUvLraAQ==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-each/-/jest-each-25.2.6.tgz",
"integrity": "sha512-OgQ01VINaRD6idWJOhCYwUc5EcgHBiFlJuw+ON2VgYr7HLtMFyCcuo+3mmBvuLUH4QudREZN7cDCZviknzsaJQ==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"chalk": "^3.0.0",
"jest-get-type": "^25.2.1",
"jest-util": "^25.2.3",
"pretty-format": "^25.2.3"
"jest-get-type": "^25.2.6",
"jest-util": "^25.2.6",
"pretty-format": "^25.2.6"
},
"dependencies": {
"ansi-styles": {
@@ -3141,53 +3140,53 @@
}
},
"jest-environment-jsdom": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.2.4.tgz",
"integrity": "sha512-5dm+tNwrLmhELdjAwiQnVGf/U9iFMWdTL4/wyrMg2HU6RQnCiuxpWbIigLHUhuP1P2Ak0F4k3xhjrikboKyShA==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.2.6.tgz",
"integrity": "sha512-/o7MZIhGmLGIEG5j7r5B5Az0umWLCHU+F5crwfbm0BzC4ybHTJZOQTFQWhohBg+kbTCNOuftMcqHlVkVduJCQQ==",
"dev": true,
"requires": {
"@jest/environment": "^25.2.4",
"@jest/fake-timers": "^25.2.4",
"@jest/types": "^25.2.3",
"jest-mock": "^25.2.3",
"jest-util": "^25.2.3",
"@jest/environment": "^25.2.6",
"@jest/fake-timers": "^25.2.6",
"@jest/types": "^25.2.6",
"jest-mock": "^25.2.6",
"jest-util": "^25.2.6",
"jsdom": "^15.2.1"
}
},
"jest-environment-node": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.2.4.tgz",
"integrity": "sha512-Jkc5Y8goyXPrLRHnrUlqC7P4o5zn2m4zw6qWoRJ59kxV1f2a5wK+TTGhrhCwnhW/Ckpdl/pm+LufdvhJkvJbiw==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.2.6.tgz",
"integrity": "sha512-D1Ihj14fxZiMHGeTtU/LunhzSI+UeBvlr/rcXMTNyRMUMSz2PEhuqGbB78brBY6Dk3FhJDk7Ta+8reVaGjLWhA==",
"dev": true,
"requires": {
"@jest/environment": "^25.2.4",
"@jest/fake-timers": "^25.2.4",
"@jest/types": "^25.2.3",
"jest-mock": "^25.2.3",
"jest-util": "^25.2.3",
"@jest/environment": "^25.2.6",
"@jest/fake-timers": "^25.2.6",
"@jest/types": "^25.2.6",
"jest-mock": "^25.2.6",
"jest-util": "^25.2.6",
"semver": "^6.3.0"
}
},
"jest-get-type": {
"version": "25.2.1",
"resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.1.tgz",
"integrity": "sha512-EYjTiqcDTCRJDcSNKbLTwn/LcDPEE7ITk8yRMNAOjEsN6yp+Uu+V1gx4djwnuj/DvWg0YGmqaBqPVGsPxlvE7w==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz",
"integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==",
"dev": true
},
"jest-haste-map": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.2.3.tgz",
"integrity": "sha512-pAP22OHtPr4qgZlJJFks2LLgoQUr4XtM1a+F5UaPIZNiCRnePA0hM3L7aiJ0gzwiNIYwMTfKRwG/S1L28J3A3A==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.2.6.tgz",
"integrity": "sha512-nom0+fnY8jwzelSDQnrqaKAcDZczYQvMEwcBjeL3PQ4MlcsqeB7dmrsAniUw/9eLkngT5DE6FhnenypilQFsgA==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"anymatch": "^3.0.3",
"fb-watchman": "^2.0.0",
"fsevents": "^2.1.2",
"graceful-fs": "^4.2.3",
"jest-serializer": "^25.2.1",
"jest-util": "^25.2.3",
"jest-worker": "^25.2.1",
"jest-serializer": "^25.2.6",
"jest-util": "^25.2.6",
"jest-worker": "^25.2.6",
"micromatch": "^4.0.2",
"sane": "^4.0.3",
"walker": "^1.0.7",
@@ -3206,27 +3205,27 @@
}
},
"jest-jasmine2": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.2.4.tgz",
"integrity": "sha512-juoKrmNmLwaheNbAg71SuUF9ovwUZCFNTpKVhvCXWk+SSeORcIUMptKdPCoLXV3D16htzhTSKmNxnxSk4SrTjA==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.2.7.tgz",
"integrity": "sha512-HeQxEbonp8fUvik9jF0lkU9ab1u5TQdIb7YSU9Fj7SxWtqHNDGyCpF6ZZ3r/5yuertxi+R95Ba9eA91GMQ38eA==",
"dev": true,
"requires": {
"@babel/traverse": "^7.1.0",
"@jest/environment": "^25.2.4",
"@jest/source-map": "^25.2.1",
"@jest/test-result": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/environment": "^25.2.6",
"@jest/source-map": "^25.2.6",
"@jest/test-result": "^25.2.6",
"@jest/types": "^25.2.6",
"chalk": "^3.0.0",
"co": "^4.6.0",
"expect": "^25.2.4",
"expect": "^25.2.7",
"is-generator-fn": "^2.0.0",
"jest-each": "^25.2.3",
"jest-matcher-utils": "^25.2.3",
"jest-message-util": "^25.2.4",
"jest-runtime": "^25.2.4",
"jest-snapshot": "^25.2.4",
"jest-util": "^25.2.3",
"pretty-format": "^25.2.3",
"jest-each": "^25.2.6",
"jest-matcher-utils": "^25.2.7",
"jest-message-util": "^25.2.6",
"jest-runtime": "^25.2.7",
"jest-snapshot": "^25.2.7",
"jest-util": "^25.2.6",
"pretty-format": "^25.2.6",
"throat": "^5.0.0"
},
"dependencies": {
@@ -3283,25 +3282,25 @@
}
},
"jest-leak-detector": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.2.3.tgz",
"integrity": "sha512-yblCMPE7NJKl7778Cf/73yyFWAas5St0iiEBwq7RDyaz6Xd4WPFnPz2j7yDb/Qce71A1IbDoLADlcwD8zT74Aw==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.2.6.tgz",
"integrity": "sha512-n+aJUM+j/x1kIaPVxzerMqhAUuqTU1PL5kup46rXh+l9SP8H6LqECT/qD1GrnylE1L463/0StSPkH4fUpkuEjA==",
"dev": true,
"requires": {
"jest-get-type": "^25.2.1",
"pretty-format": "^25.2.3"
"jest-get-type": "^25.2.6",
"pretty-format": "^25.2.6"
}
},
"jest-matcher-utils": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.2.3.tgz",
"integrity": "sha512-ZmiXiwQRVM9MoKjGMP5YsGGk2Th5ncyRxfXKz5AKsmU8m43kgNZirckVzaP61MlSa9LKmXbevdYqVp1ZKAw2Rw==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.2.7.tgz",
"integrity": "sha512-jNYmKQPRyPO3ny0KY1I4f0XW4XnpJ3Nx5ovT4ik0TYDOYzuXJW40axqOyS61l/voWbVT9y9nZ1THL1DlpaBVpA==",
"dev": true,
"requires": {
"chalk": "^3.0.0",
"jest-diff": "^25.2.3",
"jest-get-type": "^25.2.1",
"pretty-format": "^25.2.3"
"jest-diff": "^25.2.6",
"jest-get-type": "^25.2.6",
"pretty-format": "^25.2.6"
},
"dependencies": {
"ansi-styles": {
@@ -3357,14 +3356,13 @@
}
},
"jest-message-util": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.2.4.tgz",
"integrity": "sha512-9wWMH3Bf+GVTv0GcQLmH/FRr0x0toptKw9TA8U5YFLVXx7Tq9pvcNzTyJrcTJ+wLqNbMPPJlJNft4MnlcrtF5Q==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.2.6.tgz",
"integrity": "sha512-Hgg5HbOssSqOuj+xU1mi7m3Ti2nwSQJQf/kxEkrz2r2rp2ZLO1pMeKkz2WiDUWgSR+APstqz0uMFcE5yc0qdcg==",
"dev": true,
"requires": {
"@babel/code-frame": "^7.0.0",
"@jest/test-result": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"@types/stack-utils": "^1.0.1",
"chalk": "^3.0.0",
"micromatch": "^4.0.2",
@@ -3425,12 +3423,12 @@
}
},
"jest-mock": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.2.3.tgz",
"integrity": "sha512-xlf+pyY0j47zoCs8zGGOGfWyxxLximE8YFOfEK8s4FruR8DtM/UjNj61um+iDuMAFEBDe1bhCXkqiKoCmWjJzg==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.2.6.tgz",
"integrity": "sha512-vc4nibavi2RGPdj/MyZy/azuDjZhpYZLvpfgq1fxkhbyTpKVdG7CgmRVKJ7zgLpY5kuMjTzDYA6QnRwhsCU+tA==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3"
"@jest/types": "^25.2.6"
}
},
"jest-pnp-resolver": {
@@ -3440,18 +3438,18 @@
"dev": true
},
"jest-regex-util": {
"version": "25.2.1",
"resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.2.1.tgz",
"integrity": "sha512-wroFVJw62LdqTdkL508ZLV82FrJJWVJMIuYG7q4Uunl1WAPTf4ftPKrqqfec4SvOIlvRZUdEX2TFpWR356YG/w==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.2.6.tgz",
"integrity": "sha512-KQqf7a0NrtCkYmZZzodPftn7fL1cq3GQAFVMn5Hg8uKx/fIenLEobNanUxb7abQ1sjADHBseG/2FGpsv/wr+Qw==",
"dev": true
},
"jest-resolve": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.2.3.tgz",
"integrity": "sha512-1vZMsvM/DBH258PnpUNSXIgtzpYz+vCVCj9+fcy4akZl4oKbD+9hZSlfe9RIDpU0Fc28ozHQrmwX3EqFRRIHGg==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.2.6.tgz",
"integrity": "sha512-7O61GVdcAXkLz/vNGKdF+00A80/fKEAA47AEXVNcZwj75vEjPfZbXDaWFmAQCyXj4oo9y9dC9D+CLA11t8ieGw==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"browser-resolve": "^1.11.3",
"chalk": "^3.0.0",
"jest-pnp-resolver": "^1.2.1",
@@ -3512,39 +3510,39 @@
}
},
"jest-resolve-dependencies": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.2.4.tgz",
"integrity": "sha512-qhUnK4PfNHzNdca7Ub1mbAqE0j5WNyMTwxBZZJjQlUrdqsiYho/QGK65FuBkZuSoYtKIIqriR9TpGrPEc3P5Gg==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.2.7.tgz",
"integrity": "sha512-IrnMzCAh11Xd2gAOJL+ThEW6QO8DyqNdvNkQcaCticDrOAr9wtKT7yT6QBFFjqKFgjjvaVKDs59WdgUhgYnHnQ==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"jest-regex-util": "^25.2.1",
"jest-snapshot": "^25.2.4"
"@jest/types": "^25.2.6",
"jest-regex-util": "^25.2.6",
"jest-snapshot": "^25.2.7"
}
},
"jest-runner": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-25.2.4.tgz",
"integrity": "sha512-5xaIfqqxck9Wg2CV4b9KmJtf/sWO7zWQx7O+34GCLGPzoPcVmB3mZtdrQI1/jS3Reqjru9ycLjgLHSf6XoxRqA==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-25.2.7.tgz",
"integrity": "sha512-RFEr71nMrtNwcpoHzie5+fe1w3JQCGMyT2xzNwKe3f88+bK+frM2o1v24gEcPxQ2QqB3COMCe2+1EkElP+qqqQ==",
"dev": true,
"requires": {
"@jest/console": "^25.2.3",
"@jest/environment": "^25.2.4",
"@jest/test-result": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/console": "^25.2.6",
"@jest/environment": "^25.2.6",
"@jest/test-result": "^25.2.6",
"@jest/types": "^25.2.6",
"chalk": "^3.0.0",
"exit": "^0.1.2",
"graceful-fs": "^4.2.3",
"jest-config": "^25.2.4",
"jest-docblock": "^25.2.3",
"jest-haste-map": "^25.2.3",
"jest-jasmine2": "^25.2.4",
"jest-leak-detector": "^25.2.3",
"jest-message-util": "^25.2.4",
"jest-resolve": "^25.2.3",
"jest-runtime": "^25.2.4",
"jest-util": "^25.2.3",
"jest-worker": "^25.2.1",
"jest-config": "^25.2.7",
"jest-docblock": "^25.2.6",
"jest-haste-map": "^25.2.6",
"jest-jasmine2": "^25.2.7",
"jest-leak-detector": "^25.2.6",
"jest-message-util": "^25.2.6",
"jest-resolve": "^25.2.6",
"jest-runtime": "^25.2.7",
"jest-util": "^25.2.6",
"jest-worker": "^25.2.6",
"source-map-support": "^0.5.6",
"throat": "^5.0.0"
},
@@ -3602,32 +3600,32 @@
}
},
"jest-runtime": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.2.4.tgz",
"integrity": "sha512-6ehOUizgIghN+aV5YSrDzTZ+zJ9omgEjJbTHj3Jqes5D52XHfhzT7cSfdREwkNjRytrR7mNwZ7pRauoyNLyJ8Q==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.2.7.tgz",
"integrity": "sha512-Gw3X8KxTTFylu2T/iDSNKRUQXQiPIYUY0b66GwVYa7W8wySkUljKhibQHSq0VhmCAN7vRBEQjlVQ+NFGNmQeBw==",
"dev": true,
"requires": {
"@jest/console": "^25.2.3",
"@jest/environment": "^25.2.4",
"@jest/source-map": "^25.2.1",
"@jest/test-result": "^25.2.4",
"@jest/transform": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/console": "^25.2.6",
"@jest/environment": "^25.2.6",
"@jest/source-map": "^25.2.6",
"@jest/test-result": "^25.2.6",
"@jest/transform": "^25.2.6",
"@jest/types": "^25.2.6",
"@types/yargs": "^15.0.0",
"chalk": "^3.0.0",
"collect-v8-coverage": "^1.0.0",
"exit": "^0.1.2",
"glob": "^7.1.3",
"graceful-fs": "^4.2.3",
"jest-config": "^25.2.4",
"jest-haste-map": "^25.2.3",
"jest-message-util": "^25.2.4",
"jest-mock": "^25.2.3",
"jest-regex-util": "^25.2.1",
"jest-resolve": "^25.2.3",
"jest-snapshot": "^25.2.4",
"jest-util": "^25.2.3",
"jest-validate": "^25.2.3",
"jest-config": "^25.2.7",
"jest-haste-map": "^25.2.6",
"jest-message-util": "^25.2.6",
"jest-mock": "^25.2.6",
"jest-regex-util": "^25.2.6",
"jest-resolve": "^25.2.6",
"jest-snapshot": "^25.2.7",
"jest-util": "^25.2.6",
"jest-validate": "^25.2.6",
"realpath-native": "^2.0.0",
"slash": "^3.0.0",
"strip-bom": "^4.0.0",
@@ -3687,30 +3685,30 @@
}
},
"jest-serializer": {
"version": "25.2.1",
"resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.2.1.tgz",
"integrity": "sha512-fibDi7M5ffx6c/P66IkvR4FKkjG5ldePAK1WlbNoaU4GZmIAkS9Le/frAwRUFEX0KdnisSPWf+b1RC5jU7EYJQ==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.2.6.tgz",
"integrity": "sha512-RMVCfZsezQS2Ww4kB5HJTMaMJ0asmC0BHlnobQC6yEtxiFKIxohFA4QSXSabKwSggaNkqxn6Z2VwdFCjhUWuiQ==",
"dev": true
},
"jest-snapshot": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.2.4.tgz",
"integrity": "sha512-nIwpW7FZCq5p0AE3Oyqyb6jL0ENJixXzJ5/CD/XRuOqp3gS5OM3O/k+NnTrniCXxPFV4ry6s9HNfiPQBi0wcoA==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.2.7.tgz",
"integrity": "sha512-Rm8k7xpGM4tzmYhB6IeRjsOMkXaU8/FOz5XlU6oYwhy53mq6txVNqIKqN1VSiexzpC80oWVxVDfUDt71M6XPOA==",
"dev": true,
"requires": {
"@babel/types": "^7.0.0",
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"@types/prettier": "^1.19.0",
"chalk": "^3.0.0",
"expect": "^25.2.4",
"jest-diff": "^25.2.3",
"jest-get-type": "^25.2.1",
"jest-matcher-utils": "^25.2.3",
"jest-message-util": "^25.2.4",
"jest-resolve": "^25.2.3",
"expect": "^25.2.7",
"jest-diff": "^25.2.6",
"jest-get-type": "^25.2.6",
"jest-matcher-utils": "^25.2.7",
"jest-message-util": "^25.2.6",
"jest-resolve": "^25.2.6",
"make-dir": "^3.0.0",
"natural-compare": "^1.4.0",
"pretty-format": "^25.2.3",
"pretty-format": "^25.2.6",
"semver": "^6.3.0"
},
"dependencies": {
@@ -3767,12 +3765,12 @@
}
},
"jest-util": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.2.3.tgz",
"integrity": "sha512-7tWiMICVSo9lNoObFtqLt9Ezt5exdFlWs5fLe1G4XLY2lEbZc814cw9t4YHScqBkWMfzth8ASHKlYBxiX2rdCw==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.2.6.tgz",
"integrity": "sha512-gpXy0H5ymuQ0x2qgl1zzHg7LYHZYUmDEq6F7lhHA8M0eIwDB2WteOcCnQsohl9c/vBKZ3JF2r4EseipCZz3s4Q==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"chalk": "^3.0.0",
"is-ci": "^2.0.0",
"make-dir": "^3.0.0"
@@ -3831,17 +3829,17 @@
}
},
"jest-validate": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.2.3.tgz",
"integrity": "sha512-GObn91jzU0B0Bv4cusAwjP6vnWy78hJUM8MOSz7keRfnac/ZhQWIsUjvk01IfeXNTemCwgR57EtdjQMzFZGREg==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.2.6.tgz",
"integrity": "sha512-a4GN7hYbqQ3Rt9iHsNLFqQz7HDV7KiRPCwPgo5nqtTIWNZw7gnT8KchG+Riwh+UTSn8REjFCodGp50KX/fRNgQ==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"camelcase": "^5.3.1",
"chalk": "^3.0.0",
"jest-get-type": "^25.2.1",
"jest-get-type": "^25.2.6",
"leven": "^3.1.0",
"pretty-format": "^25.2.3"
"pretty-format": "^25.2.6"
},
"dependencies": {
"ansi-styles": {
@@ -3897,16 +3895,16 @@
}
},
"jest-watcher": {
"version": "25.2.4",
"resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.2.4.tgz",
"integrity": "sha512-p7g7s3zqcy69slVzQYcphyzkB2FBmJwMbv6k6KjI5mqd6KnUnQPfQVKuVj2l+34EeuxnbXqnrjtUFmxhcL87rg==",
"version": "25.2.7",
"resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.2.7.tgz",
"integrity": "sha512-RdHuW+f49tahWtluTnUdZ2iPliebleROI2L/J5phYrUS6DPC9RB3SuUtqYyYhGZJsbvRSuLMIlY/cICJ+PIecw==",
"dev": true,
"requires": {
"@jest/test-result": "^25.2.4",
"@jest/types": "^25.2.3",
"@jest/test-result": "^25.2.6",
"@jest/types": "^25.2.6",
"ansi-escapes": "^4.2.1",
"chalk": "^3.0.0",
"jest-util": "^25.2.3",
"jest-util": "^25.2.6",
"string-length": "^3.1.0"
},
"dependencies": {
@@ -3963,9 +3961,9 @@
}
},
"jest-worker": {
"version": "25.2.1",
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.2.1.tgz",
"integrity": "sha512-IHnpekk8H/hCUbBlfeaPZzU6v75bqwJp3n4dUrQuQOAgOneI4tx3jV2o8pvlXnDfcRsfkFIUD//HWXpCmR+evQ==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.2.6.tgz",
"integrity": "sha512-FJn9XDUSxcOR4cwDzRfL1z56rUofNTFs539FGASpd50RHdb6EVkhxQqktodW2mI49l+W3H+tFJDotCHUQF6dmA==",
"dev": true,
"requires": {
"merge-stream": "^2.0.0",
@@ -4582,12 +4580,12 @@
"dev": true
},
"pretty-format": {
"version": "25.2.3",
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.2.3.tgz",
"integrity": "sha512-IP4+5UOAVGoyqC/DiomOeHBUKN6q00gfyT2qpAsRH64tgOKB2yF7FHJXC18OCiU0/YFierACup/zdCOWw0F/0w==",
"version": "25.2.6",
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.2.6.tgz",
"integrity": "sha512-DEiWxLBaCHneffrIT4B+TpMvkV9RNvvJrd3lY9ew1CEQobDzEXmYT1mg0hJhljZty7kCc10z13ohOFAE8jrUDg==",
"dev": true,
"requires": {
"@jest/types": "^25.2.3",
"@jest/types": "^25.2.6",
"ansi-regex": "^5.0.0",
"ansi-styles": "^4.0.0",
"react-is": "^16.12.0"

View File

@@ -31,6 +31,6 @@
"devDependencies": {
"@zeit/ncc": "0.22.0",
"eslint": "6.8.0",
"jest": "25.2.4"
"jest": "25.2.7"
}
}

View File

@@ -4,6 +4,20 @@ from github import Github, GithubException
import os
def string_to_bool(str):
if str is None:
return False
else:
return str.lower() in [
"true",
"1",
"t",
"y",
"yes",
"on",
]
def cs_string_to_list(str):
# Split the comma separated string into a list
l = [i.strip() for i in str.split(",")]
@@ -56,27 +70,31 @@ def create_or_update_pull_request(
team_reviewers,
project_name,
project_column_name,
draft,
request_to_parent,
):
if request_to_parent is None:
request_to_parent = False
else:
request_to_parent = request_to_parent.lower() in ['true', '1', 't', 'y', 'yes', 'on']
github_repo = head_repo = Github(github_token).get_repo(github_repository)
if request_to_parent:
if string_to_bool(request_to_parent):
github_repo = github_repo.parent
if github_repo is None:
raise ValueError("The checked out repository is not a fork. Input 'request-to-parent' should be set to false.")
raise ValueError(
"The checked out repository is not a fork. Input 'request-to-parent' should be set to false."
)
head_branch = f"{head_repo.owner.login}:{branch}"
# Create the pull request
try:
pull_request = github_repo.create_pull(
title=title, body=body, base=base, head=head_branch
title=title,
body=body,
base=base,
head=head_branch,
draft=string_to_bool(draft),
)
print(
f"Created pull request #{pull_request.number} ({head_branch} => {github_repo.owner.login}:{base})"
)
print(f"Created pull request #{pull_request.number} ({head_branch} => {github_repo.owner.login}:{base})")
except GithubException as e:
if e.status == 422:
# A pull request exists for this branch and base
@@ -86,7 +104,9 @@ def create_or_update_pull_request(
)[0]
# Update title and body
pull_request.as_issue().edit(title=title, body=body)
print(f"Updated pull request #{pull_request.number} ({head_branch} => {github_repo.owner.login}:{base})")
print(
f"Updated pull request #{pull_request.number} ({head_branch} => {github_repo.owner.login}:{base})"
)
else:
print(str(e))
raise

View File

@@ -192,7 +192,7 @@ result = coub.create_or_update_branch(repo, repo_url, commit_message, base, bran
if result["action"] in ["created", "updated"]:
# The branch was created or updated
print(f"Pushing pull request branch to '{repo.full_name}/{branch}'")
print(f"Pushing pull request branch to 'origin/{branch}'")
repo.git.push("--force", repo_url, f"HEAD:refs/heads/{branch}")
# Set the base. It would have been 'None' if not specified as an input
@@ -224,5 +224,6 @@ if result["action"] in ["created", "updated"]:
os.environ.get("CPR_TEAM_REVIEWERS"),
os.environ.get("CPR_PROJECT_NAME"),
os.environ.get("CPR_PROJECT_COLUMN_NAME"),
os.environ.get("CPR_DRAFT"),
os.environ.get("CPR_REQUEST_TO_PARENT"),
)

View File

@@ -62,6 +62,7 @@ async function run() {
milestone: core.getInput("milestone"),
project: core.getInput("project"),
projectColumn: core.getInput("project-column"),
draft: core.getInput("draft"),
branch: core.getInput("branch"),
request_to_parent: core.getInput("request-to-parent"),
base: core.getInput("base"),
@@ -84,6 +85,7 @@ async function run() {
if (inputs.milestone) process.env.CPR_MILESTONE = inputs.milestone;
if (inputs.project) process.env.CPR_PROJECT_NAME = inputs.project;
if (inputs.projectColumn) process.env.CPR_PROJECT_COLUMN_NAME = inputs.projectColumn;
if (inputs.draft) process.env.CPR_DRAFT = inputs.draft;
if (inputs.branch) process.env.CPR_BRANCH = inputs.branch;
if (inputs.request_to_parent) process.env.CPR_REQUEST_TO_PARENT = inputs.request_to_parent;
if (inputs.base) process.env.CPR_BASE = inputs.base;