155ab60609
@ixv recently uncovered a bug (#2180) in Ford that caused certain rebuilds to crash. @Fang- and I believe this change should fix the bug, and we have confirmed that the reproduction that used to fail about two thirds of the time now has not failed at all in the ten or so times we've run it since then. @Fang- is still running more tests to confirm the fix with more certainty. It turned out the cause was that (depending on the rebuild order, which is unspecified and should not need to be specified), Ford could enqueue a provisional sub-build to be run but then, later in the same +gather call, discover that the sub-build was in fact an orphan and delete it from builds.state accordingly. Then when Ford tried to run the sub-build, it would have already been deleted from the state, so Ford would crash when trying to process its result in +reduce. The fix was to make sure that when we discover a provisional sub-build is orphaned, dequeue it from candidate-builds and next-builds to make sure we don't try to run it. I'm about 95% sure this fix completely solves the bug. |
||
---|---|---|
.. | ||
.travis | ||
app | ||
gen | ||
lib | ||
mar | ||
ren | ||
sur | ||
sys | ||
ted | ||
tests | ||
.gitignore | ||
.travis.yml | ||
LICENSE.txt | ||
README.md | ||
TESTING.udon |
Arvo
A clean-slate operating system.
Usage
To run Arvo, you'll need Urbit. To install Urbit and run Arvo please follow the instructions in the getting started docs. You'll be on the live network in a few minutes.
If you're doing development on Arvo, keep reading.
Documentation
Find Arvo's documentation on urbit.org.
Development
To boot a fake ship from your development files, run urbit
with the following arguments:
urbit -F zod -A /path/to/arvo -c fakezod
Mount Arvo's filesystem allows you to update its contents through Unix. To do so, run |mount
in dojo. It is most common to |mount /=home=
.
To create a custom pill (bootstrapping object) from the files loaded into the home desk, run .my/pill +solid
. Your pill will appear in /path/to/fakezod/.urb/put/my.pill
.
To boot a fake ship with a custom pill, use the -B
flag:
urbit -F zod -A /path/to/arvo -B /path/to.pill -c fakezod
To run all tests in /tests
, run +test
in dojo. +test /some/path
would only run all tests in /tests/some/path
.
Maintainers
Most parts of Arvo have dedicated maintainers.
/sys/hoon
: @pilfer-pandex (~pilfer-pandex)/sys/zuse
: @pilfer-pandex (~pilfer-pandex)/sys/arvo
: @jtobin (~nidsut-tomdun)/sys/vane/ames
: @belisarius222 (~rovnys-ricfer) & @joemfb (~master-morzod)/sys/vane/behn
: @belisarius222 (~rovnys-ricfer)/sys/vane/clay
: @philipcmonk (~wicdev-wisryt)/sys/vane/dill
: @bernardodelaplaz (~rigdyn-sondur)/sys/vane/eyre
: @eglaysher (~littel-ponnys)/sys/vane/ford
: @belisarius222 (~rovnys-ricfer) & @eglaysher (~littel-ponnys)/sys/vane/gall
: @jtobin (~nidsut-tomdun)/sys/vane/jael
: @fang- (~palfun-foslup) & @joemfb (~master-morzod)/app/acme
: @joemfb (~master-morzod)/app/dns
: @joemfb (~master-morzod)/app/hall
: @fang- (~palfun-foslup)/app/talk
: @fang- (~palfun-foslup)/app/aqua
: @philipcmonk (~wicdev-wisryt)/lib/test
: @eglaysher (~littel-ponnys)
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:
- joining the urbit-dev mailing list.
- applying to Hoon School, a course we run to teach the Hoon programming language and Urbit application development.