위키득계정 ↗
기술

Watchfiles

Watchfiles기술
사용 인터페이스
Python
기반 감시 라이브러리
Rust Notify
이전 이름
Watchgod
주요 기능
변경 감지와 코드 재실행
Watchfiles는 Python에서 파일 변경을 감지하고 코드를 다시 실행하는 패키지다. Rust의 Notify 라이브러리로 기반 알림을 처리하며 동기 반복과 비동기 반복, 프로세스 재실행 및 명령행 기능을 제공한다.

변경 집합을 읽는 인터페이스

감시 경로를 지정하고 watch로 변경 집합을 차례로 받을 수 있다. 비동기 프로그램에서는 awatch를 비동기 반복문으로 사용한다. 응용은 변경이 발생했다는 사실을 받은 뒤 어떤 파일이나 작업에 반응할지 자체 로직을 연결할 수 있다.

프로세스를 다시 실행하기

run_process와 비동기 대응 기능으로 파일 변경에 따라 지정한 작업을 실행하거나 다시 불러오는 흐름을 만든다. 명령행 인터페이스에서도 실행할 명령과 감시 경로를 지정할 수 있다. 감시 결과를 직접 처리하는 것과 프로세스 생명주기를 도구에 맡기는 것은 다른 사용 방식이다.

Python과 Rust의 역할

호출하는 API는 Python에 제공하고 파일 시스템의 기반 알림 처리는 Rust Notify에 연결한다. Linux와 macOS, Windows용으로 여러 아키텍처의 바이너리를 제공한다. 같은 패키지를 사용하더라도 실제 알림은 기반 운영체제와 파일 시스템의 감시 조건에 영향을 받는다.

관련 문서

Watchdog / Notify Rust / Watchexec / Python / Rust / 파일 시스템