Always supervise reloaders

This commit is contained in:
Tony Garnock-Jones 2016-11-29 15:04:13 +13:00
parent d0d7e677fe
commit 97bb848611
1 changed files with 31 additions and 29 deletions

View File

@ -14,6 +14,7 @@
(require (for-syntax racket/base))
(require racket/rerequire)
(require/activate syndicate/supervise)
(require/activate syndicate/drivers/filesystem)
(struct reload-pending (filename) #:prefab) ;; ASSERTION
@ -50,7 +51,8 @@
(set! count (+ count 1))))))
(define (spawn-reloader** module-path pathstr)
(actor #:name (list 'reloader pathstr)
(supervise #:name (list 'reloader-supervisor pathstr)
(actor #:name 'reloader
(field [reloading? #f])
(define (reload!)
(when (not (reloading?))
@ -79,4 +81,4 @@
(if (latest-version)
(reload!)
(log-syndicate/reload-warning "Module ~v does not exist" pathstr))
(previous-version (latest-version))))))
(previous-version (latest-version)))))))