Revert "workaround"

This reverts commit 894ace3dba.
dev-stylish
Matthew Butterick 6 years ago
parent 894ace3dba
commit 6571959b6e

@ -47,11 +47,10 @@
(define ram-cache-record (hash-ref! ram-cache key get-cache-record)) (define ram-cache-record (hash-ref! ram-cache key get-cache-record))
(hash-ref ram-cache-record subkey)] (hash-ref ram-cache-record subkey)]
[else [else
(define outer-ns (namespace-anchor->namespace cache-module-ns)) (parameterize ([current-namespace (make-base-namespace)])
(define new-ns (make-base-namespace))
(namespace-attach-module outer-ns 'pollen/setup new-ns)
(parameterize ([current-namespace new-ns])
;; brings in currently instantiated params (unlike namespace-require) ;; brings in currently instantiated params (unlike namespace-require)
(define outer-ns (namespace-anchor->namespace cache-module-ns))
(namespace-attach-module outer-ns 'pollen/setup)
(dynamic-require path subkey))])))) (dynamic-require path subkey))]))))
(define+provide (cached-require path-string subkey) (define+provide (cached-require path-string subkey)

@ -59,12 +59,11 @@
;; the benefit of not reloading doc when you just need metas. ;; the benefit of not reloading doc when you just need metas.
;; new namespace forces `dynamic-require` to re-instantiate `path` ;; new namespace forces `dynamic-require` to re-instantiate `path`
;; otherwise it gets cached in current namespace. ;; otherwise it gets cached in current namespace.
;; brings in currently instantiated params (unlike namespace-require) (parameterize ([current-namespace (make-base-namespace)]
(define outer-ns (namespace-anchor->namespace cache-utils-module-ns))
(define new-ns (make-base-namespace))
(namespace-attach-module outer-ns 'pollen/setup new-ns)
(parameterize ([current-namespace new-ns]
[current-directory (dirname path)]) [current-directory (dirname path)])
;; brings in currently instantiated params (unlike namespace-require)
(define outer-ns (namespace-anchor->namespace cache-utils-module-ns))
(namespace-attach-module outer-ns 'pollen/setup)
(define doc-missing-thunk (λ () "")) (define doc-missing-thunk (λ () ""))
(define metas-missing-thunk (λ () (hasheq))) (define metas-missing-thunk (λ () (hasheq)))
(list doc-key (dynamic-require path doc-key doc-missing-thunk) (list doc-key (dynamic-require path doc-key doc-missing-thunk)

@ -147,7 +147,7 @@
(define template-path (or maybe-template-path (get-template-for source-path output-path))) (define template-path (or maybe-template-path (get-template-for source-path output-path)))
;; output-path and template-path may not have an extension, so check them in order with fallback ;; output-path and template-path may not have an extension, so check them in order with fallback
(message (format "rendering /~a" (message (format "rendering /~a"
(find-relative-path (current-project-root) source-path))) (find-relative-path (current-project-root) source-path)))
(match-define-values ((cons render-result _) _ real _) (match-define-values ((cons render-result _) _ real _)
(parameterize ([current-poly-target (->symbol (or (get-ext output-path) (parameterize ([current-poly-target (->symbol (or (get-ext output-path)
@ -175,12 +175,11 @@
(local-require scribble/core scribble/manual (prefix-in scribble- scribble/render)) (local-require scribble/core scribble/manual (prefix-in scribble- scribble/render))
(define source-dir (dirname source-path)) (define source-dir (dirname source-path))
;; make fresh namespace for scribble rendering (avoids dep/zo caching) ;; make fresh namespace for scribble rendering (avoids dep/zo caching)
(define outer-ns (namespace-anchor->namespace render-module-ns)) (parameterize ([current-namespace (make-base-namespace)]
(define new-ns (make-base-namespace))
(namespace-attach-module outer-ns 'scribble/core new-ns)
(namespace-attach-module outer-ns 'scribble/manual new-ns)
(parameterize ([current-namespace new-ns]
[current-directory (->complete-path source-dir)]) [current-directory (->complete-path source-dir)])
(define outer-ns (namespace-anchor->namespace render-module-ns))
(namespace-attach-module outer-ns 'scribble/core)
(namespace-attach-module outer-ns 'scribble/manual)
;; scribble/lp files have their doc export in a 'doc submodule, so check both locations ;; scribble/lp files have their doc export in a 'doc submodule, so check both locations
(match (cond (match (cond
[(dynamic-require source-path 'doc (λ () #false))] [(dynamic-require source-path 'doc (λ () #false))]

Loading…
Cancel
Save