From a3eaf95da32264eed13b89b971d562271d9a290c Mon Sep 17 00:00:00 2001 From: Matthew Butterick Date: Thu, 1 Nov 2018 23:48:57 -0700 Subject: [PATCH] simplify --- pollen/cache.rkt | 3 ++- pollen/private/render-helper.rkt | 7 ------- pollen/render.rkt | 14 ++++---------- pollen/setup.rkt | 2 +- 4 files changed, 7 insertions(+), 19 deletions(-) diff --git a/pollen/cache.rkt b/pollen/cache.rkt index a616c71..3e741fe 100644 --- a/pollen/cache.rkt +++ b/pollen/cache.rkt @@ -48,7 +48,8 @@ [(setup:compile-cache-active path) (define key (paths->key path)) (define (convert-path-to-cache-record) - (when (current-render-status) + (when (let ([crs (current-render-source)]) + (and crs (not (equal? crs path)))) (message (format "transitively loading /~a" (find-relative-path (current-project-root) path)))) (path->hash path)) (define (get-cache-record) (cache-ref! key convert-path-to-cache-record)) diff --git a/pollen/private/render-helper.rkt b/pollen/private/render-helper.rkt index 6d547af..af94d25 100644 --- a/pollen/private/render-helper.rkt +++ b/pollen/private/render-helper.rkt @@ -22,13 +22,6 @@ (define-syntax (mb stx) (syntax-case stx () - ;; preproc branch - [(_ #:source SOURCE-PATH-STRING - #:result-id RESULT-ID) - #'(#%module-begin - (splicing-syntax-parameterize ([result (make-rename-transformer #'RESULT-ID)]) - (define result (cached-doc SOURCE-PATH-STRING)) - (provide result)))] ;; markup / markdown branch [(_ #:source SOURCE-PATH-STRING #:template TEMPLATE-PATH-STRING diff --git a/pollen/render.rkt b/pollen/render.rkt index 255cf82..f80cdf7 100644 --- a/pollen/render.rkt +++ b/pollen/render.rkt @@ -150,7 +150,7 @@ (message (format "rendering /~a" (find-relative-path (current-project-root) source-path))) (match-define-values ((cons render-result _) _ real _) - (parameterize ([current-render-status source-path] + (parameterize ([current-render-source source-path] [current-poly-target (->symbol (or (get-ext output-path) (and template-path (get-ext template-path)) (current-poly-target)))]) @@ -194,15 +194,9 @@ (delete-file (->output-path source-path)))) (define (render-preproc-source source-path . _) - (parameterize ([current-directory (->complete-path (dirname source-path))]) - (render-through-eval (with-syntax ([MODNAME (gensym)] - [SOURCE-PATH-STRING (->string source-path)]) - #'(begin - (module MODNAME pollen/private/render-helper - #:source SOURCE-PATH-STRING - #:result-id result) - (require 'MODNAME) - result))))) + (parameterize ([current-directory (->complete-path (dirname source-path))] + [current-render-source source-path]) + (cached-doc (->string source-path)))) (define (render-markup-or-markdown-source source-path [maybe-template-path #f] [maybe-output-path #f]) (define output-path (or maybe-output-path (->output-path source-path))) diff --git a/pollen/setup.rkt b/pollen/setup.rkt index 811deaf..48b023c 100644 --- a/pollen/setup.rkt +++ b/pollen/setup.rkt @@ -101,7 +101,7 @@ (define+provide current-server-port (make-parameter (project-server-port))) (define+provide current-server-listen-ip (make-parameter #f)) -(define+provide current-render-status (make-parameter #f)) +(define+provide current-render-source (make-parameter #f)) (define-settable dashboard-css "poldash.css")