edgecase / dieter

Asset pipeline ring middleware
134 stars 22 forks source link

Support execution on Windows, or when v8 libraries can not be loaded #48

Closed hlship closed 10 years ago

hlship commented 11 years ago

Previously, dieter could not run on Windows even when the :rhino engine was selected, because the v8.core namespace failed to load. This change to dieter.v8 makes it capable of handling that situation, which allows dieter to run on Windows as well as Mac OS X and Linux. It also allows execution, using :rhino, when the v8wrapper library is not available.

The code reflects a significant amount of experimentation to make it stable, since ultimately, the Clojure compiler is being second-guessed and circumvented.

pbiggar commented 11 years ago

I think there's a much easier way to do this. In each functions which requires v8, try

(require 'v8.core)
((ns-resolve 'v8.core :run-script-in-context cx etc)

Would this work instead?

hlship commented 11 years ago

It is possible that the ns-resolve you have there might work, I'd have to test it.

rasmuskl commented 11 years ago

Any news on this issue? It still fails on Windows at 0.4.0 with the v8wrapper error.

pbiggar commented 11 years ago

AFAIK, nobody is working on this issue.