Releases: jan-dolejsi/vscode-pddl
[2.15.0] PDDL Model Visualization
[2.15.0] PDDL Model Visualization
Domain :types
hierarchy and problem :objects
and :init
visualization
A "View" code lens is displayed above selected PDDL sections such as :init
section of problem files. Clicking it will open a graphical representation of the initial state for easy review.
So far object properties and relationships are displayed in a tabular form and a directed graph is available to visualize 2D-symmetric predicates or functions i.e. predicates or functions whose first two arguments are of the same type.
For example predicate (path ?from ?to)
or function (distance ?a ?b)
will be visualized on a graph.
Excluding actions from swim-lane plan visualization by configuring selected parameters to be ignored
It is now possible to exclude some action parameters from swim-lane plan visualization. This is useful for action parameters, which are just marginally involved in the action conditions, and displaying such action in the swim-lane of the given object makes the diagram confusing. To configure this, add ignoreActionParameters
into the domain.planviz.json file, where domain matches your domain file name. This example will exclude ?to
and ?from
parameters of any action starting with move
. It also exclude any parameter with name ending with the _reserved
suffix:
{
"ignoreActionParameters": [
{
"action": "^move",
"parameterPattern": "^(to|from)$"
},
{
"action": ".+",
"parameterPattern": "_reserved$"
}
]
}
Auto-completion
Extended auto-completion to requirements inside (:requirements )
and onto parameter names (i.e. symbols starting with ?).
Fixes
- Large domain/problem files now parse correctly. Previously the parser output buffer was fixed to the node.js limit and beyond certain size, PDDL file errors and warnings would stop displaying.
- Code Action to declare undeclared predicates/functions is now case insensitive (because the VAL parser reports warnings in lowercase)
- ValueSeq outputs warnings about unsatisfied pre-conditions. These now do not break the ValueSeq output parser. The warnings go to the log.
- Fixed parsing of timed initial literals of
at
predicates. - Clicking on an action name in the plan will reveal it in an already open editor window, rather than opening a new panel in the same editor group.
v2.14.4 Bug fix
Problem file parsing was fixed to get the initial values again
Context-sensitive auto-completion suggestions
- Auto-completion of domain, problem file structures is context sensitive now and only suggests structures that are valid in the given place
- Enable the on-type PDDL formatter to get help with shaping the whitespace around your PDDL code (namely indentation) for better readability of your models. To give it a try, enable the Editor: Format On Type and PDDL: Formatter setting options.
- ValStep repro
run.cmd
batch file was updated to latest version of ValStep's syntax. - PDDL Problem file parsing re-worked to use the Syntax Tree
ValStep upgrade and plan line plot improvement
[2.14.2] ValStep upgrade and plan line plot improvement
VAL upgrade
Upgrade to VAL build 37. If it does not pop-up, open the 'PDDL: Overview Page' command and upgrade VAL from there.
This upgrade includes improvement of ValStep robustness for (much) larger plans.
Plan visualization
Use the PDDL: Plan Report > Line Plot > Group By Lifted setting to enable/disable grouping of line-plots by lifted variable. When disabled, one chart is generated for each grounded function.
Optionally override the PDDL: Plan Report width (in pixels) for exporting to fine tune how the report looks.
For abnormal screen sizes or DPI settings, it the plan visualization width (in VS Code) can now be set using the PDDL: Plan visualization width (in pixels) setting.
Fixed opening the plan report in the default browser.
Missing requirement, xml plans
[2.14.1] Fixes
- added
:object-fluent
requirement to the syntax highlighter - support for plans in an XML format
Parameter [F2] renaming and undeclared predicate/function auto-fix
[2.14.0] Parameter [F2] renaming and undeclared predicate/function auto-fix
Features
- Renaming of action/process/event/forall/derived parameters. Click on a
?
parameter and press F2. - Declaring undeclared predicates and functions:
Fixes
- For PDDL files under version control, the git repo version of the domain/problem files would appear as one of the real domain/problem files in the workspace, which was very confusing. They should no longer surface.
[2.13.1] Improved support for template-based problem generation
[2.13.1] Improved support for template-based problem generation
New Features
- With a single click you can add all necessary files for a Nunjucks-based problem template generation.
- For templated problem files a code action (bulb) can open the live preview of the generated problem file
- Early preview of domain-specific plan/state visualization via the new
planVisualizer
property in the<<domain>>.planviz.json
config file. - Generated problem file previews are live updating when the data in .json file is modified!
Fixes
- Previously the editor did not support invoking the planner on a template-generated problem file.
- When authoring PDDL problem templates, errors are reported as diagnostic problem, and/or instead of the generated test. This is far less intrusive for the user experience.
- Visualization of instantaneous actions in the plan - the bars are now fully filled, instead of looking like if they were ending in the relaxed plan.
- The plan visualization was missing some numeric function plots, when the initial and final value of the function was the same.
Release 2.13.0
[2.13.0] - VAL binaries available for MacOS
Features
VAL binaries are now available for Mac OS as well as Linux and Windows. If you are a Mac user, download them using the PDDL: Download VAL
command or when prompted.
Added syntax highlighting for PDDL+ features such as the :time
requirement and process
or event
.
Added code actions corresponding to parser warning:
- empty .pddl file suggests applying the domain/problem snippet.
- missing PDDL requirement warning offers to add the requirement to
:requirement
Enriched action hover-over info. It now details action parameters and documentation comment.
Predicate/function documentation comments are picked-up from both above and to-the-right location relative to the declaration.
(:functions
; some general comments
; Accumulates cost
(cost) ; [$]
)
Unused functions or predicates are rendered as faded.
Fixes
Type/predicate/function renaming fixes
- new name is validated before applying the bulk-rename
- de-duplicating parser warnings/errors (VAL Parser repeats the missing requirement warning many times)
- errors while downloading VAL binaries are now reported up to the user
- previous VAL binaries are properly deleted after upgrade to the latest version
Engineering
- file path and URI manipulations now delegated to the
vscode-uri
package and unit tests more robust for execution on MacOS - minimum version of VS Code is now 1.32
- rewritten the PDDL domain/problem regex parsing by a PDDL tokenizer, which allows inspecting the syntax tree and implementing context-sensitive features correctly
Fix 2.12.2: mock search debugger fixed
- mock search was not showing states correctly on search debugger
Bug fixes
v2.12.1 - VAL binaries are configured using relative path, so they survive ex…