Skip to content

Releases: wandelbotsgmbh/wandelscript

v0.3.3

17 Mar 16:10
Compare
Choose a tag to compare

v0.3.3 (2025-03-17)

Chores

  • RPS-1310: Replace PTP with CartesianPTP (3a49b91)

Also require the newer version of nova that brings this change about.

  • RPS-1310: Replace shortcut actions with verbose names (5974b5d)

Detailed Changes: v0.3.2...v0.3.3

v0.3.2

13 Mar 13:08
Compare
Choose a tag to compare

v0.3.2 (2025-03-13)

Bug Fixes

  • RPS-1309: Read(robot, "pose") now considers the default_tcp (#14, 22445d2)

Co-authored-by: Dirk Sonnemann [email protected]


Detailed Changes: v0.3.1...v0.3.2

v0.3.1

12 Mar 09:50
Compare
Choose a tag to compare

v0.3.1 (2025-03-12)

Bug Fixes

  • Allow for special characters in PR titles (2a8c8c2)

The prior way made backticks evaluate as bash or sh subshells commands.

E.g., I got following error:

Run PR_TITLE="feat(RPS-1311): Add pretty string repr for PlanTrajectoryFailed errors"
/home/runner/work/_temp/7006b9fd-09b9-48b8-b2de-64f7a17ea6e7.sh: line 1: PlanTrajectoryFailed: command not found
Error: Process completed with exit code 127.

Hereby forbid arbitrary code execution via PR Titles, as funny as that may be, and allow special characters such as backticks.

  • Fix typos in poses2.ws example (d29e88e)

  • RPS-1311: Improve error messages for PlanTrajectoryErrors (b4af166)

In the case of PlanTrajectoryErrors, omit the very long output error lines in favor of a concise info about the error description.

This ALSO touches on the traceback, since it goes haywire in the CLI. Simple solution is to not set the ProgramRunner._exc variable. The output is so hyuge, thousands of lines of floating point numbers, nobody in their right mind would inspect them and hope to see something meaningful.

A somewhat technical but much lighter message is still conveyed to both robot pad and stdout.

Also require nova 0.47.0 in order to get access to the new pretty string method.

Chores

  • Improve output formatting in cli.py (af99e8e)

Detailed Changes: v0.3.0...v0.3.1

v0.3.0

07 Mar 15:27
Compare
Choose a tag to compare

v0.3.0 (2025-03-07)

Chores

  • Groom README.md (c20a504)

  • Remove a superfluous pass (c28ca44)

  • Remove an outdated TODO in pyproject.toml (94d0eec)

Features

  • RPS-1286: Add Wandelscript CLI executable (476cc10)

Just a small one.

At the moment, only accesses a cell, everything else has to be defined inside the wandelscript. E.g., code like the following is supposed to work, assuming the cell and TCPs are set up prior:

tcp("flange") robot = get_controller("controller")[0] home = read(robot, "pose") sync

Set the velocity of the robot to 200 mm/s velocity(200)

do with robot: for i = 0..3: move via ptp() to home move via line() to (0, 0, 0, 0, 0, 0) :: home move via line() to (200, 0, 0, 0, 0, 0) :: home move via ptp() to home

I see that in future we can specify cell, robot, TCPs and more via command line. However, baby steps. Thus adding this now hereby. I believe we can grow this over time and according to our usage patterns.

Install the CLI tool by calling:

poetry install

This installs the executable into your virtual environment.

You can then use the CLI via:

poetry run wandelscript --help poetry run wandelscript examples/my_script.cli poetry run ws examples/my_script.cli # shortcut alternative

I used typer for its apparent popularity within the team.

Note that importing wandelscript takes a horrendous amount of time, thus the CLI loads precariously slow.


Detailed Changes: v0.2.2...v0.3.0

v0.2.2

07 Mar 15:14
Compare
Choose a tag to compare

v0.2.2 (2025-03-07)

Chores


Detailed Changes: v0.2.1...v0.2.2

v0.2.1

04 Mar 12:01
Compare
Choose a tag to compare

v0.2.1 (2025-03-04)

Chores

  • Renamed flange to Flange to make it work in Wandelengine (#10, 479c911)

Co-authored-by: cbiering [email protected]


Detailed Changes: v0.2.0...v0.2.1

v0.2.0

04 Mar 08:44
Compare
Choose a tag to compare

v0.2.0 (2025-03-04)

Features

  • RPS-1230: Propagate motion recordings (#9, ab9879f)

Co-authored-by: cbiering [email protected]


Detailed Changes: v0.1.0...v0.2.0

v0.1.0

26 Feb 14:33
Compare
Choose a tag to compare

v0.1.0 (2025-02-26)

Bug Fixes

  • Check stdout on a run for a print message in a test (b4c6715)

It's clear that the program's log contains "print something", since it contains print("print something"). However, upon looking closer, I realized that runner.skill_run.logs in fact does not contain the program's print() output, that's in 'runner.skill_run.stdout`.

Change the test accordingly.

  • Fixed new nova execute interface & WS example (#7, 7fa497b)

Co-authored-by: cbiering [email protected]

  • Remove unknown pytest options (1199ddf)

Extraenous ports over from the wandelbrain repo, can go away since their according packages are missing here.

  • Typo (00312ce)

  • RPS-1006: Fixed assoc does not work for tuple/array in Wandelscript (#3, f264e17)

Co-authored-by: cbiering [email protected]

Chores

Disable pre-commit trailing whitespace checks on whitespaces.ws. We have ws-file that concerns itself with whitespaces and trailing whitespaces. Consequently, don't lint trailing whitespaces on this file.

Add hooks for yamllint. Also add a copy of the .yamllint config from the wandelbots-nova project to align on our formatting standards.

Add check for sorting imports.

Add mypy to pre-commit.

  • Add test showcasing async foreign function (111fcd2)

  • Added basic CI (fc07f94)

  • Align import style of dataclasses with from dataclass ... (164a20f)

Hereby align the import style to the style apparent in the rest of the project.

Ignore

  • vim swap files
  • some reports
  • .vscode/ folders
  • .python-version file

Ignore reports for:

  • pytest

  • mypy

  • Extend the Readme (72bf6b8)

Give it a more welcoming feel.

$OUTPUT_DIR seems unused. I hereby remove it entirely.

  • Groom the examples a bit (9dc9ae0)

Especially reformat the json files for readability and a somewhat more canonical formatting.

It may not be perfect but I consider it better than before.

  • Introduce internal _types (1dbd9ba)

  • Mention async funcitons in ForeignFunction docstrings (2885bcc)

  • Migrated from wandelengine repository (93cf4c5)

  • Remove geometricalgebra cont'd (db5f1eb)

  • Remove geometricalgebra Episode III (766fe95)

Revenge of the euclideans.

  • Remove a wrong entry from the README (0c5a976)

  • Remove an unused import in a test file (3a573b6)

  • Remove dependency geometricalgebra (4b1500f)

  • Remove Orientation and Position (c213534)

Now largely consolidated in nova's Vector3d.

p

  • Remove plugins_addons.{py,ws} (671f4b5)

  • Remove serializer stuff (9c1cd5e)

Serialization is part of the classes and types that the Nova SDK brings, so away with it here.

Some of the builtinins rather belong into the Nova SDK.

First step is to identify to see what should go over. Then, remove it here and then add it to the Nova SDK. Then implement it here.

For now, identify and delete here in order to get a slim, working barebones Wandelscript.

  • Remove some trailing whitespaces (31c5dd1)

Came via:

poetry run pre-commit run --all

This fixed a few other whitespace issues in files that were either autogenerated or where trailing spaces were intentional. I did not commit those changes.

  • Remove stray pytest.xml reports (56b68d2)

Ciao cacao

  • Remove unused Spline class (90cc557)

  • Remove unused tcp_pose() builtin function (90d20a4)

  • Run poetry lock (88b9135)

  • Slim some docstrings and improve few type hints (aeda758)

  • Transition dts / pyjectory (18aa673)

  • Updated deps & using wandelbots-nova package (8123185)

  • Upgrade dependency wandelbots-nova (9c15556)

Also update the README a bit.

  • Use backport for ExceptionGroups (d082eaf)

ExceptionGroups have their 1st party introduction with Python 3.11.

Features

  • Add a foreign function interface (7495698)

Pronounced Fiffi.

Change an according test to also assert the usage of ForeignFunctions.

  • Added LICENSE (8c559cf)

  • RPS-1266: Added release CI to wandelscript (be1a4ad)

  • RPS-1267: Renamed skill to program (f6aaebc)

  • RPS-898: Wandelscript migration (#5, 57b1ff0)

Co-authored-by: cbiering [email protected]