Rune changelog
1.0.2 November 2026
- Rune 1.0.2 brings the bus: every running script is a job that the others can see, and scripts can wait for each other's events.
- Jobs and their events: each job has an id, and the bus reports start, blocked, issue, done, failed, quit and vanished.
emit,subscribe,next_eventandwait_eventsend and receive events.lockandunlocklet one job at a time hold a name.jobs(),job_summaryandjob_issuegive the running jobs and report a summary or an issue.rune pslists the running jobs.rune eventsprints events as JSON lines, with--job,--onceand--timeout.RUNE_BUS=offruns a script without the bus.wait for EVENT where CONDITION within SECONDSwaits for the next event that fits.on KIND as NAME { ... }runs a block for each event while the script waits.map + mapmerges two maps, and the right side wins. The same merge ismerge(a, b).copy_tree(from, to)copies a whole folder.split(text, sep, count)splits at mostcounttimes. The last piece keeps the rest.rune checkreports a comparison whose answer is never used, such asa == bon its own line. It is usually meant asa = b.- Opened from the Start menu (the Store version),
runeshows its help and waits for Enter. - Clearer wording in
rune reportand the crash note. pad_startandpad_endpad a text to a width.- New maths functions:
sin,cos,tan,asin,acos,atanandatan2(in radians),exp,log(with an optional base),log2,log10,pow,hypot,sign,clamp(x, lo, hi)andpi(). A name the script defines itself still wins over them. find(text, part, from)starts looking at the positionfrom, which lets a loop find each match in turn.http()takes request headers and returns the headers of the reply.rune checkand the compiler now report a built-in called with the wrong number of arguments.rune --builtinslists every built-in with its arguments.to_int,to_floatandto_strconvert a value, as functions or as methods, such as"42".to_int().- A
{meant literally in a text now gets an error that points at the text and says to write\{and\}.
1.0.1 November 2026
- Rune 1.0.1, a small fix release.
- On Linux and macOS, the commands a script runs now stop with it when it is stopped from outside (
TERMorHUP), as they already did on Windows. They no longer keep running, or keep a lock, after the script has ended.
1.0.0 November 2026
- Rune 1.0.0, the script language for builds, tests and deployments.
- Commands run without a shell, so each argument reaches the program exactly as written.
- A failed command stops the script.
trygives a result to check instead. - Secrets never print and cannot be put into command arguments.
makerebuilds only what has changed, andparruns work on every core.- Built in: HTTP client and server, TLS, JSON and regular expressions.
- Tools:
rune check,rune fmt,rune --llmandrune report bug, on Windows, macOS and Linux.