Major Update
-
Support for Marlin 3D printer firmware
Bug Fixes
-
Fixed a bug that may cause blank screen due to incorrect widget settings (0a8a924)
Note: For CNCjs 1.9.11 and earlier versions, if it always shows a blank screen, try clearing the Local Storage using browser's Developer Tools to fix the problem.localStorage.clear()
-
Fixed a compatibility issue that the
includes()
method is not available in Node.js v4 and v5 (88d4dec, #232) -
[Grbl][Marlin][Smoothie][TinyG] Fixed a bug that will not continue program execution after the %wait command (a5f86d9)
-
Fixed a bug introduced in CNCjs 1.9.11 that will accidentally trigger
feeder.hold({ data: "M0" })
orsender.hold({ data: "M0" })
when parsing lines containing variables (af60e47)The following line
G0 X[xmin] Y[ymin]
will become
G0, X0, X0, M0, I0, N0, Y0, Y0, M0, I0, N0
-
[Security] Fixed a security issue that one can use an unauthorized token to access the server (1f7bae4, #234)
-
Fixed a bug that sender may emit the 'end' event multiple times (1aa9625, PR #235)
-
Fixed a bug that caused browser crash if filename contains double-byte characters (232307a)
Enhancements
-
Adds support to listen on specific address and port by passing command line options to Electron application (56ad797)
Note: For Electron macOS app, use the open command to pass arguments to the application:open -a /Applications/CNCjs.app --args -p 8000
-
Adds an "ignoreErrors" option that allows continuing program execution on errors (485bc7c, #233)
-
Support for proxying requests starting with a mount path to an external url (a1cbada)
cnc -vv -p 8000 \ --mount /tinyweb:/path/to/tinyweb/src/ \ --mount /widget:https://cncjs.github.io/cncjs-widget-boilerplate/v1/
Improvements
-
Uses ResizeObserver to detect DOM changes (2bf0e2c)
-
Redirects URL path without a trailing slash to URL with a trailing slash (dff47b0)
-
Implements serial connection library for serial port communication (74700aa)
-
Removes comments that start with a semicolon
;
(a108668) -
Uses babel-polyfill for Node.js app (ed5667d)
-
Allows pasting commands into the terminal (b038cbc)
-
Passes context as second parameter
connection.write(data, context)
(cdc6d87) -
Runs CI with Node.js v8 (f4a2c7c)
-
Improves usability when signing in from a pendant UI (25c8dd8, 1b06d45)
-
Replaces "clusterize.js" with "react-tiny-virtual-list" (6927d0b)