An operating function
Go to file
Fang b06f8a0f9e
eyre: send %leave on %fact/ack for deleted channel
Ordinarily, eyre cleans up the relevant gall subscriptions whenever a
channel disappears. In yet unresolved erroneous behavior though, it may
leave a gall subscription open, despite wiping the channel from state.

Attempting to pass the response onto the deleted channel anyway results
in an %eyre-no-channel error later in the event. The volume of these
errors can degrade the user experience, as per #3196.

To resolve the annoyance (but not the underlying issue) we detect the
"subscription has no channel" case, and issue a %leave. Doing so
requires additional information in the wire, so we add that in,
refactoring the relevant wire building along the way.

Note that due to the wire requirements, this cannot resolve existing
cases. For that, we depend on bc929ba6d.
2020-08-27 14:16:46 +02:00
.github/ISSUE_TEMPLATE ISSUE_TEMPLATEs: use +trouble instead of .^(@uv %cz /=base=) 2020-08-01 09:39:36 -05:00
bin pill: Update solid.pill for code-reset changes 2020-08-18 09:44:59 -07:00
doc/spec Misc cleanup blocking CC-Release. (#1249) 2019-04-24 17:27:27 -07:00
extras Misc cleanup blocking CC-Release. (#1249) 2019-04-24 17:27:27 -07:00
nix nix: fix boot-ship.nix 2020-07-14 16:13:15 -04:00
pkg eyre: send %leave on %fact/ack for deleted channel 2020-08-27 14:16:46 +02:00
sh Merge branch 'master' into jb/ipc-redux 2020-06-26 13:33:00 -07:00
.gitattributes gitattributes: export-ignore test directories [ci skip] 2020-02-01 12:07:13 +04:00
.gitignore gitignore: re-add mystery lines [ci skip] 2020-03-01 23:19:01 +04:00
.ignore Can now |hi to King Haskell over Ames! (and merged Master) 2019-07-31 22:16:02 -07:00
.mailmap mailmap: add pkova [ci skip] 2020-01-30 15:53:19 +04:00
.stylish-haskell.yaml stylish-haskell 2019-07-12 12:27:15 -07:00
.travis.yml ci: add travis as trusted user 2020-06-24 18:36:40 -07:00
CONTRIBUTING.md meta: update CONTRIBUTING, MAINTAINERS 2020-03-16 11:32:55 +04:00
default.nix Nix Build + Monorepo Structure (#1196) 2019-03-04 16:43:53 -08:00
LICENSE.txt Restore toplevel LICENSE.txt file. 2020-01-28 13:24:39 -08:00
MAINTAINERS.md MAINTAINERS: update for versioned JS bundles 2020-08-03 10:15:21 +10:00
Makefile Build Linux static executables. (#2120) 2019-12-19 08:11:59 -08:00
README.md Updated nix install command 2020-07-02 20:05:59 -07:00

Urbit

A personal server operating function.

The Urbit address space, Azimuth, is now live on the Ethereum blockchain. You can find it at 0x223c067f8cf28ae173ee5cafea60ca44c335fecb or azimuth.eth. Owners of Azimuth points (galaxies, stars, or planets) can view or manage them using Bridge, and can also use them to boot Arvo, the Urbit OS.

Install

To install and run Urbit, please follow the instructions at urbit.org/docs/getting-started/. You'll be on the live network in a few minutes.

If you're interested in Urbit development, keep reading.

Development

Build Status

Urbit uses Nix to manage builds. On Linux and macOS you can install Nix via:

curl -L https://nixos.org/nix/install | sh

The Makefile in the project's root directory contains useful phony targets for building, installing, testing, and so on. You can use it to avoid dealing with Nix explicitly.

To build Urbit, for example, use:

make build

The test suite can similarly be run via a simple:

make test

Note that some of the Makefile targets need access to pills tracked via git LFS, so you'll also need to have those available locally:

git lfs install
git lfs pull

Contributing

Contributions of any form are more than welcome! Please take a look at our contributing guidelines for details on our git practices, coding styles, how we manage issues, and so on.

You might also be interested in: