[ANNOUNCE] urbit-v1.10

93 views
Skip to first unread message

joe bryan

unread,
Jul 28, 2022, 7:12:03 PM7/28/22
to urbit-dev
urbit-v1.10

Arvo 418 K
Vere 1.10

This is a minor release, with improved error handling, http2 support,
and a couple bug fixes.

Release Notes

- adds rigorous out-of-memory detection (bail:meme), by means of a
floating guard page on the loom. previous bail:meme handling
was limited and path dependent, so running out of memory could
cause a variety of error messages and crashes.

- improves handling of bad network crypto, by means of a new error type
(bail:evil). previous handling of packets encrypted wrongly or with
stale keys was correct (dropped, not acknowledged or logged), but verbose
(sivc-de-punt) and inefficient (the decryption jet punted to nock on any
error or failure). packet event failure due to bad crypto is also tracked
and printed separate from other failure reasons.

- enables http2 upgrade (via alpn) for browsers, improving web performance
and reducing eventsource disconnects. requires https.

- fixes a bug in the binary upgrade system where the upgrade continued after
failed event replay.

- fixes a couple runtime bugs that caused crashes or hangs in error handling
or shutdown.

- bumps the maximum event log size to 500GB on aarch64 linux

- improves builds, with experimental openbsd compatibility, compdb integration.

Contributions:

Joe Bryan (41):
vere: adds --no-dock to usage printf
build: removes herb from top-level Makefile, shell.nix
vere: fix -Y (should not be resolved)
Merge pull request #5825 from joemfb/jb/try-remote-pr
Merge pull request #5814 from urbit/m/4vpi
Merge pull request #5824 from urbit/jb/fix-remote-pr
Merge pull request #5829 from botter-nidnul/botter-nidnul_aarch64-mapsize
Merge branch 'master' into next/vere
Merge pull request #5880 from midlyx-hatrys/compdb
vere: skip disk cleanup if commit thread cannot be canceled
vere: fix ctrl-c during replay
vere: set exit code globally on fatal error
vere: check exit code before upgrade/prepare-for, print failure msg
u3: make output pointer optional in u3r_p()
u3: correct u3m_soft() error result where +mook is unavailable
u3: allocate emergency buffer on every road, free on bail for trace cells
u3: adds (failing) test for bail:meme
u3: check for road stack overflow on every nock %2 and %9
u3: bump road heap offset before allocating cellblock
u3: account for guard page in cellblock allocation conditional
u3: removes/disables obsolete road stack overflow checks
u3: failure to mprotect() the new guard page is fatal
build: make bench is phony
Revert "u3: check for road stack overflow on every nock %2 and %9"
Merge pull request #5882 from urbit/jb/guard-opt
build: default to using guard page
u3: check for overflow in interpreter if guard page not present
vere: make uv_cancel return code check explicit
Merge pull request #5881 from urbit/peter/guard-page
Merge pull request #5883 from urbit/jb/exit-errors
Merge pull request #4727 from urbit/lf/http2-support
jets: bail:evil in ae-siv decryption jets
vere: drop bail:evil events without error notifications
u3: %evil leaves no trace
ames: track/log bad ciphertext crashes separately
Merge pull request #5709 from mikhail-diakov/openbsd-build
Merge pull request #5826 from urbit/jb/sivc-no-punt
ci: reenable release mgmt
Revert "ci: reenable release mgmt"
ci: enable release version mgmt
vere: bumps version

Liam Fitzgerald (6):
vere: enable http2
file-server: lowercase headers for http2
vere: support safari by stripping forbidden HTTP2 headers
vere: only strip headers if HTTP2
Merge remote-tracking branch 'origin/release/next-vere' into
lf/http2-support
vere: address jb review

Midlyx Hatrys (1):
vere: build: add ability to create compdb (for Clangd etc.)

Peter McEvoy (8):
u3: place guard page between heap and stack
u3: use pag_siz_i and pag_wiz_i where appropriate
u3: replace u3m_bail() with u3m_signal() in u3e_fault()
u3: initialize guard page in u3e_live()
u3: initialize guard page in u3e_init()
u3: restore missing `return 0` to u3e_fault()
u3: control presence of guard page using macro
u3: return 0 from u3e_fault() if guard page cannot be protected

botter-nidnul (1):
vere: change mapsize to 500 GiB on AAarch64 Linux

dkmike (2):
build: resurrect the openbsd build
build: fix after rebase

fang (2):
vere: print ip address in correct order
vere: warn reader about endianness
Reply all
Reply to author
Forward
0 new messages