1.0.1 to 1.0.2
This document describes the upgrade instructions from 1.0.1
to 1.0.2
.
Sequence Argument Passing
To support repeat arguments in commands (#617) all existing sequence EDSLs (authored sequences and expansion rules) will need to be updated to use the pass-by-name argument style for commands. Pass-by-position is no longer supported because it does not allow for use of repeat arguments without major changes. For example old expansion rules could use the following pass-by-position command argument format:
/**
* This pass-by-position style is no longer supported.
*/
export default function ({ activityInstance: ActivityType }): ExpansionReturn {
return [A('2024-001T00:00:00').FSW_CMD_0('ON', true, 1.0)];
}
Needs to be updated to:
/**
* This pass-by-name style is the only supported way to pass command arguments now.
*/
export default function ({ activityInstance: ActivityType }): ExpansionReturn {
return [A('2024-001T00:00:00').FSW_CMD_0({ enum_arg_0: 'ON', boolean_arg_0: true, float_arg_0: 1.0 })];
}
Where enum_arg_0
, boolean_arg_0
, and float_arg_0
are the names of the arguments for the FSW_CMD_0
command specified in the command dictionary.
UI View Validate Endpoint
The UI view /view/validate
endpoint was moved from the gateway to the UI server. Any downstream code must now POST
to /view/validate
on the UI server. The UI server has the same API so no other changes are needed other than changing the target server. So if you are running Aerie locally with the default ports and configuration you would change http://localhost:9000/view/validate
to http://localhost/view/validate
.
UI View Schema Change
The UI view schema has replaced regex filters with lists specifying the given type. To show activities in a timeline layer you now need to specify the list of activity types you want to show. For example to show activities with type BakeBananaBread
, BananaNap
, and BiteBanana
you can do:
{
"filter": {
"activity": {
"types": ["BakeBananaBread", "BananaNap", "BiteBanana"]
}
}
}
Similarly for resources you now need to specify a resource name you want to show. For example to show the /peel
resource you can do:
{
"filter": {
"resource": {
"names": ["/peel"]
}
}
}
These replace the type
and name
field from the activity
and resource
filters respectively. Any downstream code needs to be updated to account for this.