Skip to content

Releases: ewoks-kit/ewoksweb

v5.0.0

25 Mar 15:56
e29189d

Choose a tag to compare

5.0: Python 3.8 and 3.9 dropped, migration to GitHub, doc organization

New major version since ewoksweb dropped support for Python 3.8 and Python 3.9. The new minimal Python version is therefore 3.10.

The project also moved to a new home on GitHub: https://github.com/ewoks-kit/ewoksweb. All issues and release notes were migrated so the migration should be smooth.

Finally, the documentation (still at https://ewoksweb.readthedocs.io/ !) was reorganized to follow diataxis structure. All previous pages are still there but are now organized in specific sections: Tutorials, How-to guides and Explanations.

Full Changelog: v4.0.1...v5.0.0

v4.0.1

02 Mar 11:03

Choose a tag to compare

Full changelog: v3.1.0...v4.0.1

There was a problem with 4.0.0 so 4.0.1 is the next new version

4.0: Python 3.7 dropped, automatic discovery at launch and ewoksserver 2.0

New major version since ewoksweb dropped support for Python 3.7 and is now only compatible with ewoksserver 2.0. When updating an existing installation of ewoksweb, do not forget to update ewoksserver as well:

pip install --upgrade ewoksweb
pip install --upgrade ewoksserver

In addition, task discovery now happens automatically when starting ewoksweb. This means that if new tasks are added to the Python environment where ewoksweb is running, it is sufficient to restart ewoksweb to have them available in the task drawer.

Manual discovery can of course still be used to discover tasks without restarting. As a reminder, manual discovery can be done by clicking the Discover tasks button in ewoksweb:

image

Previously, the automatic discovery was done only done if --rediscover-tasks was specified when launching ewoksweb. This argument was removed and there is now a --no-discovery-at-launch CLI argument to disable to automatic discovery at launch.

Breaking changes

  • Python 3.7 is no longer supported. Python 3.8 is the minimum supported version.
  • Task discovery now happens automatically at launch. Use the new CLI arg --no-discovery-at-launch to disable this.
  • Removed --rediscover-tasks CLI arguments
  • Ewoksweb is now only compatible with ewoksserver 2.0 and more (using Ewoks REST API 2.0).
    • worker_options graph field was replaced by submit_arguments. As for previous releases, a conversion script is available to convert automatically your workflows: convert_to_ewoksweb4.py
python convert_to_ewoksweb4.py <path_to_ewoksweb_resources>/workflows/*.json

v3.1.0

02 Mar 11:02

Choose a tag to compare

Full changelog: v3.0.0...v3.1.0

Improvements ✨

  • Show outline when focusing nodes or links with the keyboard !534
  • Do not save map_all_data (for links) and icon (for nodes) fields when untouched !532
  • Replaced double-click to open of subworkflows in a new tab by an explicit link. The link will be shown in red with a different icon if the subworkflow does not exist !539

Bugfixes 🐛

  • Fix loading from disk of workflows containing NaN or Infinity inputs #189
  • Fix icon for Graph input and Graph output nodes
  • Fix data mapping options for links connected to a subworkflow node #288
  • Fix Graph input and Graph output nodes not saved if not connected #279
  • Fix overflowing workflow title for small widths

Screenshots

Link to open subworkflow node

image

Broken subworkflow link

image

v3.0.0

02 Mar 11:02

Choose a tag to compare

Why a new major?

The nodes and links aspect was completely overhauled. We hope to improve the user experience by making nodes and links stand out more from the canvas.

Some customization options for nodes and links are still available: the node border color can be changed, as well as the link color. These can even now be reset to the default color if desired.

Related to this, the dimensions of nodes is fully customizable! Previously, only the width was tunable via a slider in the sidebar. Now, clicking on node makes resizing handles appear that can be used to change the width and the height of the node

Note: graph input and graph output node dimensions cannot be changed.

Due to all these UI changes, it may happen that some of your old workflows have some clunky aspects: a previously tuned node width that is no longer applied, a link label border color that doesn't match the link color...

If it is the case, you can either reset manually the width/color in the new ewoksweb version or run the following Python script convert_to_ewoksweb3.py that will try to update the UI parameters accordingly:

python convert_to_ewoksweb3.py <path_to_ewoksweb_resources>/workflows/*.json

If anything else is amiss, don't hesitate to open an issue!

Improvements ✨

  • Improve displayed names for ppfmethod tasks and nodes
  • Aspect of nodes, links and node handles was improved
  • Additional node handles (displayed when "More handles" is checked) are now on either side of the node (left for inputs, right for outputs).
  • Remove broken getAround link. If you had a getAround link in your workflow, it will be changed to a default link.
  • Node dimensions can now be changed by clicking on it and resizing it.
  • The color of the canvas background, node borders and links can now be reset to default.

Screenshots

New node and link aspect

image

Node resizing

image

Reset link color

image

v2.0.0

02 Mar 11:01

Choose a tag to compare

⚠️ Breaking change: Inputs complete replaced with Force start node.

This is to be in line with ewokscore 0.8.1. Inputs complete was a way for telling that all inputs of a node are supplied so it could be executed at the start of the workflow by parallel execution engines. We felt that the name was not clear enough so it was replaced by Force Start Node to explicitly mark a node as a node that should be executed at the start of the workflow, regardless of its inputs.
a
If the previous paragraph doesn't ring a bell, you should not need to do anything. If you were using Inputs Complete, you can run the following Python script on your workflows: convert_to_ewoksweb2.py

python convert_to_ewoksweb2.py <path_to_ewoksweb_resources>/workflows/*.json

Improvements ✨

  • Aspect of node handles was changed to be consistent, even with "More handles" checked.
  • Aspect of link and node selection outline was changed

Bugfixes 🐛

  • Icons should no longer overflow or be overstretched.
  • Fixed an error when loading a workflow from disk #287
  • Fixed the aspect of Graph input, Graph output and Node nodes

Screenshots

New selected node and link aspect

image

v1.2.2

02 Mar 11:00

Choose a tag to compare

Security fixes 🕵

  • Remove compromised polyfill.io service #805

v1.2.1

02 Mar 11:00

Choose a tag to compare

Improvements ✨

  • Add a warning to the discover tasks window to remind that the Python module identifier must be supplied and not the file path. Ex: to discover tasks in results/tasks.py, results.tasks should be supplied.

Bugfixes 🐛

  • New workflows or loaded from disk are now saved properly before execution #284

Screenshots

Warning when supplying a file path instead of a Python identifier

image

v1.2.0

02 Mar 10:59

Choose a tag to compare

Release notes

Summary

Mainly a maintenance release. The big user facing change is that ewoksweb can now be installed as a full-stack app with a simple

pip install ewoksweb

This will install the server-part alongside the web part for ready-to-use local installation ✨ !

For more info on the server part, see the ewokssserver documentation

Bugfixes 🐛

  • Fix compatibility with pip >= 24.1 !507

v1.1.0

02 Mar 10:59

Choose a tag to compare

Release notes

Summary

Another big release! The biggest improvement is that we are now able to track changes to the workflow. It means a warning window will be displayed if you try to leave the page while there are unsaved changes !

Another big feature is the possibility to specify inputs when executing workflows (see screenshot below). ⚠️ These execution inputs will overwrite eventual default inputs specified on nodes (similary to inputs of the ewoks execute command).

Among various UX improvements, we also made to choice to no more rely the label to identify workflow/nodes. Workflow and node labels will not be filled automatically when creating/saving them. Notably, the text displayed on nodes will be their identifier (Node id) by default. This can be changed by editing the label in the UI.

Improvements ✨

  • Task inputs and execution engine can now be specified when executing a workflow #194
  • When executing a workflow, a specific worker can be chosen if there are some available on the server
  • Updated documentation
  • Keyboard shortcuts are now displayed next to the corresponding action #239
  • Various UX improvements to the task creation form and the canvas
  • Add support for the notebook task type
  • Save As and Delete Workflow actions are now in the action menu on the top-right
  • Warn the user if they want to leave the page while there are unsaved changes
  • Display a red dot on the save button if there are unsaved changes

Bugfixes 🐛

  • Fix workflow dropdown not clearing when selecting a workflow #244
  • Fix some visual inconsistencies #238 !444
  • Fix an issue where an old version of the workflow was displayed when switching pages #265
  • Fix numbers saved as string when specifying task inputs of type number #184
  • Fix the automatic filling of label when creating/saving nodes or workflows #190
  • Fix an issue where the link marker type none was not saved to the server
  • Fix missing task type ppfport when creating a new task
  • Fix saving of note nodes
  • Fix an issue where the workflow was not reopened when coming back to edition after executing a workflow

Screenshots

Specifying execution inputs

image

New location for workflow actions with keyboard shortcuts

image

Aspect of the save button in the presence of unsaved changes

image

v1.0.0

02 Mar 10:58

Choose a tag to compare

Release notes

⚠️ ewoksweb can now be installed only on Python 3.7 and higher

Improvements ✨

  • Double-clicking on a subworkflow now opens it in a new tab (instead of overwriting the current displayed workflow) #234
    • Subworkflows that cannot be opened (not on the server) appear in red #249
    • Workflows can be opened on start-up by adding the query parameter workflow with the id of the workflow (e.g. http://localhost:3000/edit?workflow=My_workflow_id)
  • General improvement of the workflow dropdown
  • Improve application speed by reducing the amount of requests done to the server #236
  • Improve error messages #217 #232

Bugfixes 🐛

  • Fix workflow dropdown not clearing when selecting a workflow #244
  • Fix inconsistent behaviour of the workflow dropdown for workflows with the same label #233
  • Fix location when drag and dropping a new node in the canvas #238

Screenshots

New aspect of the workflow dropdown

image

A subworkflow that cannot be opened

image