Version: 5.7.1
5.3.6 Release Notes
New Features
AtomicRef Support
Added the following atomicreference commands:
clearcompare-and-setcontainsdestroygetget-and-setis-nullset
The following advanced script functions are also supported:
atomicreference_clear(name='default')atomicreference_compare_and_set(expected:any, value:any, name='default')atomicreference_contains(value:any, name='default')atomicreference_destroy(name='default')atomicreference_get(name='default')atomicreference_get_and_set(value:any, name='default')atomicreference_is_null(name='default')atomicreference_set(value:any, name='default')
Viridian Advanced Script Functions
Added the viridian_api type. Create an instance using Viridian(API_KEY).
The type has the following methods:
create_cluster(name:string, development=False, prerelease=False, wait=False) -> Clusterlist_clusters() -> list(Cluster)delete_cluster(cluster:id | name | Cluster)get_cluster(cluster:id | name | Cluster) -> Clusterimport_config(cluster:id | name | Cluster, name='') -> pathstop_cluster(cluster:id | name | Cluster, wait=False)resume_cluster(cluster:id | name | Cluster, wait=False)list_custom_classes(cluster:id | name | Cluster) -> list(Class)upload_custom_class(cluster:id | name | Cluster, path:string, wait=False)download_custom_class(cluster:id | name | Cluster, artifact:any, output_path:string) -> pathdelete_custom_class(cluster:id | name | Cluster, artifact_id:any, wait=False)download_logs(cluster:id | name | Cluster, dir:string) -> list(path)
Added the viridian_cluster type with the following attributes:
idnamecluster_typestatedesired_statecreation_timestart_timeclient_counthot_backup_enabledhot_restart_enabledip_white_list_enabled
Add viridian_custom_class type with the following attributes:
idnamestatustemporary_idgenerated_filename
Job Advanced Script Functions
job_submit(path:string, params:string*, name='', snapshot='', class_name='')job_list(include_sql=False, include_user_cancelled=False) -> list(dict)job_cancel(job_name_or_id:string, force=False)job_restart(job_name_or_id:string, force=False)job_suspend(job_name_or_id:string, force=False)job_resume(job_name_or_id:string)job_export_snapshot(job_name_or_id:string, name:string, cancel=False)
Snapshot Advanced Script Functions
snapshot_list() -> list(dict)snapshot_delete(name:string)
Configuration Advanced Script Functions
config_add(config_name_or_path:string, config:dict) -> pathconfig_list() -> list(config_name)
List Advanced Script Functions
list_add(value:any, name='default', index=0)list_clear(name='default')list_contains(value:any, name='default')list_destroy(name='default')list_remove_index(index:int, name='default')list_remove_value(value:any, name='default')list_set(index:int, value:any, name='default')list_size(name='default')
MultiMap Advanced Script Functions
multimap_clear(name='default')multimap_destroy(name='default')multimap_entry_set(name='default')multimap_get(key:any, name='default')multimap_key_set(name='default')multimap_lock(key:any, name='default', ttl=-1)multimap_put(key:any, value:any, name='default')multimap_remove(key:any, name='default')multimap_size(name='default')multimap_try_lock(key:any, name='default', ttl=-1)multimap_unlock(key:any, name='default')multimap_values(name='default')
Queue Advanced Script Functions
queue_clear(name='default')queue_destroy(name='default')queue_offer(value:any*, name='default')queue_poll(name='default')queue_size(name='default')
Topic Advanced Script Functions
topic_destroy(name='default')topic_publish(value:any+, name='default')
Other Advanvced Script Functions
object_list(dds:string?, show_hidden=False) -> list(object_name) | list(service_name, object_name)exit(code:int)home() → pathversion() → stringwrite(value:any, location:string, format='')read(location:string, format='default')write_data(data:data, location:string)read_data(location:string)decode_data(value:data)
Other Features
- Added doc strings support to advanced scripts. All lines starting with `# doc: ` are doc strings.
- Added
script listcommand. - Added the
sqladvanced script command. - Added the
filetemplate action, which can read from a file with an extension of.yaml,.jsonor.txt. - Added the
\exitand\echocommands. These commands are available in the script and interactive modes. See the echo and exit command documentation. - Added
--waitflag toviridiancommands. - Added the ability to change the interactive mode prompt and banner. See the def topic.
Improvements
clc demo map-setmanycommand shows a progress bar and is faster for small values.\echocommand takes 0 or more arguments.- Viridian commands display an API key selector if more than one API keys exists.
- Viridian cluster list is paged.
Changes
- Project creator uses the
defaultsfield intemplate.yamlinstead of thedefaults.yaml. - Template name is optional with
clc project createcommand. A selector is displayed if the template name is not specified. clc viridian download-logscommand outputs all log paths instead of the parent directory.- The behaviour of
clc compact serializerwas improved. multi-mapis renamed tomultimap.atomic-longwas renamed toatomiclong.
Fixes
\dicommand panics when indexes for a map cannot be retrieved.- Removed the extra
OKline inconfig list. - Restored the
--formatflag tohomeandversioncommands. - Fixed column names produced by advanced script
outputfunction. - Fixed
timeanddateactions in templates. - Fixed the prompt suffix.