-
Notifications
You must be signed in to change notification settings - Fork 469
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update on "allow customized head_dim"
This is for resolving the ask in this [post](https://fb.workplace.com/groups/pytorch.edge.users/permalink/1574875706716050/). Similar change in HF: huggingface/transformers#32502 Differential Revision: [D65974454](https://our.internmc.facebook.com/intern/diff/D65974454/) [ghstack-poisoned]
- Loading branch information
Showing
232 changed files
with
14,152 additions
and
2,226 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
#!/usr/bin/env python3 | ||
"""Check whether a PR has required labels.""" | ||
|
||
import sys | ||
from typing import Any | ||
|
||
from github_utils import gh_delete_comment, gh_post_pr_comment | ||
from gitutils import get_git_remote_name, get_git_repo_dir, GitRepo | ||
from label_utils import has_required_labels, is_label_err_comment, LABEL_ERR_MSG | ||
from trymerge import GitHubPR | ||
|
||
|
||
def delete_all_label_err_comments(pr: "GitHubPR") -> None: | ||
for comment in pr.get_comments(): | ||
if is_label_err_comment(comment): | ||
gh_delete_comment(pr.org, pr.project, comment.database_id) | ||
|
||
|
||
def add_label_err_comment(pr: "GitHubPR") -> None: | ||
# Only make a comment if one doesn't exist already | ||
if not any(is_label_err_comment(comment) for comment in pr.get_comments()): | ||
gh_post_pr_comment(pr.org, pr.project, pr.pr_num, LABEL_ERR_MSG) | ||
|
||
|
||
def parse_args() -> Any: | ||
from argparse import ArgumentParser | ||
|
||
parser = ArgumentParser("Check PR labels") | ||
parser.add_argument("pr_num", type=int) | ||
# add a flag to return a non-zero exit code if the PR does not have the required labels | ||
parser.add_argument( | ||
"--exit-non-zero", | ||
action="store_true", | ||
help="Return a non-zero exit code if the PR does not have the required labels", | ||
) | ||
|
||
return parser.parse_args() | ||
|
||
|
||
def main() -> None: | ||
args = parse_args() | ||
repo = GitRepo(get_git_repo_dir(), get_git_remote_name()) | ||
org, project = repo.gh_owner_and_name() | ||
pr = GitHubPR(org, project, args.pr_num) | ||
|
||
try: | ||
if not has_required_labels(pr): | ||
print(LABEL_ERR_MSG, flush=True) | ||
add_label_err_comment(pr) | ||
if args.exit_non_zero: | ||
raise RuntimeError("PR does not have required labels") | ||
else: | ||
delete_all_label_err_comments(pr) | ||
except Exception as e: | ||
if args.exit_non_zero: | ||
raise RuntimeError(f"Error checking labels: {e}") from e | ||
|
||
sys.exit(0) | ||
|
||
|
||
if __name__ == "__main__": | ||
main() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
name: Check Labels | ||
|
||
on: | ||
# We need pull_request_target to be able to post comments on PRs from forks. | ||
# Only allow pull_request_target when merging to main, not some historical branch. | ||
# | ||
# Make sure to don't introduce explicit checking out and installing/running | ||
# untrusted user code into this workflow! | ||
pull_request_target: | ||
types: [opened, synchronize, reopened, labeled, unlabeled] | ||
branches: [main] | ||
|
||
# To check labels on ghstack PRs. | ||
# Note: as pull_request doesn't trigger on PRs targeting main, | ||
# to test changes to the workflow itself one needs to create | ||
# a PR that targets a gh/**/base branch. | ||
pull_request: | ||
types: [opened, synchronize, reopened, labeled, unlabeled] | ||
branches: [gh/**/base] | ||
|
||
workflow_dispatch: | ||
inputs: | ||
pr_number: | ||
description: 'PR number to check labels for' | ||
required: true | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}-${{ github.event_name == 'workflow_dispatch' }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
check-labels: | ||
permissions: | ||
contents: read | ||
pull-requests: write | ||
name: Check labels | ||
if: github.repository_owner == 'pytorch' | ||
runs-on: ubuntu-22.04 | ||
steps: | ||
- uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 | ||
- uses: actions/setup-python@v4 | ||
with: | ||
python-version: '3.10' | ||
# Not the direct dependencies but the script uses trymerge | ||
- run: pip install pyyaml==6.0 rockset==1.0.3 | ||
- name: Check labels | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
PR_NUM: ${{ github.event.number || github.event.inputs.pr_number }} | ||
run: | | ||
set -ex | ||
python3 .github/scripts/check_labels.py --exit-non-zero "${PR_NUM}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.