Release notes v3.0.4
Published on April 18, 2026 by Kirill Vasin

Sorting feature for Dataset and Tabular

We added both Kernel- and frontend-side sorting for Dataset and Tabular. Just click on one of the headers.

Or course, if you export a notebook to an HTML file sorting may not work for large datasets, which are partially stored on the kernel.


Improved input elements

We fixed InputTerminal, now it is selectable and can hold up to 1000 entries

More styling options

We provide many styling options for InputButton, InputRange and others. Now you can directly assign classes or styles for labels or controls.

InputButton["Click me", "Style"->"text-transform: uppercase; letter-spacing: 0.04em; color: #6b7280;"]
For sliders you have many options

InputRange[0,1,0.1, "SliderStyle"->"width:50vw; accent-color: red ", "CounterStyle"->"font-size:larger; padding:1rem"]


Better texture support

We improved Texture support in 2D graphics. Now it no longer requires TextureVertexCoordinates (only optional)

Graphics[{
  Texture[Array[BitXor, {128,128}]//Rescale//Image],
  GraphicsComplex[RandomReal[{-1,1}, {3,2}], Polygon[{1,2,3}]]
}, Axes->True]


Added update support for GraphicsComplex (2D)

GraphicsComplex was already supported, but it did not automatically react to data changes. With this update, lines and points now update automatically when the underlying data changes.

vert2 = CirclePoints[0.7, 50]//N;
f = (Uncompress["1:eJxTTMoPSmNkYGAo5gASbqV5ySWZ+XlpTCARFiARnlmSgeD5ZBaXQHjMQCI4taQYpLUAYgBIQXBOfkkmiIepqiSNASTEAyQck4rzc0pLUkMyc1MRhgfklBZDzUOxMJMBbh4rkABpKi76s/LjJd+kAntU7RCHgG3NzEOTQjUgkwvFkS75JVitBolB7GdG1f4fCDJByqB+Q3OeMRg8tifBQXxEOQjkFkgAY3MQG9xBAJbbXNw="]);
  
Graphics[{
  GraphicsComplex[vert2//Offload, {
    LightBlue, Polygon[Range[1,50]], Red, Point[Range[1,50]]
  }],
  EventHandler[AnimationFrameListener[vert2//Offload], 
    Function[Null, vert2 = f /@ vert2]
  ]
}, PlotRange->{{-1,1}, {-1,1}}]


Drop files to a sidebar

We added support on both: desktop and server variants of WLJS Notebook for files uploading to a working directory by dropping them on a sidebar.

Shortcuts

  • Added a shortcut for evaluating the whole notebook Alt-j or Cmd-j
  • New command palette item: Optimize memory, which effectively runs a major garbage collector on the kernel and server using Share method.

Misc

  • Fixed major issues with license activation on docker image
  • Ready event for CreateWindow now returns a WindowObj
  • Offscreen rasterization support if window is not provided
  • Minor issues with Manipulate
  • Fixed pale 2D plots (ParametricPlot and others)