* release/next-vere:
noun: don't add identical values to song_x_cape's hashtable
nix: fix boot-ship.nix
release: urbit-os-v1.0.28
vere: more readable http server status
release: urbit-os-v1.0.27
chat-store: don't trim on %messages, either
libuv has a dependency on pthread which doesn't seem to get picked
up through any other configure steps. The errors returned during
linking are:
libuv.a(libuv_la-thread.o): undefined reference to symbol 'pthread_rwlock_trywrlock@@GLIBC_2.2.5'
libpthread.so.0: error adding symbols: DSO missing from command line
We were unconditionally adding equal items to the hashtable of
already-compared pointers. This table exists so that if we've already
determined two non-pointer-equal nouns are value-equal, we don't have to
check them again. However, atoms (especially direct) ended up in this
hashtable even though we don't look those up. This makes sure we don't
add items to the hashtable if they're "pointer"-equal (which for direct
atoms is value-equal).
The impact of this inefficiency was greatly magnified by the issue with
+mug where (mug a a) = (mug b b) for all a, b. For this reason, these
identical pairs added to the hashtable always had the same mug, so they
were added to the same bucket, which meant adding to that list required
linearly traversing the entire bucket.
This was the first barrier that was causing |pack to take a long time on
ships which distribute OTAs, but it isn't a complete solution for |pack.
* master:
vere: bump version to 0.10.7
libsigsegv: disable stack vma check
vere: bump version to 0.10.6
ci: add travis as trusted user
jets: use appropriate macro
noun: add -C to control memo cache size
jets: restore fond/play/peek hooks
jam: add commented-out functionality to count size of atom
jets: cap memo cache and remove peek, play, and fond jets
noun: add functions to count size of noun
* master: (147 commits)
vere: bump version to 0.10.7
libsigsegv: disable stack vma check
vere: bump version to 0.10.6
ci: add travis as trusted user
jets: use appropriate macro
noun: add -C to control memo cache size
jets: restore fond/play/peek hooks
jam: add commented-out functionality to count size of atom
jets: cap memo cache and remove peek, play, and fond jets
noun: add functions to count size of noun
release: urbit-os-v1.0.23
interface/config: fix production build
soto: run +on-load migration once
publish, links: restore full height
sh/build-interface: amend for SPA
interface/CONTRIBUTING: amend for SPA / webpack
solid: update pill
hood + apps: fix OTA process for feat/SPA
hood: add version %6 for %file-server upgrade
chat: equally size both code + s3 buttons
...
* ipc-redux:
behn: optimize bounded timers scry
vere: support saving scry jam to directory
vere: u3_nul in place of c3__null
vere: if behn scry fails, don't try again
vere: rename behn.c's alm -> alm_o
vere: scry out next behn timer for backstop
vere: warn on invalid behn doze
behn: improve scry interface
arvo: allow the empty desk (%$) in scries
vere: add -X flag for running a scry