-
Notifications
You must be signed in to change notification settings - Fork 415
Absolute paths can no longer be used to find the phantomjs binary #389
Comments
@yaauie could you take a look? |
@ollyw hm. Cliver is supposed to work nicely with absolute paths. Can you give me the exact string (path) you're passing in so I can verify? This may be a bug in how Cliver works on Windows. Also, the raised exception's message would be very helpful here. Feel free to scrub whatever parts you need to, but leave as much in-tact as you can. If needed, it can be sent securely to me via PGP (ryan@yaauie.com my pubkey). |
Poltergeist used to work with relative paths, and the path was '.\lib\phantom\phantomjs.exe'. That now fails. If subsequently used with an absolute path that fails too (just a path on the C drive). The problem can easily be illustrated with notepad on windows. In the following IRB session, it detects notepad on the path, but when I feed the absolute path back into cliver it doesn't seem to work. irb(main):002:0> require 'cliver' I am fairly new to windows path handling in Ruby, so if I am missing anything obvious, let me know. BTW, I am using ruby 1.9.3p374 (2013-01-15) [i386-mingw32] on Windows 7. It is also interesting that none of the cliver examples in http://rubydoc.info/gems/cliver/0.2.1/frames use absolute paths as input to detect. |
We have to take about windows platform, sounds legit. |
I'll find and fix this bug upstream in Cliver tonight. |
@ollyw can you upgrade your |
Since poltergeist has been changed to use Cliver (1df2d5d), absolute paths do not work with the :phantomjs option. Cliver appears to only accept the name of a binary, and fails when a full path is passed in.
This causes problems because in our dev environment, both locally and on CI servers, phantomjs is a custom version that is not on the path. Currently I am using windows, but I don't think it will work on unix either.
If this behaviour is by design (i.e. the behaviour has changed intentionally), then the documentation needs updating, as the documentation states ":phantomjs (String) - A custom path to the phantomjs executable", which is no longer correct. However, the option to pass a full path in was very useful!
The text was updated successfully, but these errors were encountered: