목차
시작하기
후속 요청 구현
发送提醒电子邮件
总结
백엔드 개발 파이썬 튜토리얼 Python 코드 검토 스케줄러 구축: 후속 조치 검토

Python 코드 검토 스케줄러 구축: 후속 조치 검토

Aug 30, 2023 pm 08:09 PM
코드 검토 스케줄러 후속 조치 검토

Python 코드 검토 스케줄러 구축: 후속 조치 검토

이 시리즈의 3부에서는 나중에 처리하기 위해 코드 검토 요청 정보를 저장하는 방법을 배웠습니다. 검토자가 코드 검토 요청에 응답했는지 확인하기 위해 받은 편지함에서 이메일을 받는 read_email라는 메서드를 만듭니다. 또한 코드 검토 스케줄러 코드에서 오류 처리를 구현했습니다.

이 시리즈에서는 저장된 코드 검토 정보와 이메일 정보를 사용하여 검토자가 검토 요청에 응답했는지 확인합니다. 요청에 응답하지 않은 경우 검토자에게 후속 이메일을 보내게 됩니다.

시작하기

이 튜토리얼 시리즈 3부의 소스 코드를 복제하는 것부터 시작하세요.

으아악

수정 config.json 文件以包含一些相关的电子邮件地址,并保留 royagasthyan@gmail.com 电子邮件地址。这是因为 git 具有与此特定电子邮件地址相关的提交,这是代码按预期执行所必需的。修改 schedule.py 文件中的 SMTP 자격 증명:

으아악

프로젝트 디렉터리 CodeReviewer로 이동하여 터미널에서 다음 명령을 실행해 보세요.

으아악

심사를 위해 임의의 개발자에게 코드 검토 요청을 보내고 검토 정보가 포함된 reviewer.json파일을 생성해야 합니다.

후속 요청 구현

먼저 followup_request 的后续请求方法。在 followup_request 方法内,读取 reviewer.json라는 후속 요청 메서드를 만드는 것부터 시작합니다.

메서드 내에서

파일을 읽고 내용을 목록에 저장합니다. 코드는 다음과 같습니다: read_email 으아악

다음으로 이전 튜토리얼에서 구현한

메서드를 사용하여 이메일 정보를 추출합니다. Re: 으아악

리뷰어가 리뷰 요청에 응답한 경우 동일한 제목의 이메일이 있어야 하며 앞에

표시가 있어야 합니다. 따라서 리뷰 메시지 목록을 반복하고 리뷰 제목을 이메일 제목과 비교하여 리뷰어가 요청에 응답했는지 확인하세요. review_info 으아악

위 코드에서 볼 수 있듯이

목록을 반복하고 이메일 제목과 댓글 메시지 주제를 비교하여 댓글 작성자가 응답했는지 확인합니다. reviewer.json 文件中保留特定的审阅信息。因此,创建一个名为 Delete_Info 的 Python 方法,以从 reviewer.json 文件中删除特定评论信息。以下是 Delete_Info

이제 검토자가 코드 검토 요청에 응답하면

파일에 특정 검토 정보를 보관할 필요가 없습니다. 따라서

파일에서 특정 주석 정보를 제거하려면

라는 Python 메서드를 만듭니다. Delete_Info 方法。调用 Delete_Info 方法时,需要传递 review_info 的副本,以免更改原始信息列表。您将需要原始评论信息列表以供稍后比较。因此导入 copy 모습은 다음과 같습니다.

으아악

위 코드에서 볼 수 있듯이 댓글 정보 목록을 반복하고 ID와 일치하는 항목을 제거했습니다. 파일에서 정보를 제거한 후 목록으로 돌아갑니다. review_info

댓글 메시지에 답글을 달 때

메소드를 호출해야 합니다. Delete_Info 메서드를 호출할 때 원래 메시지 목록이 변경되지 않도록

복사본을 전달해야 합니다. 나중에 비교하려면 원본 리뷰 정보 목록이 필요합니다. 따라서 copy Python 모듈을 가져와 원래 주석 메시지 목록의 복사본을 만듭니다.

으아악 followup_request목록의

사본을 만듭니다.

으아악 review_info 列表被迭代,您需要检查 reviewer.json 文件中是否有任何更改。如果任何现有评论信息已被删除,您需要相应更新 reviewer.json 文件。因此,检查 review_info_copyreview_info 是否相同,并更新 reviewer.json원본 목록에서 답변한 댓글 정보를 삭제할 때 복사한 목록을

메소드에 전달하세요.

으아악 followup_request다음은

방법입니다:

으아악 followup_request이제

목록이 반복되면

파일에 변경 사항이 있는지 확인해야 합니다. 기존 댓글 정보가 제거된 경우 그에 따라 reviewer.json 文件。现在运行调度程序,以便将代码审查请求发送给随机开发人员。检查该信息是否已保存在 reviewer.json 파일을 업데이트해야 합니다. 따라서 review_info_copy

가 동일한지 확인하고

파일을 업데이트하세요. reviewer.json 으아악

완전한 🎜 방법은 다음과 같습니다. 🎜 으아악 🎜보내진 검토 요청에 대한 후속 조치를 취하려면 🎜 메서드를 호출하세요. 🎜 으아악 🎜위 변경 사항을 저장합니다. 후속 기능을 테스트하려면 프로젝트 디렉터리에서 🎜 파일을 삭제하세요. 이제 스케줄러를 실행하여 임의의 개발자에게 코드 검토 요청을 보냅니다. 🎜 파일에 정보가 저장되었는지 확인하세요. 🎜 🎜특정 개발자가 이메일에 회신하여 코드 검토 요청에 응답하도록 요구합니다. 이제 스케줄러를 다시 실행하면 이번에는 스케줄러가 응답을 찾아 🎜 파일에서 제거할 수 있습니다. 🎜

发送提醒电子邮件

审核者回复代码审核请求电子邮件后,需要从 reviewer.json 文件中删除该信息,因为您不需要进一步跟踪它。如果审核者尚未回复代码审核请求,您需要发送后续邮件提醒他或她审核请求。

代码审查调度程序将每天运行。当它运行时,您首先需要检查开发人员响应审核请求是否已经过去了一定时间。在项目配置中,您可以设置一个审核周期,在此期间,如果审核者没有回复,调度程序将发送提醒电子邮件。

让我们首先在项目配置中添加配置。在配置文件中添加一个名为 followup_Frequency 的新配置。

{
    "name": "project_x",
    "git_url": "https://github.com/royagasthyan/project_x",
    "followup_frequency":2,
    "members": [
        "royagasthyan@gmail.com",
    	"samon@gmail.com",
    	"sualonni@gmail.com",
    	"restuni@gmail.com"
    ]
}
로그인 후 복사

因此,当审阅者在 followup_Frequency 天数内没有回复时,您将发送一封提醒电子邮件。读取配置的同时将配置读入全局变量:

for p in main_config:
    if p['name'] == project:
        project_url = p['git_url']
        project_members = p['members']
        followup_frequency = p['followup_frequency']
    break
로그인 후 복사

followup_request 方法内部,当审稿人在 followup_frequest 天数内没有回复后续请求时,发送提醒邮件。计算自评论发送以来的天数。

review_date = datetime.datetime.strptime(review['sendDate'],'%Y-%m-%d')
today = datetime.datetime.today()
days_since_review = (today - review_date).days
로그인 후 복사

如果天数大于配置中的后续频率日期,请发送提醒电子邮件。

if not review_replied:
    if days_since_review > followup_frequency:
        send_email(review['reviewer'],'Reminder: ' + review['subject'],'\nYou have not responded to the review request\n')
로그인 후 복사

这是完整的 followup_request 方法:

def followup_request():
    with open('reviewer.json','r') as jfile:
        review_info = json.load(jfile)
    review_info_copy = copy(review_info)

    email_info = read_email(no_days)

    for review in review_info:
        review_date = datetime.datetime.strptime(review['sendDate'],'%Y-%m-%d')
        today = datetime.datetime.today()
        days_since_review = (today - review_date).days
        review_replied = False
        expected_subject = 'Re: ' + review['subject']
        for email in email_info:
            if expected_subject == email['Subject']:
                review_replied = True
                review_info_copy = Delete_Info(review_info_copy,review['id'])
                break;

        if not review_replied:
            if days_since_review > followup_frequency:
                send_email(review['reviewer'],'Reminder: ' + review['subject'],'\nYou have not responded to the review request\n')

    if review_info_copy != review_info:
        with open('reviewer.json','w') as outfile:
            json.dump(review_info_copy,outfile)
로그인 후 복사

总结

在本教程中,您了解了如何实现跟进代码审核请求的逻辑。您还添加了如果审阅者在一定天数内没有回复电子邮件的情况下发送提醒电子邮件的功能。

这个 Python 代码审查器可以进一步增强以满足您的需求。请分叉存储库并添加新功能,并在下面的评论中告诉我们。

本教程的源代码可在 GitHub 上获取。

위 내용은 Python 코드 검토 스케줄러 구축: 후속 조치 검토의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

코드 리뷰 연습을 위해 Go 언어를 사용하는 방법 코드 리뷰 연습을 위해 Go 언어를 사용하는 방법 Aug 02, 2023 pm 11:10 PM

코드 리뷰 실습을 위해 Go 언어를 사용하는 방법 소개: 소프트웨어 개발 과정에서 코드 리뷰(CodeReview)는 중요한 실습입니다. 팀원들은 서로의 코드를 검토하고 분석함으로써 잠재적인 문제를 식별하고, 코드 품질을 개선하고, 팀워크를 강화하고, 지식을 공유할 수 있습니다. 이 기사에서는 코드 검토 실습에 Go 언어를 사용하는 방법을 소개하고 코드 예제를 첨부합니다. 1. 코드 리뷰의 중요성 코드 리뷰는 코드 품질을 높이는 모범 사례입니다. 코드에서 잠재적인 오류를 찾아 수정하고 코드를 개선할 수 있습니다.

Python 개발 경험 공유: 코드 검토 및 품질 보증 수행 방법 Python 개발 경험 공유: 코드 검토 및 품질 보증 수행 방법 Nov 22, 2023 am 08:18 AM

Python 개발 경험 공유: 코드 검토 및 품질 보증 수행 방법 소개: 소프트웨어 개발 프로세스에서 코드 검토와 품질 보증은 중요한 연결 고리입니다. 좋은 코드 검토는 코드 품질을 향상시키고 오류와 결함을 줄이며 프로그램 유지 관리성과 확장성을 향상시킬 수 있습니다. 이 기사에서는 다음과 같은 측면에서 Python 개발의 코드 검토 및 품질 보증 경험을 공유합니다. 1. 코드 검토 사양 개발 코드 검토는 코드에 대한 포괄적인 검사와 평가가 필요한 체계적인 활동입니다. 코드 리뷰를 표준화하기 위해

Java 개발에서 코드 검토 및 성능 최적화를 수행하는 방법 Java 개발에서 코드 검토 및 성능 최적화를 수행하는 방법 Oct 10, 2023 pm 03:05 PM

Java 개발에서 코드 검토 및 성능 최적화를 수행하려면 일상적인 Java 개발 프로세스에서 특정 코드 예제가 필요합니다. 코드 검토 및 성능 최적화는 매우 중요한 연결 고리입니다. 코드 검토를 통해 코드의 품질과 유지 관리성을 보장할 수 있으며, 성능 최적화를 통해 시스템의 운영 효율성과 응답 속도를 향상할 수 있습니다. 이 기사에서는 Java 코드 검토 및 성능 최적화를 수행하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 코드 검토 코드 검토는 코드가 작성될 때마다 코드를 한 줄씩 확인하고 잠재적인 문제와 오류를 수정하는 프로세스입니다. 다음과 같은

PHP 코드 검토 및 지속적인 통합 PHP 코드 검토 및 지속적인 통합 May 06, 2024 pm 03:00 PM

예, 코드 검토와 지속적인 통합을 결합하면 코드 품질과 전달 효율성을 향상시킬 수 있습니다. 특정 도구는 다음과 같습니다: PHP_CodeSniffer: 코딩 스타일과 모범 사례를 확인합니다. PHPStan: 오류 및 사용되지 않는 변수를 감지합니다. 시편: 유형 검사 및 고급 코드 분석을 제공합니다.

C# 개발 노트: 코드 검토 및 품질 보증 C# 개발 노트: 코드 검토 및 품질 보증 Nov 22, 2023 pm 05:00 PM

C# 개발 프로세스에서는 코드 품질 보증이 중요합니다. 코드 품질은 소프트웨어의 안정성, 유지 관리성 및 확장성에 직접적인 영향을 미칩니다. 중요한 품질 보증 방법으로서 코드 리뷰는 소프트웨어 개발에 있어서 무시할 수 없는 역할을 합니다. 이 문서에서는 개발자가 코드 품질을 향상시키는 데 도움이 되는 C# 개발 시 코드 검토 고려 사항에 중점을 둡니다. 1. 리뷰의 목적과 의의 코드 리뷰란 코드를 주의 깊게 읽고 점검하여 기존의 문제점과 오류를 발견하고 수정하는 과정을 말합니다. 주요 목적은 개선하는 것입니다.

React 코드 검토 가이드: 프런트 엔드 코드의 품질과 유지 관리 가능성을 보장하는 방법 React 코드 검토 가이드: 프런트 엔드 코드의 품질과 유지 관리 가능성을 보장하는 방법 Sep 27, 2023 pm 02:45 PM

React 코드 검토 가이드: 프런트 엔드 코드의 품질과 유지 관리 가능성을 보장하는 방법 소개: 오늘날의 소프트웨어 개발에서 프런트 엔드 코드는 점점 더 중요해지고 있습니다. 널리 사용되는 프런트엔드 개발 프레임워크인 React는 다양한 유형의 애플리케이션에서 널리 사용됩니다. 그러나 React의 유연성과 강력함으로 인해 고품질의 유지 관리 가능한 코드를 작성하는 것이 어려울 수 있습니다. 이 문제를 해결하기 위해 이 기사에서는 React 코드 검토에 대한 몇 가지 모범 사례를 소개하고 구체적인 코드 예제를 제공합니다. 1. 코드 스타일

GitLab에서 코드 검토 및 병합 요청을 수행하는 방법 GitLab에서 코드 검토 및 병합 요청을 수행하는 방법 Oct 20, 2023 pm 04:03 PM

GitLab에서 코드 검토 및 병합 요청을 수행하는 방법 코드 검토는 팀이 잠재적인 문제를 식별하고 코드 품질을 향상시키는 데 도움이 될 수 있는 중요한 개발 방식입니다. GitLab에서는 병합 요청(MergeRequest) 기능을 통해 코드 리뷰 및 병합 작업을 쉽게 진행할 수 있습니다. 이 문서에서는 구체적인 코드 예제를 제공하면서 GitLab에서 코드 검토 및 병합 요청을 수행하는 방법을 설명합니다. 준비: GitLab 프로젝트를 생성했고 관련 파일이 있는지 확인하세요.

C++ 코드의 코드 검토를 수행하는 방법은 무엇입니까? C++ 코드의 코드 검토를 수행하는 방법은 무엇입니까? Nov 02, 2023 am 09:12 AM

C++ 코드의 코드 검토를 수행하는 방법은 무엇입니까? 코드 검토는 소프트웨어 개발 프로세스에서 매우 중요한 부분으로, 개발 팀이 잠재적인 오류를 식별 및 수정하고, 코드 품질을 개선하고, 후속 유지 관리 및 디버깅 작업량을 줄이는 데 도움이 될 수 있습니다. C++와 같은 강력한 형식의 정적 언어의 경우 코드 검토가 특히 중요합니다. 효과적인 C++ 코드 검토를 수행하는 데 도움이 되는 몇 가지 주요 단계와 고려 사항은 다음과 같습니다. 코드 검토 표준 설정: 코드 검토를 수행하기 전에 팀은 다양한 오류 및 위반에 동의하기 위한 코드 검토 표준을 공동으로 개발해야 합니다.

See all articles