Skip to content

Tags: majcosta/urbit

Tags

v0.9.1

Toggle v0.9.1's commit message
urbit v0.9.1

https://github.com/urbit/urbit/releases/tag/v0.9.1

This release contains updates to both Arvo and Vere, so users should
update their binaries.

In particular, this release fixes a memory management bug in Vere, so
users should upgrade promptly to avoid running out of memory.

This is not a breaching release, so users should not create new piers.

Contributions:

Fang <git@fang.io> (2):
      publish: remove unused %disconnect card
      chat-cli: update prompt on ;join

Joe Bryan <joemfb@gmail.com> (7):
      arvo: improves move type specialization (by spec'ing incrementally)
      u3: print the size of the free lists on |mass
      u3: restore memory reclamation every 1k events
      u3: statically measure memory on startup if < 1/2 the loom is free
      u3: removes "worker_send_replace" printf
      build: always include debug symbols

Philip Monk <phil@pcmonk.me> (3):
      azimuth-tracker: fix |watch generator
      ames: don't crash
      ames: better stack traces

arvo.2019.10.16

Toggle arvo.2019.10.16's commit message
arvo 2019.10.16

This release contains Arvo changes that will be pushed to the live
network as an over-the-air update.

Contributions:

Fang <git@fang.io> (5):
      claz: print proper error messages
      claz: check planet availability for %invites
      claz: check pool sizes when inviting
      claz: factor asserts out of callsites
      claz: group state check arms together

Logan Allen <loganallc@gmail.com> (1):
      chat: changed a =: to a =. to fix message storage bug

Philip Monk <phil@pcmonk.me> (1):
      jael: retrieve first sponsor instead of last

v0.9.0

Toggle v0.9.0's commit message
urbit v0.9.0

Release notes:

* Adds the |$ or "barbuc" mold builder rune to Hoon.  This replaces the
  problematic +* arm syntax, which previously meant two different things
  (mold-builders in |%, and aliases in |_).

* Includes a full refactoring of %gall, our agent execution vane, that
  cleans up and de-obfuscates its internals significantly.

* "Decapitates" or removes all compiler jets.

  Historically, a compiler jet (i.e., a jet for an arm of +ut) had two
  parts: a cache, and a reimplementation of the Hoon logic in C.  Now,
  after going through a cache, relevant jets call back to Hoon; jets
  that never had a cache are removed entirely.

  This change takes us significantly closer to two important continuity
  goals: making the Hoon compiler independent of the implementation of
  our Nock runtime, Vere, and also making it upgradeable over-the-air.

* Makes significant improvements to memory management in a number of
  low-level areas (e.g. conversions to and from GMP structs, our
  murmur32 jet, noun equality in u3), as well as in Arvo proper.  Adds
  explicit memory pressure handlers to Arvo and a number of vanes, with
  the result that all-around memory pressure should be significantly
  reduced.

* Dramatically reduces the time required to write large files to %clay
  (yielding an improvement in excess of 90% in some cases).

* Adds a "lite boot" command-line option, '-l', to Vere.  This boots
  with the only two apps required to run a "real" ship (namely, :dojo
  and the new :azimuth-tracker) and reduces boot time by roughly a
  factor of a third.

* Includes a full rewrite of %jael, our secrets storage vane.  In
  addition to a number of improvements (handling of chain
  reorganizations, handling of moons, slashing total lines of code),
  this rewrite adds support for individual breaches in the case where a
  ship's sponsor breaches without warning.

* Replaces the old chat application, :chat, with a new one that doesn't
  depend on the soon-to-be-deprecated :hall.

* Many other minor improvements and bugfixes.

Full contributions list:

(Note that commit totals below may not match the actual commits summarized as
superfluous or nondescriptive commit descriptions have been omitted.)

BernardoDeLaPlaz <BernardoDeLaPlaz@users.noreply.github.com> (1):
      64-bit noun tests

Brendan Hay <brendan.g.hay@gmail.com> (10):
      Adding nix expressions to build/bake docker images
      Removing -f (fuzz testing) option
      Removing unnecessary call to seed prng for fuzz testing
      Adding conditional gdb/coredump logging for debug images
      Adding -T option to disable terminal/tty assumptions
      Adding terminal guard around tty column/row calculations
      vere: Wrap tank dump priority escape codes with terminal check
      build: Tag container images with git branch/sha build information
      build: Trimming build target from container image tag
      build: move ops debug conditional usage to drv metadata

David Kerschner <dkerschner@hcoop.net> (13):
      hoon: add ast for |$
      hoon: add parsing rules for |$
      hoon: replace +* name usage with ++  name  |$
      hoon: update tall parsing for |$
      hoon: remove extraneous cast
      hoon: removed unused parser type

Elliot Glaysher <elliot@tlon.io> (2):
      Fix capped queues to not crash when the size is set to 0.

Fang <git@fang.io> (27):
      chat-cli: Support %url and %me message types
      chat-cli: Add debug poke for connecting to store
      chat-cli: Update prompt on-create
      chat-cli: Match store and hook's path handling
      chat-cli: Implement permission management
      chat-cli: Simplify message command type & logic
      chat: Move eval logic into lib
      chat-cli: Subscribe to /updates instead of /all
      chat-cli: Properly support deleting local chats
      chat: Move eval logic out of /lib/chat-json
      drum: Boot with %chat-cli, without %hall & %talk
      chat-cli: Remove prep printf
      chat-hook: Improve reap printf readability
      drum: Ensure dojo prompt on-boot
      keygen: Add ownership-from-ticket function
      claz: Implement batch invites
      claz: Correct & complete comments
      chat-cli: try not to double-bind glyphs
      chat-cli: properly decode double-bound glyphs
      chat-cli: support per-target glyph unbinding
      chat-cli: maintain sane glyph binding state
      claz: %single %send-point to correct contract

Isaac Visintainer <isaac.visintainer@gmail.com> (1):
      eyre: changed cookie format

Jared Tobin <jared@jtobin.io> (111):
      zuse: remove superfluous 'scup' and 'culm' types
      gall: clean up +mo-abed, +mo-abet
      gall: clean up +mo-{conf, pass, give, okay}
      gall: clean up +mo-receive-core, +mo-born
      gall: clean up +mo-{boot, away, awed}
      gall: clean up +mo-{bale, ball, come, chew}
      gall: refactor +mo-cyst
      gall: clean up +mo-cook
      gall: clean up +mo-claw, +mo-beak
      gall: clean up +mo-{clip, club, gawk, gawd}
      gall: remove %load from %gall move in %dill
      zuse, gall: simplify +task, fix %conf in %gall
      gall: misc. cleanup of +ap state and arms
      gall: simplify bone/duct map names
      gall: type and non-+mo/+ap arm cleanup
      gall: miscellaneous large-scale cleaning
      helm, drum: remove deprecated %load
      gall: remove %sunk, fix 'ship-state' in %wash case
      gall: remove deprecated 'mak' from 'agents'
      gall: remove slam-related printfs
      zuse, gall, eyre, dojo: deprecate 'cuft'
      zuse, gall, eyre: deprecate 'cush'
      zuse, gall: deprecate 'club'
      gall: add basic test harness
      tests: replace bogus queue in test-qeu
      release: v0.9.0

Joe Bryan <joemfb@gmail.com> (63):
      rewrites u3a_take to use the road stack
      term: minor refactoring of write patterns
      term: rewrites spinner, renders on main loop
      arvo, ford: add type safety to scry
      hoon: enable scry in +mule
      noun, worker: write -P profile into pier
      noun: remove extra allocations from u3a_atom->gmp and reverse conversions
      worker: fixes scope issue inside #ifdef U3_EVENT_TIME_DEBUG
      u3: rewrites +muk jet to skip heap allocations where possible
      u3: cleans up xtract.c (mostly style, minor refactoring)
      u3: adds u3r_vmean (explicit varargs list), u3x_mean
      u3: refactors set treap jets (+in)
      u3: refactors disabled set treap jet (+int:in)
      u3: refactors map treap jets (+by)
      u3: refactors disabled map treap jets (+int:by and +uni:by)
      worker: also replaces fd 0/1 so we don't accidentally re-use them
      u3: consistently uses u3k/u3z in hashtable
      u3: fixes up whitespace in hashtable initializations
      u3: refactors u3h_gut internals to more closely match u3h_git
      u3: adds macros for (most) hashtable  shifts and bit-tests
      u3: refactors hashtable allocations
      u3: moves u3_put immediately after internals
      u3: adds u3h_uni hashtable merge
      u3: adds u3h_take/with hashtable road promotion
      u3: adds comments to inner hashtable struct definitions
      u3: separates "take" and "reap" in the bytecode interpreter
      u3: separates "take" and "reap" in the jet dashboard
      u3: refactors _cj_hank_find(), removes u3j_site_copy
      u3: further refactors u3m_love, removes obsolete ordering concerns
      u3: removes u3rz_sing in favor of the pre-existing u3r_sing_c
      u3: minor refactoring of u3r_sing traversals
      u3: refactors unifying equality unification
      u3: unifies unifying equality (removes u3r_sang/u3r_sung)
      u3: removes obsolete u3h_gut()
      u3: fixes road leap/fall debug printfs
      u3: moves unification into u3a_wed()
      u3: adds and refines unifying-equality comments
      u3: cleans up whitespace, removes dead code in allocator
      u3: adds and uses u3a_full/heap/temp road macros
      u3: factors out u3a_idle() to measure free-lists in a road
      u3: refactors periodic memory reclamation
      u3: tweaks |mass output (and fixes inadvertent truncation)
      u3: adds %trim memory-pressure notification "effect"
      u3: wires up the %trim event in the daemon
      arvo: wires up %trim memory-pressure event stubs
      u3: refactors memoization patterns for safer rc
      ford: clear caches in response to memory pressure
      eyre: close channels in response to memory pressure
      gall: clear caches in response to memory pressure
      arvo: clear caches in response to (high) memory pressure
      removes obsolete cli args for eth snapshots (-C and -E)
      vere: removes unimplemented cli args -b and -V
      vere: implements -x (exit immediately after boot)
      vere: adds comments noting possible -a/-d requirements
      vere: handle error when opening pier lockfile
      vere: uses c3_sync macro instead of inline platform checks
      vere: checks on boot that we have write permissions for $pier
      ames: skip timers if unix duct is unset

John Franklin <jfranklin9000@gmail.com> (2):
      make udon inline code match block code and enable inline code gaps in Publish app
      modify udon parser to preserve gaps in inline code blocks

Liam Fitzgerald <liam.fitz@protonmail.com> (4):
      zuse: added CDATA support to de-xml:html
      zuse: fix comment parsing in de-xml:html
      zuse: add en-xml:html and de-xml:html tests

Logan Allen <loganallc@gmail.com> (29):
      hood: remove hall dependency.
      zuse: added path, tank, string utils to en/dejs
      apps: added group/permission stores, hooks, marks
      hood: start up groups and permissions
      app: Added chat store, hook, marks, and view.
      chat: added new JS files, deleted old chat.hoon
      hood: added chat-store, hook, and view to startup
      chat-hook: updated to allow a simpler message send flow
      apps: updated style and added moon support
      marks: moved hook action marks
      chat: added old @ messages, now called %me messages
      chat: changed wire format and quitting subscription properly on ban
      chat: style fixes, removed some redirect bugs from chat
      chat: /primary path provides truncated initial as well as updates
      chat: fixed eval function to disable scry
      chat: remove poke-noun arms
      js: Improved join UI and added support for paths with multiple elements
      apps: added permission hook and chat-view %join action
      permission-hook: style improvement

Philip Monk <phil@pcmonk.me> (58):
      specialize azimuth-tracker to sets of ships
      listen to eth node for sponsor
      migrate ames to kale
      %breach-hi works with kale
      %breach-sync works with kale
      simplify kale/azimuth-tracker subscription semantics
      change preboot stuff to include rift
      implement kale hierarchy
      only blockchain is real
      add test for sudden breaches
      add moon handling to kale
      add keys to sponsor in preboot validation
      fix +moon
      fix full moon-az test
      kale -> jael
      remove snapshot scaffolding
      add rekey to jael
      add |moon, |moon-cycle-keys, and |moon-breach
      longer keys
      give correct answers to jael scrys on fake ships
      in jael store subscribers to all ships
      add sponsorship chain keys to %dawn event
      dawn.c: produce full sponsor chain keys
      ph: clean up card structures
      pier.c: add colors for priority printfs
      zuse: make of-wain:format use linear space
      kiln: add autocommit
      dill, helm: add lite boot option with -l
      gall: only print peek bad result if bad
      gall: handle foreign coup success
      hoon: don't nest check in zpmc
      zuse: make of-wain:format use linear space
      clay: answer ~ to %next request if file is deleted
      gall: unsubscribe after breach
      behn: print error on failed %drip

Ted Blackman <ted@tlon.io> (6):
      dill: set verbosity by error tag
      hood: |knob {tag} {level} to set dill verbosity

b <benjamin@tlon.io> (1):
      worker: dup({0,1}) on serf start to prevent accidental use of stdin/stdout.

pilfer-pandex <pilfer-pandex@users.noreply.github.com> (25):
      decapitate crop:ut
      decapitate find:ut, fond:ut
      decapitate fire:ut
      decapitate fish:ut
      decapitate fuse:ut
      decapitate mint:ut
      decapitate mull:ut
      decapitate peek:ut
      decapitate peel:ut
      decapitate play:ut
      dejet repo:ut
      decapitate rest:ut
      decapitate toss:ut
      decapitate wrap:ut
      kill conk:ut jet
      decapitate nest:ut with caching for dext
      fix the %mean nest-fail in nest
      remove unneeded jets, access to q jets
      rm q jets, unneeded molting and cooking
      jets: rm nest (keep dext); find was dead code
      jets: rename ut_find.c -> ut_fond.c

pkova <pyry.kovanen@gmail.com> (5):
      Sort clauses of $fork type pretty-printing
      eyre: add channel \n heartbeat every 20 seconds
      eyre: fix missing cancel-heartbeat-move cases

yosoyubik <yosoyubik@gmail.com> (8):
      hoon: fix for +apt:to (urbit#1778) queue correctness
      hoon: fix for +uno/uni (urbit#1779) set/map union
      tests: unit tests for +differ (diff/merge)
      tests: unit tests for +by (map)
      tests: unit tests for +to (queue)
      tests: unit tests for +in (set)
      hoon: replaces manual +tree cons with explicit %=

v0.9.0.rc-4

Toggle v0.9.0.rc-4's commit message
urbit v0.9.0.rc-4

Release notes:

* Adds the |$ or "barbuc" mold builder rune to Hoon.  This replaces the
  problematic +* arm syntax, which previously meant two different things
  (mold-builders in |%, and aliases in |_).

* Includes a full refactoring of %gall, our agent execution vane, that cleans
  up and de-obfuscates its internals significantly.

* "Decapitates" or removes all compiler jets.

  Historically, a compiler jet (i.e., a jet for an arm of +ut) had two parts: a
  cache, and a reimplementation of the Hoon logic in C.  Now, after going
  through a cache, relevant jets call back to Hoon; jets that never had a cache
  are removed entirely.

  This change takes us significantly closer to two important continuity goals:
  making the Hoon compiler independent of the implementation of our Nock
  runtime, Vere, and also making it upgradeable over-the-air.

* Makes significant improvements to memory management in a number of low-level
  areas (e.g. conversions to and from GMP structs, our murmur32 jet, noun
  equality in u3), as well as in Arvo proper.  Adds explicit memory pressure
  handlers to Arvo and a number of vanes, with the result that all-around
  memory pressure should be significantly reduced.

* Dramatically reduces the time required to write large files to %clay
  (yielding an improvement in excess of 90% in some cases).

* Adds a "lite boot" command-line option, '-l', to Vere.  This boots
  with the only two apps required to run a "real" ship (namely, :dojo and
  the new :azimuth-tracker) and reduces boot time by roughly a factor of a
  third.

* Includes a full rewrite of %jael, our secrets storage vane.  In addition
  to a number of improvements (handling of chain reorganizations, handling of
  moons, slashing total lines of code), this rewrite adds support for
  individual breaches in the case where a ship's sponsor breaches without
  warning.

* Replaces the old chat application, :chat, with a new one that doesn't
  depend on the soon-to-be-deprecated :hall.

* Many other minor improvements and bugfixes.

Full contributions list:

(Note that commit totals below may not match the actual commits summarized as
superfluous or nondescriptive commit descriptions have been omitted.)

BernardoDeLaPlaz <BernardoDeLaPlaz@users.noreply.github.com> (1):
      64-bit noun tests

Brendan Hay <brendan.g.hay@gmail.com> (9):
      Adding nix expressions to build/bake docker images
      Removing -f (fuzz testing) option
      Removing unnecessary call to seed prng for fuzz testing
      Adding conditional gdb/coredump logging for debug images
      Adding -T option to disable terminal/tty assumptions
      Adding terminal guard around tty column/row calculations
      vere: Wrap tank dump priority escape codes with terminal check
      build: Tag container images with git branch/sha build information
      build: Trimming build target from container image tag

David Kerschner <dkerschner@hcoop.net> (13):
      hoon: add ast for |$
      hoon: add parsing rules for |$
      hoon: replace +* name usage with ++  name  |$
      hoon: update tall parsing for |$
      hoon: remove extraneous cast
      hoon: removed unused parser type

Elliot Glaysher <elliot@tlon.io> (2):
      Fix capped queues to not crash when the size is set to 0.

Fang <git@fang.io> (26):
      chat-cli: Support %url and %me message types
      chat-cli: Add debug poke for connecting to store
      chat-cli: Update prompt on-create
      chat-cli: Match store and hook's path handling
      chat-cli: Implement permission management
      chat-cli: Simplify message command type & logic
      chat: Move eval logic into lib
      chat-cli: Subscribe to /updates instead of /all
      chat-cli: Properly support deleting local chats
      chat: Move eval logic out of /lib/chat-json
      drum: Boot with %chat-cli, without %hall & %talk
      chat-cli: Remove prep printf
      chat-hook: Improve reap printf readability
      drum: Ensure dojo prompt on-boot
      keygen: Add ownership-from-ticket function
      claz: Implement batch invites
      claz: Correct & complete comments
      chat-cli: try not to double-bind glyphs
      chat-cli: properly decode double-bound glyphs
      chat-cli: support per-target glyph unbinding
      chat-cli: maintain sane glyph binding state

Isaac Visintainer <isaac.visintainer@gmail.com> (1):
      eyre: changed cookie format

Jared Tobin <jared@jtobin.io> (110):
      zuse: remove superfluous 'scup' and 'culm' types
      gall: clean up +mo-abed, +mo-abet
      gall: clean up +mo-{conf, pass, give, okay}
      gall: clean up +mo-receive-core, +mo-born
      gall: clean up +mo-{boot, away, awed}
      gall: clean up +mo-{bale, ball, come, chew}
      gall: refactor +mo-cyst
      gall: clean up +mo-cook
      gall: clean up +mo-claw, +mo-beak
      gall: clean up +mo-{clip, club, gawk, gawd}
      gall: remove %load from %gall move in %dill
      zuse, gall: simplify +task, fix %conf in %gall
      gall: misc. cleanup of +ap state and arms
      gall: simplify bone/duct map names
      gall: type and non-+mo/+ap arm cleanup
      gall: miscellaneous large-scale cleaning
      helm, drum: remove deprecated %load
      gall: remove %sunk, fix 'ship-state' in %wash case
      gall: remove deprecated 'mak' from 'agents'
      gall: remove slam-related printfs
      zuse, gall, eyre, dojo: deprecate 'cuft'
      zuse, gall, eyre: deprecate 'cush'
      zuse, gall: deprecate 'club'
      gall: add basic test harness
      tests: replace bogus queue in test-qeu

Joe Bryan <joemfb@gmail.com> (63):
      rewrites u3a_take to use the road stack
      term: minor refactoring of write patterns
      term: rewrites spinner, renders on main loop
      arvo, ford: add type safety to scry
      hoon: enable scry in +mule
      noun, worker: write -P profile into pier
      noun: remove extra allocations from u3a_atom->gmp and reverse conversions
      worker: fixes scope issue inside #ifdef U3_EVENT_TIME_DEBUG
      u3: rewrites +muk jet to skip heap allocations where possible
      u3: cleans up xtract.c (mostly style, minor refactoring)
      u3: adds u3r_vmean (explicit varargs list), u3x_mean
      u3: refactors set treap jets (+in)
      u3: refactors disabled set treap jet (+int:in)
      u3: refactors map treap jets (+by)
      u3: refactors disabled map treap jets (+int:by and +uni:by)
      worker: also replaces fd 0/1 so we don't accidentally re-use them
      u3: consistently uses u3k/u3z in hashtable
      u3: fixes up whitespace in hashtable initializations
      u3: refactors u3h_gut internals to more closely match u3h_git
      u3: adds macros for (most) hashtable  shifts and bit-tests
      u3: refactors hashtable allocations
      u3: moves u3_put immediately after internals
      u3: adds u3h_uni hashtable merge
      u3: adds u3h_take/with hashtable road promotion
      u3: adds comments to inner hashtable struct definitions
      u3: separates "take" and "reap" in the bytecode interpreter
      u3: separates "take" and "reap" in the jet dashboard
      u3: refactors _cj_hank_find(), removes u3j_site_copy
      u3: further refactors u3m_love, removes obsolete ordering concerns
      u3: removes u3rz_sing in favor of the pre-existing u3r_sing_c
      u3: minor refactoring of u3r_sing traversals
      u3: refactors unifying equality unification
      u3: unifies unifying equality (removes u3r_sang/u3r_sung)
      u3: removes obsolete u3h_gut()
      u3: fixes road leap/fall debug printfs
      u3: moves unification into u3a_wed()
      u3: adds and refines unifying-equality comments
      u3: cleans up whitespace, removes dead code in allocator
      u3: adds and uses u3a_full/heap/temp road macros
      u3: factors out u3a_idle() to measure free-lists in a road
      u3: refactors periodic memory reclamation
      u3: tweaks |mass output (and fixes inadvertent truncation)
      u3: adds %trim memory-pressure notification "effect"
      u3: wires up the %trim event in the daemon
      arvo: wires up %trim memory-pressure event stubs
      u3: refactors memoization patterns for safer rc
      ford: clear caches in response to memory pressure
      eyre: close channels in response to memory pressure
      gall: clear caches in response to memory pressure
      arvo: clear caches in response to (high) memory pressure
      removes obsolete cli args for eth snapshots (-C and -E)
      vere: removes unimplemented cli args -b and -V
      vere: implements -x (exit immediately after boot)
      vere: adds comments noting possible -a/-d requirements
      vere: handle error when opening pier lockfile
      vere: uses c3_sync macro instead of inline platform checks
      vere: checks on boot that we have write permissions for $pier
      ames: skip timers if unix duct is unset

John Franklin <jfranklin9000@gmail.com> (2):
      make udon inline code match block code and enable inline code gaps in Publish app
      modify udon parser to preserve gaps in inline code blocks

Liam Fitzgerald <liam.fitz@protonmail.com> (4):
      zuse: added CDATA support to de-xml:html
      zuse: fix comment parsing in de-xml:html
      zuse: add en-xml:html and de-xml:html tests

Logan Allen <loganallc@gmail.com> (27):
      hood: remove hall dependency.
      zuse: added path, tank, string utils to en/dejs
      apps: added group/permission stores, hooks, marks
      hood: start up groups and permissions
      app: Added chat store, hook, marks, and view.
      chat: added new JS files, deleted old chat.hoon
      hood: added chat-store, hook, and view to startup
      chat-hook: updated to allow a simpler message send flow
      apps: updated style and added moon support
      marks: moved hook action marks
      chat: added old @ messages, now called %me messages
      chat: changed wire format and quitting subscription properly on ban
      chat: style fixes, removed some redirect bugs from chat
      chat: /primary path provides truncated initial as well as updates
      chat: fixed eval function to disable scry
      chat: remove poke-noun arms
      js: Improved join UI and added support for paths with multiple elements

Philip Monk <phil@pcmonk.me> (58):
      specialize azimuth-tracker to sets of ships
      listen to eth node for sponsor
      migrate ames to kale
      %breach-hi works with kale
      %breach-sync works with kale
      simplify kale/azimuth-tracker subscription semantics
      change preboot stuff to include rift
      implement kale hierarchy
      only blockchain is real
      add test for sudden breaches
      add moon handling to kale
      add keys to sponsor in preboot validation
      fix +moon
      fix full moon-az test
      kale -> jael
      remove snapshot scaffolding
      add rekey to jael
      add |moon, |moon-cycle-keys, and |moon-breach
      longer keys
      give correct answers to jael scrys on fake ships
      in jael store subscribers to all ships
      add sponsorship chain keys to %dawn event
      dawn.c: produce full sponsor chain keys
      ph: clean up card structures
      pier.c: add colors for priority printfs
      zuse: make of-wain:format use linear space
      kiln: add autocommit
      dill, helm: add lite boot option with -l
      gall: only print peek bad result if bad
      gall: handle foreign coup success
      hoon: don't nest check in zpmc
      zuse: make of-wain:format use linear space
      clay: answer ~ to %next request if file is deleted
      gall: unsubscribe after breach
      behn: print error on failed %drip

Ted Blackman <ted@tlon.io> (6):
      dill: set verbosity by error tag
      hood: |knob {tag} {level} to set dill verbosity

b <benjamin@tlon.io> (1):
      worker: dup({0,1}) on serf start to prevent accidental use of stdin/stdout.

pilfer-pandex <pilfer-pandex@users.noreply.github.com> (25):
      decapitate crop:ut
      decapitate find:ut, fond:ut
      decapitate fire:ut
      decapitate fish:ut
      decapitate fuse:ut
      decapitate mint:ut
      decapitate mull:ut
      decapitate peek:ut
      decapitate peel:ut
      decapitate play:ut
      dejet repo:ut
      decapitate rest:ut
      decapitate toss:ut
      decapitate wrap:ut
      kill conk:ut jet
      decapitate nest:ut with caching for dext
      fix the %mean nest-fail in nest
      remove unneeded jets, access to q jets
      rm q jets, unneeded molting and cooking
      jets: rm nest (keep dext); find was dead code
      jets: rename ut_find.c -> ut_fond.c

pkova <pyry.kovanen@gmail.com> (5):
      Sort clauses of $fork type pretty-printing
      eyre: add channel \n heartbeat every 20 seconds
      eyre: fix missing cancel-heartbeat-move cases

yosoyubik <yosoyubik@gmail.com> (8):
      hoon: fix for +apt:to (urbit#1778) queue correctness
      hoon: fix for +uno/uni (urbit#1779) set/map union
      tests: unit tests for +differ (diff/merge)
      tests: unit tests for +by (map)
      tests: unit tests for +to (queue)
      tests: unit tests for +in (set)
      hoon: replaces manual +tree cons with explicit %=

v0.9.0.rc-3

Toggle v0.9.0.rc-3's commit message
urbit v0.9.0.rc-3

Release notes:

* Adds the |$ or "barbuc" mold builder rune to Hoon.  This replaces the
  previous +* arm syntax, which meant two different things: mold-builders in
  |%, and aliases in |_.

* Includes a full refactoring of %gall, our agent execution vane, that cleans
  up (and de-obfuscates) its internals significantly.

* "Decapitates" or removes all compiler jets.

  Historically, a compiler jet (i.e., a jet for an arm of +ut) had two parts: a
  cache, and a reimplementation of the Hoon logic in C.  Now, after going
  through a cache, relevant jets call back to Hoon; jets that never had a cache
  are removed entirely.

  This change takes us significantly closer to two important continuity goals:
  making the Hoon compiler independent of the implementation of our Nock
  runtime, Vere, and also making it upgradeable over-the-air.

* Makes significant improvements to memory management in a number of low-level
  areas (e.g. conversions to and from GMP structs, our murmur32 jet, noun
  equality in u3), as well as in Arvo proper.  Adds explicit memory pressure
  handlers to Arvo and a number of vanes, with the result that all-around
  memory pressure should be significantly reduced.

* Dramatically reduces the time required to write large files to %clay
  (yielding an improvement in excess of 90% in some cases).

* Adds a "lite boot" command-line option, '-l', to Vere.  This boots
  with the only two apps required to run a "real" ship (namely, :dojo and
  the new :azimuth-tracker) and reduces boot time by roughly a factor of a
  third.

* Includes a full rewrite of %jael, our secrets storage vane.  In addition
  to a number of improvements (handling of chain reorganizations, handling of
  moons, slashing total lines of code), this rewrite adds support for
  individual breaches in the case where a ship's sponsor breaches without
  warning.

* Replaces the old chat application, :chat, with a new one that doesn't
  depend on the soon-to-be-deprecated :hall.

* Many other minor improvements and bugfixes.

Full contributions list:

(Note that commit totals below may not match the actual commits summarized as
superfluous or nondescriptive commits have been edited out.)

BernardoDeLaPlaz <BernardoDeLaPlaz@users.noreply.github.com> (1):
      64-bit noun tests

Brendan Hay <brendan.g.hay@gmail.com> (9):
      Adding nix expressions to build/bake docker images
      Removing -f (fuzz testing) option
      Removing unnecessary call to seed prng for fuzz testing
      Adding conditional gdb/coredump logging for debug images
      Adding -T option to disable terminal/tty assumptions
      Adding terminal guard around tty column/row calculations
      vere: Wrap tank dump priority escape codes with terminal check
      build: Tag container images with git branch/sha build information
      build: Trimming build target from container image tag

David Kerschner <dkerschner@hcoop.net> (13):
      hoon: add ast for |$
      hoon: add parsing rules for |$
      hoon: replace +* name usage with ++  name  |$
      hoon: update tall parsing for |$
      hoon: remove extraneous cast
      hoon: removed unused parser type

Elliot Glaysher <elliot@tlon.io> (2):
      Fix capped queues to not crash when the size is set to 0.

Fang <git@fang.io> (21):
      chat-cli: Support %url and %me message types
      chat-cli: Add debug poke for connecting to store
      chat-cli: Update prompt on-create
      chat-cli: Match store and hook's path handling
      chat-cli: Implement permission management
      chat-cli: Simplify message command type & logic
      chat: Move eval logic into lib
      chat-cli: Subscribe to /updates instead of /all
      chat-cli: Properly support deleting local chats
      chat: Move eval logic out of /lib/chat-json
      drum: Boot with %chat-cli, without %hall & %talk
      chat-cli: Remove prep printf
      chat-hook: Improve reap printf readability
      drum: Ensure dojo prompt on-boot
      keygen: Add ownership-from-ticket function
      claz: Implement batch invites

Isaac Visintainer <isaac.visintainer@gmail.com> (1):
      eyre: changed cookie format

Jared Tobin <jared@jtobin.io> (110):
      zuse: remove superfluous 'scup' and 'culm' types
      gall: clean up +mo-abed, +mo-abet
      gall: clean up +mo-{conf, pass, give, okay}
      gall: clean up +mo-receive-core, +mo-born
      gall: clean up +mo-{boot, away, awed}
      gall: clean up +mo-{bale, ball, come, chew}
      gall: refactor +mo-cyst
      gall: clean up +mo-cook
      gall: clean up +mo-claw, +mo-beak
      gall: clean up +mo-{clip, club, gawk, gawd}
      gall: remove %load from %gall move in %dill
      zuse, gall: simplify +task, fix %conf in %gall
      gall: misc. cleanup of +ap state and arms
      gall: simplify bone/duct map names
      gall: type and non-+mo/+ap arm cleanup
      gall: miscellaneous large-scale cleaning
      helm, drum: remove deprecated %load
      gall: remove %sunk, fix 'ship-state' in %wash case
      gall: remove deprecated 'mak' from 'agents'
      gall: remove slam-related printfs
      zuse, gall, eyre, dojo: deprecate 'cuft'
      zuse, gall, eyre: deprecate 'cush'
      zuse, gall: deprecate 'club'
      gall: add basic test harness
      tests: replace bogus queue in test-qeu

Joe Bryan <joemfb@gmail.com> (62):
      rewrites u3a_take to use the road stack
      term: minor refactoring of write patterns
      term: rewrites spinner, renders on main loop
      arvo, ford: add type safety to scry
      hoon: enable scry in +mule
      noun, worker: write -P profile into pier
      noun: remove extra allocations from u3a_atom->gmp and reverse conversions
      worker: fixes scope issue inside #ifdef U3_EVENT_TIME_DEBUG
      u3: rewrites +muk jet to skip heap allocations where possible
      u3: cleans up xtract.c (mostly style, minor refactoring)
      u3: adds u3r_vmean (explicit varargs list), u3x_mean
      u3: refactors set treap jets (+in)
      u3: refactors disabled set treap jet (+int:in)
      u3: refactors map treap jets (+by)
      u3: refactors disabled map treap jets (+int:by and +uni:by)
      worker: also replaces fd 0/1 so we don't accidentally re-use them
      u3: consistently uses u3k/u3z in hashtable
      u3: fixes up whitespace in hashtable initializations
      u3: refactors u3h_gut internals to more closely match u3h_git
      u3: adds macros for (most) hashtable  shifts and bit-tests
      u3: refactors hashtable allocations
      u3: moves u3_put immediately after internals
      u3: adds u3h_uni hashtable merge
      u3: adds u3h_take/with hashtable road promotion
      u3: adds comments to inner hashtable struct definitions
      u3: separates "take" and "reap" in the bytecode interpreter
      u3: separates "take" and "reap" in the jet dashboard
      u3: refactors _cj_hank_find(), removes u3j_site_copy
      u3: further refactors u3m_love, removes obsolete ordering concerns
      u3: removes u3rz_sing in favor of the pre-existing u3r_sing_c
      u3: minor refactoring of u3r_sing traversals
      u3: refactors unifying equality unification
      u3: unifies unifying equality (removes u3r_sang/u3r_sung)
      u3: removes obsolete u3h_gut()
      u3: fixes road leap/fall debug printfs
      u3: moves unification into u3a_wed()
      u3: adds and refines unifying-equality comments
      u3: cleans up whitespace, removes dead code in allocator
      u3: adds and uses u3a_full/heap/temp road macros
      u3: factors out u3a_idle() to measure free-lists in a road
      u3: refactors periodic memory reclamation
      u3: tweaks |mass output (and fixes inadvertent truncation)
      u3: adds %trim memory-pressure notification "effect"
      u3: wires up the %trim event in the daemon
      arvo: wires up %trim memory-pressure event stubs
      u3: refactors memoization patterns for safer rc
      ford: clear caches in response to memory pressure
      eyre: close channels in response to memory pressure
      gall: clear caches in response to memory pressure
      arvo: clear caches in response to (high) memory pressure
      removes obsolete cli args for eth snapshots (-C and -E)
      vere: removes unimplemented cli args -b and -V
      vere: implements -x (exit immediately after boot)
      vere: adds comments noting possible -a/-d requirements
      vere: handle error when opening pier lockfile
      vere: uses c3_sync macro instead of inline platform checks
      vere: checks on boot that we have write permissions for $pier

John Franklin <jfranklin9000@gmail.com> (2):
      make udon inline code match block code and enable inline code gaps in Publish app
      modify udon parser to preserve gaps in inline code blocks

Liam Fitzgerald <liam.fitz@protonmail.com> (4):
      zuse: added CDATA support to de-xml:html
      zuse: fix comment parsing in de-xml:html
      zuse: add en-xml:html and de-xml:html tests

Logan Allen <loganallc@gmail.com> (26):
      hood: remove hall dependency.
      zuse: added path, tank, string utils to en/dejs
      apps: added group/permission stores, hooks, marks
      hood: start up groups and permissions
      app: Added chat store, hook, marks, and view.
      chat: added new JS files, deleted old chat.hoon
      hood: added chat-store, hook, and view to startup
      chat-hook: updated to allow a simpler message send flow
      apps: updated style and added moon support
      marks: moved hook action marks
      chat: added old @ messages, now called %me messages
      chat: changed wire format and quitting subscription properly on ban
      chat: style fixes, removed some redirect bugs from chat
      chat: /primary path provides truncated initial as well as updates
      chat: fixed eval function to disable scry
      chat: remove poke-noun arms

Philip Monk <phil@pcmonk.me> (58):
      specialize azimuth-tracker to sets of ships
      listen to eth node for sponsor
      migrate ames to kale
      %breach-hi works with kale
      %breach-sync works with kale
      simplify kale/azimuth-tracker subscription semantics
      change preboot stuff to include rift
      implement kale hierarchy
      only blockchain is real
      add test for sudden breaches
      add moon handling to kale
      add keys to sponsor in preboot validation
      fix +moon
      fix full moon-az test
      kale -> jael
      remove snapshot scaffolding
      add rekey to jael
      add |moon, |moon-cycle-keys, and |moon-breach
      longer keys
      give correct answers to jael scrys on fake ships
      in jael store subscribers to all ships
      add sponsorship chain keys to %dawn event
      dawn.c: produce full sponsor chain keys
      ph: clean up card structures
      pier.c: add colors for priority printfs
      zuse: make of-wain:format use linear space
      kiln: add autocommit
      dill, helm: add lite boot option with -l
      gall: only print peek bad result if bad
      gall: handle foreign coup success
      hoon: don't nest check in zpmc
      zuse: make of-wain:format use linear space
      clay: answer ~ to %next request if file is deleted
      gall: unsubscribe after breach
      behn: print error on failed %drip

Ted Blackman <ted@tlon.io> (6):
      dill: set verbosity by error tag
      hood: |knob {tag} {level} to set dill verbosity

b <benjamin@tlon.io> (1):
      worker: dup({0,1}) on serf start to prevent accidental use of stdin/stdout.

pilfer-pandex <pilfer-pandex@users.noreply.github.com> (25):
      decapitate crop:ut
      decapitate find:ut, fond:ut
      decapitate fire:ut
      decapitate fish:ut
      decapitate fuse:ut
      decapitate mint:ut
      decapitate mull:ut
      decapitate peek:ut
      decapitate peel:ut
      decapitate play:ut
      dejet repo:ut
      decapitate rest:ut
      decapitate toss:ut
      decapitate wrap:ut
      kill conk:ut jet
      decapitate nest:ut with caching for dext
      fix the %mean nest-fail in nest
      remove unneeded jets, access to q jets
      rm q jets, unneeded molting and cooking
      jets: rm nest (keep dext); find was dead code
      jets: rename ut_find.c -> ut_fond.c

pkova <pyry.kovanen@gmail.com> (4):
      Sort clauses of $fork type pretty-printing
      eyre: add channel \n heartbeat every 20 seconds

yosoyubik <yosoyubik@gmail.com> (8):
      hoon: fix for +apt:to (urbit#1778) queue correctness
      hoon: fix for +uno/uni (urbit#1779) set/map union
      tests: unit tests for +differ (diff/merge)
      tests: unit tests for +by (map)
      tests: unit tests for +to (queue)
      tests: unit tests for +in (set)
      hoon: replaces manual +tree cons with explicit %=

v0.9.0.rc-2

Toggle v0.9.0.rc-2's commit message
urbit v0.9.0.rc-2

Release notes:

* Adds the |$ or "barbuc" mold builder rune to Hoon.  This replaces the
  previous +* arm syntax, which meant two different things: mold-builders in
  |%, and aliases in |_.

* Includes a full refactoring of %gall, our agent execution vane, that cleans
  up (and de-obfuscates) its internals significantly.

* "Decapitates" or removes all compiler jets.

  Historically, a compiler jet (i.e., a jet for an arm of +ut) had two parts: a
  cache, and a reimplementation of the Hoon logic in C.  Now, after going
  through a cache, relevant jets call back to Hoon; jets that never had a cache
  are removed entirely.

  This change takes us significantly closer to two important continuity goals:
  making the Hoon compiler independent of the implementation of our Nock
  runtime, Vere, and also making it upgradeable over-the-air.

* Makes significant improvements to memory management in a number of low-level
  areas (e.g. conversions to and from GMP structs, our murmur32 jet, noun
  equality in u3), as well as in Arvo proper.  Adds explicit memory pressure
  handlers to Arvo and a number of vanes, with the result that all-around
  memory pressure should be significantly reduced.

* Dramatically reduces the time required to write large files to %clay
  (yielding an improvement in excess of 90% in some cases).

* Adds a "lite boot" command-line option, '-l', to Vere.  This boots
  with the only two apps required to run a "real" ship (namely, :dojo and
  the new :azimuth-tracker) and reduces boot time by roughly a factor of a
  third.

* Includes a full rewrite of %jael, our secrets storage vane.  In addition
  to a number of improvements (handling of chain reorganizations, handling of
  moons, slashing total lines of code), this rewrite adds support for
  individual breaches in the case where a ship's sponsor breaches without
  warning.

* Replaces the old chat application, :chat, with a new one that doesn't
  depend on the soon-to-be-deprecated :hall.

* Many other minor improvements and bugfixes.

Full contributions list:

(Note that commit totals below may not match the actual commits summarized as
superfluous or nondescriptive commits have been edited out.)

BernardoDeLaPlaz <BernardoDeLaPlaz@users.noreply.github.com> (1):
      64-bit noun tests

Brendan Hay <brendan.g.hay@gmail.com> (9):
      Adding nix expressions to build/bake docker images
      Removing -f (fuzz testing) option
      Removing unnecessary call to seed prng for fuzz testing
      Adding conditional gdb/coredump logging for debug images
      Adding -T option to disable terminal/tty assumptions
      Adding terminal guard around tty column/row calculations
      vere: Wrap tank dump priority escape codes with terminal check
      build: Tag container images with git branch/sha build information
      build: Trimming build target from container image tag

David Kerschner <dkerschner@hcoop.net> (13):
      hoon: add ast for |$
      hoon: add parsing rules for |$
      hoon: replace +* name usage with ++  name  |$
      hoon: update tall parsing for |$
      hoon: remove extraneous cast
      hoon: removed unused parser type

Elliot Glaysher <elliot@tlon.io> (2):
      Fix capped queues to not crash when the size is set to 0.

Fang <git@fang.io> (16):
      chat-cli: Support %url and %me message types
      chat-cli: Add debug poke for connecting to store
      chat-cli: Update prompt on-create
      chat-cli: Match store and hook's path handling
      chat-cli: Implement permission management
      chat-cli: Simplify message command type & logic
      chat: Move eval logic into lib
      chat-cli: Subscribe to /updates instead of /all
      chat-cli: Properly support deleting local chats
      chat: Move eval logic out of /lib/chat-json
      drum: Boot with %chat-cli, without %hall & %talk

Isaac Visintainer <isaac.visintainer@gmail.com> (1):
      eyre: changed cookie format

Jared Tobin <jared@jtobin.io> (107):
      zuse: remove superfluous 'scup' and 'culm' types
      gall: clean up +mo-abed, +mo-abet
      gall: clean up +mo-{conf, pass, give, okay}
      gall: clean up +mo-receive-core, +mo-born
      gall: clean up +mo-{boot, away, awed}
      gall: clean up +mo-{bale, ball, come, chew}
      gall: refactor +mo-cyst
      gall: clean up +mo-cook
      gall: clean up +mo-claw, +mo-beak
      gall: clean up +mo-{clip, club, gawk, gawd}
      gall: remove %load from %gall move in %dill
      zuse, gall: simplify +task, fix %conf in %gall
      gall: misc. cleanup of +ap state and arms
      gall: simplify bone/duct map names
      gall: type and non-+mo/+ap arm cleanup
      gall: miscellaneous large-scale cleaning
      helm, drum: remove deprecated %load
      gall: remove %sunk, fix 'ship-state' in %wash case
      gall: remove deprecated 'mak' from 'agents'
      gall: remove slam-related printfs
      zuse, gall, eyre, dojo: deprecate 'cuft'
      zuse, gall, eyre: deprecate 'cush'
      zuse, gall: deprecate 'club'
      gall: add basic test harness

Joe Bryan <joemfb@gmail.com> (62):
      rewrites u3a_take to use the road stack
      term: minor refactoring of write patterns
      term: rewrites spinner, renders on main loop
      arvo, ford: add type safety to scry
      hoon: enable scry in +mule
      noun, worker: write -P profile into pier
      noun: remove extra allocations from u3a_atom->gmp and reverse conversions
      worker: fixes scope issue inside #ifdef U3_EVENT_TIME_DEBUG
      u3: rewrites +muk jet to skip heap allocations where possible
      u3: cleans up xtract.c (mostly style, minor refactoring)
      u3: adds u3r_vmean (explicit varargs list), u3x_mean
      u3: refactors set treap jets (+in)
      u3: refactors disabled set treap jet (+int:in)
      u3: refactors map treap jets (+by)
      u3: refactors disabled map treap jets (+int:by and +uni:by)
      worker: also replaces fd 0/1 so we don't accidentally re-use them
      u3: consistently uses u3k/u3z in hashtable
      u3: fixes up whitespace in hashtable initializations
      u3: refactors u3h_gut internals to more closely match u3h_git
      u3: adds macros for (most) hashtable  shifts and bit-tests
      u3: refactors hashtable allocations
      u3: moves u3_put immediately after internals
      u3: adds u3h_uni hashtable merge
      u3: adds u3h_take/with hashtable road promotion
      u3: adds comments to inner hashtable struct definitions
      u3: separates "take" and "reap" in the bytecode interpreter
      u3: separates "take" and "reap" in the jet dashboard
      u3: refactors _cj_hank_find(), removes u3j_site_copy
      u3: further refactors u3m_love, removes obsolete ordering concerns
      u3: removes u3rz_sing in favor of the pre-existing u3r_sing_c
      u3: minor refactoring of u3r_sing traversals
      u3: refactors unifying equality unification
      u3: unifies unifying equality (removes u3r_sang/u3r_sung)
      u3: removes obsolete u3h_gut()
      u3: fixes road leap/fall debug printfs
      u3: moves unification into u3a_wed()
      u3: adds and refines unifying-equality comments
      u3: cleans up whitespace, removes dead code in allocator
      u3: adds and uses u3a_full/heap/temp road macros
      u3: factors out u3a_idle() to measure free-lists in a road
      u3: refactors periodic memory reclamation
      u3: tweaks |mass output (and fixes inadvertent truncation)
      u3: adds %trim memory-pressure notification "effect"
      u3: wires up the %trim event in the daemon
      arvo: wires up %trim memory-pressure event stubs
      u3: refactors memoization patterns for safer rc
      ford: clear caches in response to memory pressure
      eyre: close channels in response to memory pressure
      gall: clear caches in response to memory pressure
      arvo: clear caches in response to (high) memory pressure
      removes obsolete cli args for eth snapshots (-C and -E)
      vere: removes unimplemented cli args -b and -V
      vere: implements -x (exit immediately after boot)
      vere: adds comments noting possible -a/-d requirements
      vere: handle error when opening pier lockfile
      vere: uses c3_sync macro instead of inline platform checks
      vere: checks on boot that we have write permissions for $pier

John Franklin <jfranklin9000@gmail.com> (2):
      make udon inline code match block code and enable inline code gaps in Publish app
      modify udon parser to preserve gaps in inline code blocks

Liam Fitzgerald <liam.fitz@protonmail.com> (4):
      zuse: added CDATA support to de-xml:html
      zuse: fix comment parsing in de-xml:html
      zuse: add en-xml:html and de-xml:html tests

Logan Allen <loganallc@gmail.com> (26):
      hood: remove hall dependency.
      zuse: added path, tank, string utils to en/dejs
      apps: added group/permission stores, hooks, marks
      hood: start up groups and permissions
      app: Added chat store, hook, marks, and view.
      chat: added new JS files, deleted old chat.hoon
      hood: added chat-store, hook, and view to startup
      chat-hook: updated to allow a simpler message send flow
      apps: updated style and added moon support
      marks: moved hook action marks
      chat: added old @ messages, now called %me messages
      chat: changed wire format and quitting subscription properly on ban
      chat: style fixes, removed some redirect bugs from chat
      chat: /primary path provides truncated initial as well as updates
      chat: fixed eval function to disable scry
      chat: remove poke-noun arms

Philip Monk <phil@pcmonk.me> (58):
      specialize azimuth-tracker to sets of ships
      listen to eth node for sponsor
      migrate ames to kale
      %breach-hi works with kale
      %breach-sync works with kale
      simplify kale/azimuth-tracker subscription semantics
      change preboot stuff to include rift
      implement kale hierarchy
      only blockchain is real
      add test for sudden breaches
      add moon handling to kale
      add keys to sponsor in preboot validation
      fix +moon
      fix full moon-az test
      kale -> jael
      remove snapshot scaffolding
      add rekey to jael
      add |moon, |moon-cycle-keys, and |moon-breach
      longer keys
      give correct answers to jael scrys on fake ships
      in jael store subscribers to all ships
      add sponsorship chain keys to %dawn event
      dawn.c: produce full sponsor chain keys
      ph: clean up card structures
      pier.c: add colors for priority printfs
      zuse: make of-wain:format use linear space
      kiln: add autocommit
      dill, helm: add lite boot option with -l
      gall: only print peek bad result if bad
      gall: handle foreign coup success
      hoon: don't nest check in zpmc
      zuse: make of-wain:format use linear space
      clay: answer ~ to %next request if file is deleted
      gall: unsubscribe after breach
      behn: print error on failed %drip

Ted Blackman <ted@tlon.io> (6):
      dill: set verbosity by error tag
      hood: |knob {tag} {level} to set dill verbosity

b <benjamin@tlon.io> (1):
      worker: dup({0,1}) on serf start to prevent accidental use of stdin/stdout.

pilfer-pandex <pilfer-pandex@users.noreply.github.com> (25):
      decapitate crop:ut
      decapitate find:ut, fond:ut
      decapitate fire:ut
      decapitate fish:ut
      decapitate fuse:ut
      decapitate mint:ut
      decapitate mull:ut
      decapitate peek:ut
      decapitate peel:ut
      decapitate play:ut
      dejet repo:ut
      decapitate rest:ut
      decapitate toss:ut
      decapitate wrap:ut
      kill conk:ut jet
      decapitate nest:ut with caching for dext
      fix the %mean nest-fail in nest
      remove unneeded jets, access to q jets
      rm q jets, unneeded molting and cooking
      jets: rm nest (keep dext); find was dead code
      jets: rename ut_find.c -> ut_fond.c

pkova <pyry.kovanen@gmail.com> (4):
      Sort clauses of $fork type pretty-printing
      eyre: add channel \n heartbeat every 20 seconds

v0.9.0.rc-1

Toggle v0.9.0.rc-1's commit message
urbit v0.9.0.rc-1

Release notes:

* Adds the |$ or "barbuc" mold builder rune to Hoon.  This replaces the
  previous +* arm syntax, which meant two different things: mold-builders in
  |%, and aliases in |_.

* Includes a full refactoring of %gall, our agent execution vane, that cleans
  up (and de-obfuscates) its internals significantly.

* "Decapitates" or removes all compiler jets.

  Historically, a compiler jet (i.e., a jet for an arm of +ut) had two parts: a
  cache, and a reimplementation of the Hoon logic in C.  Now, after going
  through a cache, relevant jets call back to Hoon; jets that never had a cache
  are removed entirely.

  This change takes us significantly closer to two important continuity goals:
  making the Hoon compiler independent of the implementation of our Nock
  runtime, Vere, and also making it upgradeable over-the-air.

* Makes significant improvements to memory management in a number of low-level
  areas (e.g. conversions to and from GMP structs, our murmur32 jet, noun
  equality in u3), as well as in Arvo proper.  Adds explicit memory pressure
  handlers to Arvo and a number of vanes, with the result that all-around
  memory pressure should be significantly reduced.

* Dramatically reduces the time required to write large files to %clay
  (yielding an improvement in excess of 90% in some cases).

* Adds a "lite boot" command-line option, '-l', to Vere.  This boots
  with the only two apps required to run a "real" ship (namely, :dojo and
  the new :azimuth-tracker) and reduces boot time by roughly a factor of a
  third.

* Includes a full rewrite of %jael, our secrets storage vane.  In addition
  to a number of improvements (handling of chain reorganizations, handling of
  moons, slashing total lines of code), this rewrite adds support for
  individual breaches in the case where a ship's sponsor breaches without
  warning.

* Many other minor improvements and bugfixes.

Full contributions list:

(Note that commit totals below may not match the actual commits summarized as
superfluous or nondescriptive commits have been edited out.)

BernardoDeLaPlaz <BernardoDeLaPlaz@users.noreply.github.com> (1):
      64-bit noun tests

Brendan Hay <brendan.g.hay@gmail.com> (9):
      Adding nix expressions to build/bake docker images
      Removing -f (fuzz testing) option
      Removing unnecessary call to seed prng for fuzz testing
      Adding conditional gdb/coredump logging for debug images
      Adding -T option to disable terminal/tty assumptions
      Adding terminal guard around tty column/row calculations
      vere: Wrap tank dump priority escape codes with terminal check
      build: Tag container images with git branch/sha build information
      build: Trimming build target from container image tag

David Kerschner <dkerschner@hcoop.net> (13):
      hoon: add ast for |$
      hoon: add parsing rules for |$
      hoon: replace +* name usage with ++  name  |$
      hoon: update tall parsing for |$
      hoon: remove extraneous cast
      hoon: removed unused parser type

Elliot Glaysher <elliot@tlon.io> (2):
      Fix capped queues to not crash when the size is set to 0.

Isaac Visintainer <isaac.visintainer@gmail.com> (1):
      eyre: changed cookie format

Jared Tobin <jared@jtobin.io> (107):
      zuse: remove superfluous 'scup' and 'culm' types
      gall: clean up +mo-abed, +mo-abet
      gall: clean up +mo-{conf, pass, give, okay}
      gall: clean up +mo-receive-core, +mo-born
      gall: clean up +mo-{boot, away, awed}
      gall: clean up +mo-{bale, ball, come, chew}
      gall: refactor +mo-cyst
      gall: clean up +mo-cook
      gall: clean up +mo-claw, +mo-beak
      gall: clean up +mo-{clip, club, gawk, gawd}
      gall: remove %load from %gall move in %dill
      zuse, gall: simplify +task, fix %conf in %gall
      gall: misc. cleanup of +ap state and arms
      gall: simplify bone/duct map names
      gall: type and non-+mo/+ap arm cleanup
      gall: miscellaneous large-scale cleaning
      helm, drum: remove deprecated %load
      gall: remove %sunk, fix 'ship-state' in %wash case
      gall: remove deprecated 'mak' from 'agents'
      gall: remove slam-related printfs
      zuse, gall, eyre, dojo: deprecate 'cuft'
      zuse, gall, eyre: deprecate 'cush'
      zuse, gall: deprecate 'club'
      gall: add basic test harness

Joe Bryan <joemfb@gmail.com> (56):
      rewrites u3a_take to use the road stack
      term: minor refactoring of write patterns
      term: rewrites spinner, renders on main loop
      arvo, ford: add type safety to scry
      hoon: enable scry in +mule
      noun, worker: write -P profile into pier
      noun: remove extra allocations from u3a_atom->gmp and reverse conversions
      worker: fixes scope issue inside #ifdef U3_EVENT_TIME_DEBUG
      u3: rewrites +muk jet to skip heap allocations where possible
      u3: cleans up xtract.c (mostly style, minor refactoring)
      u3: adds u3r_vmean (explicit varargs list), u3x_mean
      u3: refactors set treap jets (+in)
      u3: refactors disabled set treap jet (+int:in)
      u3: refactors map treap jets (+by)
      u3: refactors disabled map treap jets (+int:by and +uni:by)
      worker: also replaces fd 0/1 so we don't accidentally re-use them
      u3: consistently uses u3k/u3z in hashtable
      u3: fixes up whitespace in hashtable initializations
      u3: refactors u3h_gut internals to more closely match u3h_git
      u3: adds macros for (most) hashtable  shifts and bit-tests
      u3: refactors hashtable allocations
      u3: moves u3_put immediately after internals
      u3: adds u3h_uni hashtable merge
      u3: adds u3h_take/with hashtable road promotion
      u3: adds comments to inner hashtable struct definitions
      u3: separates "take" and "reap" in the bytecode interpreter
      u3: separates "take" and "reap" in the jet dashboard
      u3: refactors _cj_hank_find(), removes u3j_site_copy
      u3: further refactors u3m_love, removes obsolete ordering concerns
      u3: removes u3rz_sing in favor of the pre-existing u3r_sing_c
      u3: minor refactoring of u3r_sing traversals
      u3: refactors unifying equality unification
      u3: unifies unifying equality (removes u3r_sang/u3r_sung)
      u3: removes obsolete u3h_gut()
      u3: fixes road leap/fall debug printfs
      u3: moves unification into u3a_wed()
      u3: adds and refines unifying-equality comments
      u3: cleans up whitespace, removes dead code in allocator
      u3: adds and uses u3a_full/heap/temp road macros
      u3: factors out u3a_idle() to measure free-lists in a road
      u3: refactors periodic memory reclamation
      u3: tweaks |mass output (and fixes inadvertent truncation)
      u3: adds %trim memory-pressure notification "effect"
      u3: wires up the %trim event in the daemon
      arvo: wires up %trim memory-pressure event stubs
      u3: refactors memoization patterns for safer rc
      ford: clear caches in response to memory pressure
      eyre: close channels in response to memory pressure
      gall: clear caches in response to memory pressure
      arvo: clear caches in response to (high) memory pressure
      removes obsolete cli args for eth snapshots (-C and -E)

John Franklin <jfranklin9000@gmail.com> (2):
      make udon inline code match block code and enable inline code gaps in Publish app
      modify udon parser to preserve gaps in inline code blocks

Liam Fitzgerald <liam.fitz@protonmail.com> (4):
      zuse: added CDATA support to de-xml:html
      zuse: fix comment parsing in de-xml:html
      zuse: add en-xml:html and de-xml:html tests

Logan Allen <loganallc@gmail.com> (11):
      hood: remove hall dependency.
      zuse: added path, tank, string utils to en/dejs
      apps: added group/permission stores, hooks, marks
      hood: start up groups and permissions

Philip Monk <phil@pcmonk.me> (58):
      specialize azimuth-tracker to sets of ships
      listen to eth node for sponsor
      migrate ames to kale
      %breach-hi works with kale
      %breach-sync works with kale
      simplify kale/azimuth-tracker subscription semantics
      change preboot stuff to include rift
      implement kale hierarchy
      only blockchain is real
      add test for sudden breaches
      add moon handling to kale
      add keys to sponsor in preboot validation
      fix +moon
      fix full moon-az test
      kale -> jael
      remove snapshot scaffolding
      add rekey to jael
      add |moon, |moon-cycle-keys, and |moon-breach
      longer keys
      give correct answers to jael scrys on fake ships
      in jael store subscribers to all ships
      add sponsorship chain keys to %dawn event
      dawn.c: produce full sponsor chain keys
      ph: clean up card structures
      pier.c: add colors for priority printfs
      zuse: make of-wain:format use linear space
      kiln: add autocommit
      dill, helm: add lite boot option with -l
      gall: only print peek bad result if bad
      gall: handle foreign coup success
      hoon: don't nest check in zpmc
      zuse: make of-wain:format use linear space
      clay: answer ~ to %next request if file is deleted
      gall: unsubscribe after breach
      behn: print error on failed %drip

Ted Blackman <ted@tlon.io> (6):
      dill: set verbosity by error tag
      hood: |knob {tag} {level} to set dill verbosity

b <benjamin@tlon.io> (1):
      worker: dup({0,1}) on serf start to prevent accidental use of stdin/stdout.

pilfer-pandex <pilfer-pandex@users.noreply.github.com> (25):
      decapitate crop:ut
      decapitate find:ut, fond:ut
      decapitate fire:ut
      decapitate fish:ut
      decapitate fuse:ut
      decapitate mint:ut
      decapitate mull:ut
      decapitate peek:ut
      decapitate peel:ut
      decapitate play:ut
      dejet repo:ut
      decapitate rest:ut
      decapitate toss:ut
      decapitate wrap:ut
      kill conk:ut jet
      decapitate nest:ut with caching for dext
      fix the %mean nest-fail in nest
      remove unneeded jets, access to q jets
      rm q jets, unneeded molting and cooking
      jets: rm nest (keep dext); find was dead code
      jets: rename ut_find.c -> ut_fond.c

pkova <pyry.kovanen@gmail.com> (4):
      Sort clauses of $fork type pretty-printing
      eyre: add channel \n heartbeat every 20 seconds

arvo.2019.9.30

Toggle arvo.2019.9.30's commit message
arvo 2019.9.30

This release contains Arvo changes that will be pushed to the live
network as an over-the-air update.  This is not a breaching change, so
users should not create new piers.

Contributions:

Logan Allen <loganallc@gmail.com> (2):
      tiebout: removed since it's unused
      eyre: better error handling in channel js

Fang <Fang-@users.noreply.github.com> (1):
      weather: fix precipitation display

arvo.2019.9.23

Toggle arvo.2019.9.23's commit message
arvo 2019.9.9

This release contains Arvo changes that will be pushed to the live
network as an over-the-air update.  This is not a breaching change, so
users should not create new piers.

Contributions:

Joe Bryan <joemfb@gmail.com> (1):
      talk, chat: disables scry in hoon eval

Logan Allen <loganallc@gmail.com> (1):
      chat: message processing time down to 60ms

Philip Monk <phil@pcmonk.me> (1):
      claz: convert to iris

arvo.2019.9.9

Toggle arvo.2019.9.9's commit message
arvo.2019.9.9

This release contains Arvo changes that will be pushed to the live
network as an over-the-air update. This is not a breaching change, so
users should not create new piers.

Contributions:

Matilde Park <matilde@tlon.io> (2):
      Interface: Update urbit-ob dependency
      Publish: Add positive assertion for publish-info

yosoyubik <bellod.cisneros@gmail.com> (1):
      weather: updates api url to use automatic units