Component: console
368 changelog entries across 91 version(s)
Releases by channel (stacked)
- fixed "in" operator in console;
- make "/system package update print" work again.
- added 'comment' parameter for '/system script'
- fixed some missing export entries;
- added unary operator 'any' that evaluates to true if argument is not null or nothing value;
- print command does not try to reuse item numbers assigned by previous invocations of 'print' when doing 'print where' or 'print follow', items are numbered consecutively starting from '0'.
- fix compact export of some partially modified configuration values;
- show internal numbers in the form returned by 'find' (like *9A0F) instead of "(unknown)" when configuration refers to deleted items. This change also applies to API.
- values of type 'nil' were returning 'nil' as result of most operations. Now it compares less than all values except 'nil' and 'nothing', and compares inequal to all values except 'nil'. This was changed to make 'print where' and 'find where' more useful. An example. Previously the following command /ip route print where routing-mark!=nosuch Would not print routes that had no value for 'routing-mark' set, because (nil != "nosuch") was equal to nil. Now it evaluates to 'true', and this command will also print all routes that have no 'routing-mark' value set.
- when exporting to file, use name ending in '.in_progress', and rename when export finishes;
- comments are now accepted where new command can start, that is, where '/' or ':' characters can be used to start new command, e.g. /interface { # comment until the end of the line print }
- no longer required to supply value of '/routing bgp instance vrf' property 'instance' for 'add' command;
- :foreach command can iterate over keys and values in an array, by specifying two counter variables, e.g.: :foreach k,v in=[/system clock get] do={:put "$k is $v"};
- exported physical interface configuration uses 'default-name' instead of item number to match relevant interface;
- report all constituent errors for parameters with multiple alternative value types;
- ':return' does not trigger 'on-error=' action of ':do' command;
- make newly added item names always immediately available;
- added '/console clear-history' command that clears command-line history for all users, requires 'policy' policy;
- fixed issue with local variables having non-empty value before first assignment;
- fixed command ":global name" without second argument to not create or change global variable "name", only effect is to make "name" refer to global variable.
- fixed passing local variables as argument to function;
- added "on-error" argument to ':do' command that is executed if command raises error;
- added new ':return' command that interrupts execution of script and passes argument as return value if script was called as function;
- resolved issue with 'from-pool' propery in '/ipv6 address';
- array value syntax in expressions '{1;2;3;4}' now can specify values with word keys as '{a=1;b=2}';
- added 'verbose' argument to '/import' command that enables line-by-line script import. By default import whole script at once and don't print it, as it was in version 6.0;
- ':global', ':local' and ':set' commands have new parameter 'do' that allows assigning block of commands to the variable;
- global variables now are common to all users and are available to all users with at least "read,write,test,policy" policy;
- fixed parameter passing to scripts. Script parameters can be accessed without declaring them with ':local' and ':global' commands. For backwards compatibility global variables are first looked up in script parametrs;
- '$var 1 2 a="a" b="b"' syntax for passing parameters to commands stored in a variable. Parameters are accessed as '$1' '$2' '$a' '$b';
- '/import' prints each command that is executed;
- 'import' has new argument 'from-line' that starts executing commands after specified line;
- fixed crash when variable name was not specified for ':global', ':local', ':set', ':for' and ':foreach' commands;
- allow to specify blank interval on x86 screens;
- changed 'password' command, now can be used from scripts and api;
- minor fixes and improvements;
- added support for compact export;
- fixed printing of OID values;