.. index:: Release notes ============================== Release Notes of SlimerJS 0.10 ============================== version 0.10.3 ============== SlimerJS 0.10.3 has been released on March 9, 2017. - Fix support of IPV6 notation in the ``--proxy`` and ``--webdriver`` command line parameters. - Compatibility with Firefox 51 and 52 - Fix fs.copyTree() (Wojciech Skorodecki) - Fix slimerjs-node under Windows (Charlie Hulcher) - tar.bz2 packages are available version 0.10.2 ============== SlimerJS 0.10.2 has been released on November 27, 2016. - Compatibility with Firefox 50 (fix support of HTTP auth) - Fix slimerjs.bat: it should not close cmd.exe when exiting - Official npm package version 0.10.1 ============== SlimerJS 0.10.1 has been released on September 21, 2016. Improvements ------------ - Improve message about version incompatibility - Mozilla telemetry disabled (by Wojciech Skorodecki) - Compatibility with Firefox 47, 48, 49 - Bash scripts: Use portable bash paths (by James Alastair McLaughlin) Fixed bugs ---------- - Fixed "TypeError: browser.webpage is null" when closing a page while capturing a request (by Wojciech Skorodecki). - Source code: replaced found Expression closures to Arrow functions (by Wojciech Skorodecki) - Fixed wrong encoding of request.body in onResourceReceived() callback. (by Wojciech Skorodecki) - Fixed various typo in the documentation and web site (by Brian Donovan, Thomas Grainger, Avindra Goolcharan, Alexander Tsirel, Eric White) - Documentation: remove claim about xvfb support on Mac (by Matt McClure & Laurent) version 0.10.0 ============== SlimerJS 0.10.0 has been released on May 2 2016. New features and API --------------------- - Experimental support of Webdriver, by using GhostDriver like phantomjs, to control SlimerJS from Selenium. - ``webpage.render()`` can now generates PDF, BMP and ICO. - ``webpage.paperSize`` is supported (except its header and footer properties). - ``webpage.onLongRunningScript`` and ``webpage.stopJavascript()`` to allow to be informed of webpage having long running scripts (compatible with Phantomjs 2) - Support of ``webpage.onResourceTimeout`` and ``webpage.settings.resourceTimeout`` - ``phantom.webdriverMode`` - Implementation of ``system.stdin``, ``system.stderr``, and ``system.stdout`` is now a true output stream. It takes care about output encoding setting. - Implementation of ``system.standardin``, ``system.standarderr``, and ``system.standardout`` (Aliases of stdin, stdout, stderr properties...) (compatible with Phantomjs 2) - Support of command line option ``--output-encoding`` and ``phantom.outputEncoding``. It supports the value 'binary' to output binary content with system.stdout. - Implementation of ``stream.atEnd`` and ``stream.readLine()`` - Implementation of ``phantom.aboutToExit`` - Implementation of ``phantom.resolveRelativeUrl(url, base)`` (compatible with Phantomjs 2.1) - Implementation of ``phantom.fullyDecodeUrl(url)`` (compatible with Phantomjs 2.1) Improvements ------------ - Exit code is now supported with ``slimer.exit()`` and ``phantom.exit()`` (except with slimerjs.bat) - ``require`` supports node modules (it searches into node_modules directories) - ``webpage.onConsoleMessage`` can receive additional parameters : level, function name and timestamp - Improved error handling that may appear in webpage listeners - ``fs.open()`` now supports special files (/dev/std*, fifo files...) - Support of ``--debug=net`` and ``--debug=network`` which are aliases for ``--debug=netprogress`` Fixed bugs ---------- - Fixed configuration reading for script handlers (internal stuff) - Callback given to ``webpage.open()`` is now really called after the page loading: it allows to call ``render()`` without a delay (``setTimeout``...) - Fix error NS_ERROR_FACTORY_NOT_REGISTERED on navigator object (issue #373) - Fix ``webpage.render()`` on SVG document (issue #283) - Fix support of ``webpage.captureContent`` (issue #397) - ``fs.extension()`` did not return the extension for simple filename (#447) - ``fs.extension()`` did return the extension without a dot: that didn't respect the CommonJS Filesystem specification. An optional second parameter is supported: set it to true to returns the extension without a dot, like in previous SlimerJS version. - Fix ``fs.absolute()`` with relative path containing ".." on Windows (#347) - Fix support of multiple file for ```` with ``webpage.uploadFile`` and ``webpage.onFilePicker`` - ``webpage.onError`` did not receive a full stack in some case. This is not the case anymore since some improvements have been made into Gecko. Fixed PhantomJS conformance issues ---------------------------------- - a module should be able to call the ``return`` keyword - support additionals arguments on ``webpage.evaluateAsync()`` - Callback given to ``webpage.open()`` is now called when the url is invalid - Like in PhantomJS 1.9 (and removed in PhantomJS 2.0), ``phantom.args`` and ``phantom.scriptName`` are deprecated - webpage.viewportSize should accept strings as values (#313) - webpage.clipRect should accept object with missing properties (#314) - On windows, system.os.version matches now public version number, not internal version number (#344) - ``cookie.expires`` is not anymore an integer, but a date formated as string - ``fs.read()``, ``fs.write()`` and ``fs.open()`` can now accept an object as mode, to indicate both the mode and the charset. - added ``setEncoding(encoding)`` and ``getEncoding()`` on file stream (Compatibility with PhantomJS 2.0) - Compatible version of Phantomjs is now 1.9.8 (not 2.1, too many features are still missing, even if some 2.1 features are implemented) Other informations about this release ------------------------------------- - Compatibility with Firefox 40 to Firefox 46. - Compatibility is no more guaranteed on Firefox having version lower than 38. - There are no anymore packages including XulRunner, the Firefox runtime, since Mozilla has killed the XulRunner project. So you need to install Firefox in order to run SlimerJS. - Compatibility with CasperJS 1.1 has been fixed Missing features in SlimerJS 0.10 --------------------------------- Comparing to PhantomJS 2.1, some few options for the command line and features on some object are missing. Among of them: - the possibility to deactivate SSL verification and Web security (CORS etc) - the possibility to set ssl client certificate - offline storage settings - some proxy methods - the possibility to set a specific cookieJar to each web page object - loading and loadingProgress booleans on webpage - listener of repaint events on webpage - the child_process module You can read the `compatibility table `_ to know details. See also :doc:`the differences in APIs and behaviors ` between SlimerJS and PhantomJS. Known issues ------------ - See `the github page `_ ... Contributors for this release ----------------------------- - Dimitar Angelov (webpage.paperSize and other pdf options for webpage.render()) - Rémi Emonet (webpage.paperSize) - Will Hilton (``--user-agent=string``, ``--viewport-width`` and ``--viewport-height`` options) - Sergey Kogan (fix issues about exit code) - Quentin Le Calvez (Fix console.log so it can take multiple arguments) - Jerry Lundström (Fix support with Gecko 40.*) - Kevin Petit (fix slimerjs.bat about spaces in folders) - Delta React User (Remove call to legacy API setCSSViewport) - Mark Robson (Api doc, test on webpage.renderBytes, Tests generate perl-style TAP output) - Wojciech Skorodecki (Hiding one debug message when debug mode is turned off) - René Wagner (doc about addons) Previous release notes ====================== .. toctree:: :maxdepth: 1 release-notes-0.9 release-notes-0.8 release-notes-0.7 release-notes-0.6