[ANNOUNCE] urbit-v1.9

Skip to first unread message


Jun 1, 2022, 8:06:59 PM6/1/22
to d...@urbit.org

Arvo 418 K
Vere 1.9

This release decrements the Zuse Kelvin version, so everyone MUST
upgrade their binary to this version before the corresponding OTA can be

Release notes:

- Adds a command to `urbit` to update the binary. In future, when a new
binary is ready, simply run `urbit next <pier>` to get the update.
After install, restart with `<pier>/.run`.

- Copies of the binary are now managed inside the pier, for newly booted
ships, or upgrades installed via `next`. Such piers can be restarted
with `<pier>/.run` (or `<pier>\.run.exe` on windows), without
additional arguments. Run `urbit dock <pier>` to include the binary
in a pre-existing pier.

- Merges the `urbit-worker` binary back into `urbit`. The interprocess
boundary still exists, so there will be two `urbit` processes started
for each ship, but these are now the same binary. Old commands such
as `urbit-worker meld <pier>` are now available as `urbit meld <pier>`.

- Adds support for long-form command-line arguments. Run `urbit` to see
them all.

- Adds `--http-port` and `--https-port` arguments, allowing you to
choose which ports to use for Eyre.

- Adds Conn driver, which allows Unix processes to communicate with
Urbit via a Unix socket. The primary handler will be the Khan vane,
to be introduced in Urbit OS 418K.

- Fixes issue on Windows where multiple ships couldn't run at the same

- Adds hints to print the current stack trace

- Disables page tracking on inner roads

- Improves path sanitization


Claudia Richoux (1):
adding check to fix

DaneBettis (4):
vere: add %near and %hela tracing hints
vere: add %nara %hela hints, add a hoon test module for hints
vere: add hela and nara hints
changes in response to code review

Joe Bryan (60):
u3: fix compilation of dynamic hints in tail position
u3: fix snapshot corruption by preemptively dirtying the loom
u3: refines snapshot system docs
jets: plug leak in (slaw %p ...)
vere: refactors urbit-worker argument parsing
vere: removes urbit-worker
vere: adds lmdb/disk info to cmd
vere: removes all reference to urbit-worker
vere: opens event log to aquire pier lock in all stateful utilities
vere: removes obsolete windows binary extension handling
vere: temporarily disables ctrl-c on windows
vere: refactors http request socket stealing
vere: adds runtime status endpoint (reflecting current spinner state)
vere: restores ctrl-c on windows, fixes latent handle precision bug
vere: refactors serf i/o initialization
vere: stubs out --next upgrade flag
vere: factors out generic curl get from pill download
vere: implements check for next version
jets: plug leak in (slaw %p ...)
vere: support restarting with implicit pier (at $pier/.run)
vere: fixes up get next version
vere: adds support for configurable release channels
vere: implements upgrade
vere: refactor _king_get_vere()
vere: link binary on boot
vere: compat: polyfill link() on windows
vere: compat: link binary at $pier/.run.exe on windows
vere: copy argv[0] before calling dirname()
vere: temporarily "vendors" whereami lib
vere: get binary self-path with whereami lib
vere: copy binary instead of link on boot
vere: backs out overly zealous path canonicalization assertions
vere: plugs leak, notes TODOs
vere: adds `mass` as synonym for `grab` subcommand
vere: switches upgrade to subcommand (`next` instead of `--next`)
vere: only define actively used architecture strings
vere: implements --no-dock to disable binary copying/linking
vere: implements `prep` (for upgrade) subcommand
vere: supports subcommands via `$pier/.run cmd`
vere: retries read/write errors when copying binaries
vere: refactors binary download, prevents overwriting existing binaries
vere: hack around linux crash on libuv cleanup
vere: corrects base url for binary download
nix: vere is always built for a pace
vere: refactors macros for binary alias ($pier/.run)
vere: refactors binary copy on boot to use hardcoded pace
vere: address review comments for upgrade functions
vere: refactors getting next version string
vere: improves error handling in binary download
vere: adds -a/--arch option to next subcommand
vere: adds dock subcommand for copying binary into pier
vere: adds vere/fetch-vere subcommand for downloading a binary
vere: fixes function comments in main.c
vere: bumps version to 1.9-rc4
vere: trim trailing whitespace from pace file
vere: fixes -X scry/export (broken in previous refactoring)
vere: trim trailing whitespace from pace file
vere: create $pier/.bin/pace automatically
vere: disable printfs on failed requests to $version/next
vere: bumps version to 1.9-rc6

JÅ shin (211):
khan: io driver skeleton
khan: listening on socket
http: check return of snprintf
khan: unlink socket on close
khan: assert name
khan: TODO, init pipe after unlink
khan: sequence number before socket open
khan: no uv_connect_t, spacing
khan: thoughts in conn_cb
khan: thinking intensifies
khan: use u3_Host.dir_c consistently
khan: open socket on %born completion
khan: error handling
khan: wip driver implementation
khan: fix pointer reference
khan: refactor, fix memory issues
khan: close on uv_read_start failure
khan: wip use u3_moat instead of raw uv_pipe_t
khan: minor formatting cleanup
khan: use u3_moor
khan: do not unlink / close unless live
khan: remove ioctl include
khan: cue, remove obsolete read_cb
khan: sending requests to vane
khan: send as %fyrd
khan: constant first
khan: log on unlink on exit
khan: close stream on EOF
khan: skeleton for effect parsing
khan: full round trip achieved
khan: no we don't
khan: send errors over socket
khan: comment
khan: u3z in _khan_ef_handle
khan: remove %set-config stub
khan: store connection number on u3_shan
khan: special case removing chan at list head
khan: bail on unknown effects
khan: bail properly
newt: decode no longer crashes on bad length
khan: code review input
khan: fix typo
vere: alphabetize in u3_opts
vere: add undocumented -h option
vere: extract u3_reck_lily
khan: try to send %socket-done on close
khan: just %done
khan: strip out sequence numbers
khan: before i forget
Revert "vere: add undocumented -h option"
khan: print stack traces, some cleanup
vere: alphabetize getopt short options
khan: noop on windows
auto: comment style
khan: unwrap jar, switch on i.jar
newt: change framing to tag byte + 32-bit length
test: fix newt tests
khan: wip naive scry implementation
khan: trivial style cleanup
khan: wip scries, moves, request ids
vere: typo in lord.c peek docs
khan: poke destructuring now case-independent
khan: flip request-id order, add request list
khan: cleanup, request-ids in kick_f
khan: fix ci
khan: reformat %peek, report %fyrd errors, misc
khan: _khan_read_wire takes tag, rename fn
khan: redo error logic
newt: remove fprintf
khan: assert
khan: include %avow in response
khan: urth namespace stub
khan: remove TODO, clean up docs
khan: remove _khan_close_socket
khan: document %peek overlay
khan: always open socket, make %fyrd conditional
khan: naming scheme for _khan_init_sock
khan: fix comment
khan: comment formatting
khan: comment fixes
vere: export u3v_lily
test: we stopped futureproofing at some point
khan: comment changes
khan: better noun refcounting, errors
khan: only plan %done if vane is present
vere: fix u3v_lily bounds checking
vere: reorder u3v functions
test: fix make output, add boot tests
test: return 0
vere: use u3r_safe_word instead of u3r_word_fit
nix,vere: move ivory def to its own source file
test: cleanup
vere: schnorr jets
vere: remove headers from configure script
vere: change include file name in compat
vere: reading comprehension :(
khan: rid is any-sized atom
khan: stub out new commands
khan: implement %ovum
khan: -> conn
conn: van_o -> kan_o
conn: comment
conn: comment
conn: some peel/urth functionality
conn: various fixes and cleanups
conn: merge lines
conn: comments
build: arm64 architecture
conn: don't send roc
unix: asserting wrappers around unix fs calls
vere: replace fs calls with asserting counterparts
vere: extra fs calls
main: canonicalize paths from command line
unix: whitespace cleanup
unix: comment format
noun: noop, C 'types' being what they are...
vere: move lockfile from unix to disk
unix: escape overloaded paths
unix: bugfixes
compat: mingw realpath
unix: use (sane %ta) out of arvo
main: simplify _main_repath
unix: don't require that string is non-empty
unix: remove extra layer of conditional
vere: rename u3_unix_{safe,cane}
unix: reformat comments
vere: remove walk, move save to unix
vere: remove 'new' from header comments
unix: code review feedback
unix: c3_
unix: use $ for types
unix: hard-code %put base directory
unix: reorder checks
main: repath scry path
unix: test cases
unix: fix compile warning
unix: cane before root removal
main: support files in cwd
main: repath cleanup
unix: fix regression in _unix_scan_mount_point
unix: comment with suggestions for future
unix: knot mapping that is not a valid @ta
noun: go ahead and enforce that invariant (#5579)
conn: describe +fyrd interface to %khan
conn: comment format
jets: mark schnorr jets non-perfect
jets: remove sosi/sove testing flags
vere: mv ivory header out of ur
conn: add port request
conn: extract %peel response
conn: produce command line arguments
vere: remove log lines
conn: peel: /help, /mass stub, /vars stub
vere: remove unused declarations from vere.h
conn: cleanup peel response
vere: comments around fs wrappers and unix.c
conn: provides ames metrics
conn: cleanup docs, document %peel
conn: more docs cleanup, describe %ovum updates
conn: u3i_chub in ames stats
conn: remove unused inn_u
conn: remove cram
Revert "conn: produce command line arguments"
vere: ivory.h u3 header convention
conn: fix break style
vere: per-block indentation
conn: remove args from help list
conn: hopefully clarify bail termination
conn: peel is (unit), not (unit (unit))
conn: don't send %work
newt: use 0x0 instead of 0x9
conn: alignment
Revert "conn: provides ames metrics"
vere: s/info/slog/
vere: implement noun-style info in conn %vars
conn: read http / https ports from pier
conn: typo
ames: comment
conn: indentation
conn: basic http server info
vere: resolve /vars type
test: move _test_lily into noun_tests
vere: u3_pier_info (and use in conn)
conn: document /info type
vere: sort motes
vere: remove unused and wrong mote
vere: prune wrong motes
conn: update header comment
vere: info measurements as $mass
vere: disk info
vere: lord info
vere: guarantee unique concatenated names
vere: drivers in driver link-order
conn: refcounts
conn: use %bail instead of %fail
vere: add http/s port flags
http: abort increment/bind loop on manual port
vere: long-only opt for http/s port
http: print port in error message
conn: don't u3z(u3_none)
conn: futureproof comment
vere: remove short flags from header comment
disk: %read info
conn: add %peel /who
conn: condense _conn_moor_poke
conn: send errors on bail
repo: fix ent build on mingw
conn: extract _conn_make_cran()
conn: clean up whitespace
conn: windows
conn: add --no-conn option

Liam Fitzgerald (1):
vere: update event injection for four letter vanes

Peter McEvoy (8):
u3: comment u3a_* macros
u3: re-add accidentally-removed openssl header file
u3: add header guards to header files in pkg/urbit/include
u3: disable page tracking on inner roads (#5477)
vere: use hex literal for database size passed to u3_lmdb_init()
u3: document page tracking subtleties when taking snapshot
u3: unify interpreter opcode information using X macro
u3: comment use of X macro in interpreter

Philip Monk (6):
vere: bump kelvin to 329/418
vere: add low water mark debug printf
conn: remove printf
vere: correctly measure .urb/put path
vere: bump version to 1.9-rc1
vere: bump version to 1.9-rc3

fang (4):
vere: support long-form command line arguments
jets: cache hmac hashing gate
vere: do not use mainnet-proxy for galaxy booting
u3: improve %bout time printing
Reply all
Reply to author
0 new messages