Giter Site home page Giter Site logo

Comments (11)

kensoh avatar kensoh commented on June 8, 2024 1

Hi @MarkR42 PhantomJS creator recently got back into action and it looks like his initial focus is Linux, with macOS and Windows as second priorities - https://github.com/ariya/phantomjs/issues

from slimerjs.

kaosko avatar kaosko commented on June 8, 2024

I don't see how you could monkeypatch ActorManagerChild (see the second issue) because the error happens as soon as you try to import it Cu.import("resource://gre/modules/ActorManagerChild.jsm");

from slimerjs.

MarkR42 avatar MarkR42 commented on June 8, 2024

I created a new branch, https://github.com/MarkR42/slimerjs/tree/firefox63

I think the
viewportSize works on this build; many unit tests still fail but at least basic functionality is working (load pages, screenshot etc). Most of the event-based tests are failing though

from slimerjs.

MarkR42 avatar MarkR42 commented on June 8, 2024

As of Firefox 66.0, some more functionality has been removed from Firefox which makes the JS xpcom module work. This means that essentially, all of SlimerJS functionality is incompatible with 66.0 and will probably be forever, unless we can work out some way of making it all work without the deprecated / removed interfaces.

from slimerjs.

mikeperalta1 avatar mikeperalta1 commented on June 8, 2024

Any update on this issue, or suggestions for drop-in replacements for SlimerJs?

from slimerjs.

MarkR42 avatar MarkR42 commented on June 8, 2024

No.

Firefox has done a fundamental redesign which makes SlimerJS impossible / difficult to continue. SlimerJS would need to hook into Firefox at a much lower level than it currently does, which would probably need a special build of Firefox. Although that is theoretically feasible, it would make it much more sensitive to future architectural changes.

PhantomJS also failed due to the difficulty of keeping up with Webkit changes (and the maintainer quit), PhantomJS is in C++ and those interfaces were changed often.

I think your best bet is to use Webdriver from Selenium, that's also cross-browser. If you can do what you want with Webdriver, great.

Otherwise, write a Firefox extension and load that, the API is totally different and intended for different purposes. Some things, such as getting data from the DOM or injecting scripts, are really different. Firefox web-extensions have many limitations e.g. they can't access native files or other low-level APIs, that's by design too.

from slimerjs.

mikeperalta1 avatar mikeperalta1 commented on June 8, 2024

Hrm okay thanks. I think maybe I'll start learning to adapt some of my code over to webdriver or headless chrome or something, eventually.

from slimerjs.

kaosko avatar kaosko commented on June 8, 2024

Slimer.js still works great for what it does, it's just that you can't use FF newer than 62 with it. If you are using Debian/Ubuntu, you can easily get Firefox 60 ESR from the PPA repos.

from slimerjs.

mikeperalta1 avatar mikeperalta1 commented on June 8, 2024

Thank you, yes. I currently have a fully functional SlimerJs project but I'm just bummed I may eventually have to migrate away from it. It was my first choice after PhantomJs died.

from slimerjs.

kensoh avatar kensoh commented on June 8, 2024

Also copying @laurentj for info -

from slimerjs.

mwbelt avatar mwbelt commented on June 8, 2024

@kensoh , did you see any remarks from the PhantomJS creator that said he was back in action? I didn't find any comments from him in a cursory review of the issues, but I may have missed something.

from slimerjs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.