Commit Graph

11177 Commits

Author SHA1 Message Date
Jared Tobin
9c8f40bf6c
Remove arvo submodule. 2019-06-28 12:46:12 +08:00
Joe Bryan
be0ac4c894 updates arvo and pill to 'monorepo-candidate' 2019-06-27 18:05:17 -07:00
Joe Bryan
b70c34b583 Merge branch 'lighter-than-eyre' into monorepo-candidate
* lighter-than-eyre: (30 commits)
  bumps http server/proxy timeouts for CI
  updates arvo and pills (to fix tests)
  points arvo submodule to lte-loopback, updates pills
  adds "make pills" target
  restores daemon-mode boot callback
  added http-server loopback backdoor
  disables http2
  points arvo submodule to lighter-than-eyre, updates pills
  removes obsolete http effect routing and handlers
  restores tcp proxy (by sending notifications directly over %ames)
  [CI] updates pinned arvo commit
  zero-initializes response generator struct pointer in u3_hreq
  updates cttp.c to support http headers
  updates cttp.c to support all HTTP verbs
  [CI] updates pinned arvo commit
  [CI] updates pinned arvo commit
  fixes memory leaks in http i/o drivers
  Vere side of outbound request work.
  WIP: It crashes after u3do(de-purl:html) because the shape is wrong?
  Make the server work again by parsing the response shape correctly.
  ...
2019-06-27 16:54:41 -07:00
Benjamin Summers
fc65176ca4 Fix segfault and handle more effects. 2019-06-27 14:28:58 -07:00
Benjamin Summers
9999e5264a Generate FromNoun code for sum types. 2019-06-26 17:58:55 -07:00
Benjamin Summers
4a666d1aa6 Generate FromNoun code for record types. 2019-06-26 16:40:31 -07:00
Benjamin Summers
f680e44ad5 Generate FromNoun code for enum types. 2019-06-26 16:27:37 -07:00
Benjamin Summers
798178d10c Finished generating ToNoun instances. 2019-06-26 15:51:30 -07:00
Benjamin Summers
c95d45198b Generate ToNoun instances for enum-shaped types. 2019-06-26 14:13:25 -07:00
Benjamin Summers
fb7e0b3838 Got generic deriving of ToNoun mostly working. 2019-06-25 17:15:49 -07:00
Benjamin Summers
febaeada1a Actually replay events! Also, parse some effects. 2019-06-25 13:58:07 -07:00
Benjamin Summers
6565c06fd4 Got something working: Can "replay" event log for ship whos snapshot is already up to date.. 2019-06-24 18:10:41 -07:00
Elliot Glaysher
f8c226042e
Merge pull request #1300 from urbit/rings
Ring signature support on Azimuth points
2019-06-24 17:08:04 -07:00
Elliot Glaysher
eb4cba4485 exit -> fail 2019-06-24 16:33:47 -07:00
Benjamin Summers
f6c6cb3e71 Unfinished refactoring. 2019-06-24 16:00:03 -07:00
Elliot Glaysher
af037c0188 Makefile needs CFLAGS. 2019-06-24 15:58:51 -07:00
Elliot Glaysher
3af13630cf Merge branch 'rings' of github.com:urbit/urbit into rings 2019-06-24 13:51:18 -07:00
Elliot Glaysher
496e62e01d Merge branch 'cc-release' into rings
This translates the meson build to nix. Previously, we had our ge-additions
package just manually compiled in instead of having its own file.
2019-06-24 13:47:53 -07:00
Benjamin Summers
de8e02f572 Misc 2019-06-21 14:17:24 -07:00
Benjamin Summers
4d11547c6a Error recovery and inline tents. 2019-06-20 13:00:53 -07:00
Benjamin Summers
f3cf0688c9 Conq: jets, lazy thunks, and grains. 2019-06-20 10:13:34 -07:00
Benjamin Summers
f0848ee769 Cleanup 2019-06-19 16:16:07 -07:00
Joe Bryan
66b49a4c5d Merge branch 'cc-release' into lighter-than-eyre
* cc-release:
  s/OS X/macOS
  Additional README updates. [ci skip]
  Update CONTRIBUTING.md. [ci skip]
  Update README for 0.8.0 release. [ci skip]
  removes u3l_log from u3m_bail() and c3_assert()
  enable ivory slog printfs during dawn (ethereum pre-boot validation)
  removes u3l_log() from critical error-handling code paths
  Retarget arvo at v0.8.0.rc.1.
  Update solid and brass pills in LFS.
  Points arvo submodule at zod.2019.6.3.
  removes c3_malloc/free calls from jets
  removes unused +mer:in jet
  fixes typo in +cue comment
  corrects +cue comment
  removes incorrect early return in cli argument-parsing
  tweaks cue/mug explicit stack conventions once more
  uses a separate desk and manual commit for +solid staging (avoids -A)
  tweaks explicit stack conventions in +cue jet
  refactors explicit stack usage in u3r_mug
2019-06-19 11:43:51 -07:00
Elliot Glaysher
4f52382a75 Various Fixes and Improvements. 2019-06-18 17:04:57 -07:00
Elliot Glaysher
7caadf43bc More of pier startup factored correctly. 2019-06-18 15:38:24 -07:00
Elliot Glaysher
8a16fdd864 Continue translating pier.c into Worker.hs 2019-06-17 16:47:20 -07:00
Benjamin Summers
2f7e31f671 Basic type inference. 2019-06-16 18:04:43 -07:00
Benjamin Summers
5d69eb0a5a Implemented eval, gates, cores, and a step-debugger. 2019-06-16 13:30:00 -07:00
Benjamin Summers
3fd0ab4270 Whatever 2019-06-14 18:49:37 -07:00
Jared Tobin
2a9808ea99
Merge pull request #1291 from urbit/ccr-printf-fixes
cleans up some printf edge-cases on cc-release
2019-06-13 09:14:35 +08:00
Joe Bryan
6557fa1cc0 removes u3l_log from u3m_bail() and c3_assert() 2019-06-12 16:10:11 -07:00
Joe Bryan
1f15266d48 enable ivory slog printfs during dawn (ethereum pre-boot validation) 2019-06-12 11:03:43 -07:00
Joe Bryan
3507e5dbf0 removes u3l_log() from critical error-handling code paths 2019-06-12 11:00:14 -07:00
Jared Tobin
8d6e006b68
Retarget arvo at v0.8.0.rc.1. 2019-06-12 19:44:12 +08:00
Jared Tobin
44758ad17e
Points arvo submodule at zod.2019.6.3. 2019-06-03 18:56:43 +08:00
Benjamin Summers
3e518f4d99 Separated new-vere executables into separate package for faster builds. 2019-06-01 14:57:53 -07:00
Benjamin Summers
54fc5f6078 Types and conversion for Tank/Plum. 2019-06-01 14:49:21 -07:00
Benjamin Summers
5b3ab33dac Lots of noun parsing/unparsing code. 2019-06-01 14:07:40 -07:00
Benjamin Summers
6a5bc78370 More progress on worker interaction. 2019-05-31 17:21:44 -07:00
Elliot Glaysher
585cb74c1f Start work on the thing which communicates with the subprocess. 2019-05-31 15:55:21 -07:00
Benjamin Summers
d6905191ed Use Iso's in Data.Noun.Pill 2019-05-30 19:53:16 -07:00
Elliot Glaysher
2727ae74d0 Completed event log code. We can write the log entirely. 2019-05-30 16:04:06 -07:00
Benjamin Summers
73b93e90cb Optimized (and some cleanup of) pill creation. 2019-05-30 15:48:22 -07:00
Elliot Glaysher
96b652b4fb We can write small events, but we can't write large ones because unpackAtom 2019-05-30 14:24:14 -07:00
Elliot Glaysher
3514439fe1 We can read data from an lmdb event log.
(And maybe write, but we didn't test that.)
2019-05-30 13:19:26 -07:00
Elliot Glaysher
7cedae3f70 Merge branch 'bs/uterm' of github.com:urbit/urbit into bs/uterm 2019-05-29 16:44:03 -07:00
Elliot Glaysher
80ffe5f8ec Think about writeEvent? 2019-05-29 16:43:51 -07:00
Elliot Glaysher
0509e9d45c Lots more code for lmdb. 2019-05-29 16:25:38 -07:00
Benjamin Summers
a37ac10413 Isle colors. 2019-05-29 12:47:14 -07:00
Benjamin Summers
e562dac9f7 Various fixes and improvements. 2019-05-29 11:33:09 -07:00
Benjamin Summers
43ba628aa6 Got Vere.Log.put to compile. 2019-05-28 17:32:39 -07:00
Elliot Glaysher
c5cc3308ce Sketching lmdb integration. Unfinished. 2019-05-28 17:16:30 -07:00
Benjamin Summers
854e2da4b8 Correct axis for fire. 2019-05-27 16:10:17 -07:00
Benjamin Summers
20a95edacb Bugfix + core example (but has infinite type until recursive types are implemented). 2019-05-24 18:33:46 -07:00
Benjamin Summers
0be4b8527f Attila: Use nock 9 for firing arms. 2019-05-24 18:10:24 -07:00
Elliot Glaysher
845890e87c Various fixes and improvements. 2019-05-24 16:08:59 -07:00
Elliot Glaysher
edd289181b Some server stuff. 2019-05-24 16:03:46 -07:00
Joe Bryan
f89ad54a9b removes c3_malloc/free calls from jets 2019-05-24 14:17:53 -07:00
Joe Bryan
f36505f031 removes unused +mer:in jet 2019-05-24 14:14:59 -07:00
Joe Bryan
e213694d44 fixes typo in +cue comment 2019-05-24 14:12:59 -07:00
Benjamin Summers
7989d07ec3 More Attilla.IR cleanup. 2019-05-23 17:16:28 -07:00
Elliot Glaysher
5dc839bc36 Add some server stuff. 2019-05-23 16:58:18 -07:00
Elliot Glaysher
ee1938f6fe Merge branch 'lighter-than-eyre' into bs/uterm 2019-05-23 16:02:51 -07:00
Benjamin Summers
8e3d71747c More cleanup. 2019-05-23 15:16:32 -07:00
Benjamin Summers
e6fd500692 Attila.IR cleanup. 2019-05-23 14:54:48 -07:00
Benjamin Summers
ae3031f3fc Nock code generation for Attila. 2019-05-23 00:12:44 -07:00
Benjamin Summers
a129f7e6f1 Type Inference for Attila's IR 2019-05-22 18:14:21 -07:00
Benjamin Summers
3fa12dcec4 Wrote most of the code for a high-perf cue. 2019-05-21 00:25:58 -07:00
Joe Bryan
ca97fef17d
Merge pull request #1278 from urbit/ccr-mug-stack
cc-release: revise explicit-stack conventions in mug
2019-05-20 20:20:32 -07:00
Joe Bryan
82c9023516 corrects +cue comment 2019-05-20 20:19:45 -07:00
Benjamin Summers
a66aeb398a Language.Attilla 2019-05-20 16:40:02 -07:00
Benjamin Summers
dc5db9f3d1 Loading pills works; initial work on jets for jam/cue. 2019-05-20 16:04:28 -07:00
Benjamin Summers
83db727920 Tested the shit out of my pill loading code. 2019-05-19 23:14:07 -07:00
Benjamin Summers
a755880d46 Debugging and Optimizing jam/cue 2019-05-19 20:20:03 -07:00
Benjamin Summers
9919127620 Wrote code to load a pill file, but it doesn't work yet. 2019-05-19 18:53:32 -07:00
Benjamin Summers
64e4d11427 Optimized Zip compression table and dramatically simplified it's code 2019-05-17 20:44:13 -07:00
Benjamin Summers
fd1190faba Optimize zip for small atom sizes. 2019-05-17 16:02:39 -07:00
Elliot Glaysher
7b7510b859 Fleshed out Client.hs. 2019-05-17 14:52:12 -07:00
Joe Bryan
4fba951658 removes incorrect early return in cli argument-parsing 2019-05-17 14:36:55 -07:00
Benjamin Summers
0008ca0bc9 Various fixes and improvements. 2019-05-16 23:39:07 -07:00
Benjamin Summers
18098beaac zipFlat is now typically smaller and faster than jam. 2019-05-16 19:56:06 -07:00
Benjamin Summers
2374ed3ce8 Don't send a Canceled event if the request already finished. 2019-05-16 18:45:03 -07:00
Benjamin Summers
fc6f3028e2 Vere.Http.Client golfing. 2019-05-16 18:25:58 -07:00
Elliot Glaysher
971f21d634 Skeleton of http client operations. 2019-05-16 17:05:34 -07:00
Joe Bryan
09d465bab0 tweaks cue/mug explicit stack conventions once more 2019-05-16 10:48:10 -07:00
Elliot Glaysher
f1d8dda6ca Note about certificates. 2019-05-15 17:04:21 -07:00
Elliot Glaysher
7dfc6b9c19 Working out the datatypes. 2019-05-15 17:00:10 -07:00
Benjamin Summers
90470dc67d Various fixes and improvements. 2019-05-14 22:09:53 -07:00
Benjamin Summers
805e954980 Got jam/cue fully working and tested. 2019-05-14 18:30:44 -07:00
Benjamin Summers
de227b07a0 Implemented jam, but the tests don't pass yet. 2019-05-14 15:13:18 -07:00
Joe Bryan
8bfff9f342 bumps http server/proxy timeouts for CI 2019-05-14 14:36:20 -07:00
Joe Bryan
3fdc64b2da updates arvo and pills (to fix tests) 2019-05-14 13:49:21 -07:00
Joe Bryan
77281ad43d points arvo submodule to lte-loopback, updates pills 2019-05-14 11:43:54 -07:00
Joe Bryan
aec0772736 Merge branch 'cc-release' into lte-loopback
* cc-release:
  another round of +cue comments
  adds +cue comments per review
  cleans up cue, correcting comments and refcounting
  rewrites cue to avoid recursion (using the road stack)
  dedents cue jet
  adds jam/cue tests
  adds success printf to mug_tests
  renames hash_tests to mug_tests
2019-05-14 11:32:39 -07:00
Joe Bryan
88d3cb81fb tweaks explicit stack conventions in +cue jet 2019-05-14 11:01:00 -07:00
Joe Bryan
a1504557af refactors explicit stack usage in u3r_mug 2019-05-14 11:00:12 -07:00
Joe Bryan
67cde032de another round of +cue comments 2019-05-13 16:40:36 -07:00
Joe Bryan
9e9b5b45c1 adds +cue comments per review 2019-05-13 15:56:07 -07:00
Joe Bryan
7c4b1bf105 cleans up cue, correcting comments and refcounting 2019-05-13 14:32:45 -07:00
Benjamin Summers
91b1a8be48 Notes 2019-05-13 13:46:05 -07:00
Joe Bryan
365239e1de rewrites cue to avoid recursion (using the road stack) 2019-05-12 02:34:43 -07:00
Joe Bryan
f1950799b8 dedents cue jet 2019-05-12 02:34:37 -07:00
Joe Bryan
73f8129a25 adds jam/cue tests 2019-05-12 02:34:30 -07:00
Joe Bryan
9af3034862 adds success printf to mug_tests 2019-05-12 02:34:22 -07:00
Joe Bryan
0661538ae0 renames hash_tests to mug_tests 2019-05-12 02:34:14 -07:00
Benjamin Summers
4e1b4eb8f7 Got cue working. 2019-05-10 14:59:45 -07:00
Benjamin Summers
b4b4d2ff7b Implement bitWidth (for cue/rub). 2019-05-09 19:45:28 -07:00
Benjamin Summers
966792b767 Implemented rub+cue and started on FromNoun+ToNoun. 2019-05-09 19:02:47 -07:00
Benjamin Summers
cfe4df4a9d Basic GHC libnoun impl. 2019-05-09 15:46:56 -07:00
Benjamin Summers
52d7d64f02 Fixed a couple of bugs in time conversions. 2019-05-09 13:01:22 -07:00
Joe Bryan
a0a48cfd50 restores daemon-mode boot callback 2019-05-09 00:32:07 -07:00
Isaac Visintainer
381a537c9f added http-server loopback backdoor 2019-05-08 22:11:11 -07:00
Joe Bryan
1463954eb6 disables http2 2019-05-08 22:11:08 -07:00
Joe Bryan
4caee32f56 points arvo submodule to lighter-than-eyre, updates pills 2019-05-08 22:10:06 -07:00
Joe Bryan
905b5b6d1a Merge branch 'cc-release' into lighter-than-eyre
* cc-release: (445 commits)
  unmap the db on SIGABRT (for smaller core dump)
  fixes typo in daemon error printf
  adds (disabled) code to print and save comet "keyfile"
  fixes reference counts in _pier_work_boot()
  fixes u3m_soft early-return bail type
  refactors u3v_boot/_lite, fixes reference miscount
  use static keyword for local vortex.c functions
  removes unused .sys member of persistent u3A struct
  Get cross-compilation ready for release. (#1263)
  removes obsolete u3v functions, refactor u3v_boot(_lite)
  Use a typed size_t instead.
  removes obsolete u3m_boot, renames new boot functions
  Set the maximum event log size to forty gigabytes.
  removes duplicate manage.c init, fixes call sites
  Update link to docs for swap space help
  Add `git` to default.nix dependencies
  General patch cleanup
  Attempt at fixing compile on CI.
  Fix multi-event commit.
  Theoretically multi-event writes.
  ...
2019-05-08 22:09:51 -07:00
Benjamin Summers
9fd6aa04b4 Faster Behn 2019-05-08 16:57:34 -07:00
Benjamin Summers
eaac71ce6b Debugged behn timer accuracy. 2019-05-08 13:51:04 -07:00
Benjamin Summers
e6d8d382dc Moved *.hs into a single package. 2019-05-08 13:00:12 -07:00
Benjamin Summers
fbf9a1b3fc Urbit.Time 2019-05-08 11:47:20 -07:00
Joe Bryan
0e972f04c6 unmap the db on SIGABRT (for smaller core dump) 2019-05-06 21:55:52 -07:00
Benjamin Summers
4b38053509 Behn 2019-05-05 14:46:40 -07:00
Benjamin Summers
88f1bc5eeb Merge branch 'cc-release' of https://github.com/urbit/urbit into bs/uterm 2019-05-05 11:53:00 -07:00
Joe Bryan
2a29a10c9d fixes typo in daemon error printf 2019-05-04 21:22:37 -07:00
Joe Bryan
e171596d98 adds (disabled) code to print and save comet "keyfile" 2019-05-04 21:22:37 -07:00
Joe Bryan
3d7b82936e fixes reference counts in _pier_work_boot() 2019-05-04 21:22:37 -07:00
Joe Bryan
f3867966bb fixes u3m_soft early-return bail type 2019-05-03 08:13:50 -07:00
Joe Bryan
dc1bf0c7d2 refactors u3v_boot/_lite, fixes reference miscount 2019-05-03 08:12:17 -07:00
Joe Bryan
a16450f62f use static keyword for local vortex.c functions 2019-05-02 17:10:09 -07:00
Joe Bryan
ff0be87001 removes unused .sys member of persistent u3A struct 2019-05-02 16:26:24 -07:00
Joe Bryan
7cd0b09cd4 Merge branch 'cc-release' into ccr-noun-clean
* cc-release:
  Get cross-compilation ready for release. (#1263)
  Use a typed size_t instead.
  Set the maximum event log size to forty gigabytes.
2019-05-02 16:26:11 -07:00
Benjamin Summers
ba7c7f6644 Merge branch 'bs/uterm' of github.com:urbit/urbit into bs/uterm 2019-05-02 13:16:32 -07:00
Benjamin Summers
de04fe53c2 Merge branch 'cc-release' of github.com:urbit/urbit into bs/uterm 2019-05-02 13:14:25 -07:00
benjamin-tlon
ade1e59ce1
Get cross-compilation ready for release. (#1263)
* Add cross-compilation for `lmdb`.
* Got built caching working in CI with `cachix`.
* Cache cross compilation dependencies and toolchains.
* Do release builds in CI.
* Upload release builds to `bootstrap.urbit.org` on successful build.
* Lots of optimization work for CI.
* Boot from a solid pill in CI and load arvo with `-A`.
* Increase `vere` HTTP timeout to 15m.
2019-05-02 13:13:48 -07:00
Joe Bryan
08a181a6e2 removes obsolete u3v functions, refactor u3v_boot(_lite) 2019-05-02 11:35:52 -07:00
Elliot Glaysher
c06e8dbdb4 Use a typed size_t instead. 2019-05-02 10:50:59 -07:00
Joe Bryan
1565eede94 removes obsolete u3m_boot, renames new boot functions 2019-05-02 10:46:19 -07:00
Elliot Glaysher
7d246813f7 Set the maximum event log size to forty gigabytes. 2019-05-02 10:45:28 -07:00
Joe Bryan
1604313207 removes duplicate manage.c init, fixes call sites 2019-05-02 10:42:26 -07:00
Joe Bryan
46b14af63b Merge branch 'master' into ccr-noun-clean
* master:
  Update link to docs for swap space help
  Add `git` to default.nix dependencies
  Handle trailing newline in keyfile.
2019-05-02 10:40:57 -07:00
Benjamin Summers
25713052c0 Messing around. 2019-05-01 19:19:19 -07:00
Benjamin Summers
87dbcef866 Minor cleanup. 2019-04-29 16:15:25 -07:00
Benjamin Summers
ac8144114b Some Haskell. Now how to build with nix? 2019-04-29 16:01:18 -07:00
Elliot Glaysher
60196a9910 General patch cleanup 2019-04-29 14:23:27 -07:00
Elliot Glaysher
812b841f20 Attempt at fixing compile on CI. 2019-04-29 13:45:40 -07:00
Elliot Glaysher
06cfb81d60 Fix multi-event commit. 2019-04-29 10:59:15 -07:00
Elliot Glaysher
2fe916faac Merge remote-tracking branch 'origin/cc-release' into cc-batched-writes 2019-04-29 10:16:33 -07:00
Elliot Glaysher
8d691a63af Theoretically multi-event writes.
I'm having trouble testing this, though. Every constructed write request
is still only 1 event.
2019-04-29 10:06:03 -07:00
Joe Bryan
a378aac5ff
Merge pull request #1255 from urbit/ccr-cleanup
cc-release general cleanup
2019-04-26 14:53:12 -07:00
Joe Bryan
2c3bf6a9f2 corrects inaccurate u3m_reclaim comment in worker 2019-04-26 14:38:24 -07:00
Joe Bryan
e4db6edb24 restores perror() calls in terminal hijack/lojack to avoid possible reentrance 2019-04-26 14:36:38 -07:00
Joe Bryan
4f3f3897f8 moves _pier_apply into uv_idle_t, runs once per libuv turn 2019-04-26 14:24:01 -07:00
Joe Bryan
9196f7cc4a removes obsolete members from persistent u3A struct 2019-04-26 13:59:37 -07:00
Joe Bryan
56750c5f59 updates worker to store interim lifecycle events in u3V 2019-04-26 13:57:11 -07:00
Joe Bryan
1f86128b69 restores external arvo time on event failure 2019-04-26 13:56:42 -07:00
Joe Bryan
be254c57ae moves mug chaining enforcement entirely into the worker 2019-04-26 13:31:29 -07:00
Joe Bryan
b6b84b5369 updates the worker to track in-progress vs completed event numbers 2019-04-26 11:27:20 -07:00
Joe Bryan
45fff7f8da restores kernel mug when restarting the worker (on %play) 2019-04-26 11:13:49 -07:00
Elliot Glaysher
51253dca5d Build write request struct. 2019-04-26 11:08:10 -07:00
Joe Bryan
6b362c4008 tweaks event reference counting and fixes mis-fixed memory leak 2019-04-26 08:55:26 -07:00
Joe Bryan
3900d1a0c2 removes superfluous seeding of the openssl prng 2019-04-25 23:17:59 -07:00
Joe Bryan
edc142019e replaces perror() with u3l_log() 2019-04-25 23:17:59 -07:00
Joe Bryan
3b9a19d2f9 adds lmdb to library version report 2019-04-25 23:17:59 -07:00
Joe Bryan
5d0f1e1465 Merge branch 'master' into ccr-cleanup
* master:
  bump urbit version number
  if sweep gives 0 and reference count != 0, leak
  added urbit, curl and argon2 to version reporting (urbit -R)
  [CI] bump pinned arvo commit
  bump urbit version number to 0.7.3
  Consistently use "boot:" printf prefix
  Be more precise about the snapshot contents
  Re-add printf to notify of snapshot download
2019-04-25 22:56:14 -07:00
Joe Bryan
df59b1a489
Merge branch 'cc-release' into cc-event-replay-check 2019-04-25 17:04:39 -07:00
Joe Bryan
8fe2835e90
Merge pull request #1251 from BernardoDeLaPlaz/vere_build_warnings
remove all build warnings
2019-04-25 16:53:11 -07:00
Elliot Glaysher
ce0c78d1ea Cleanup 2019-04-25 16:35:29 -07:00
Elliot Glaysher
563214c2a2 Verify mugs on log replay to detect nondeterministic replay.
Joe helped write the worker/main.c changes so that we consistently
return the mug of the current state on each %done message. Then
enabled a check in _pier_work_complete() which asserts that the
recomputed event produces the same state as the next event was
expecting to be applied to.
2019-04-25 16:22:41 -07:00
BernardoDeLaPlaz
043333f767 -Werror turned on 2019-04-25 18:23:53 -04:00
BernardoDeLaPlaz
e9a2784982 Merge branch 'vere_build_warnings' of https://github.com/BernardoDeLaPlaz/urbit into vere_build_warnings 2019-04-25 18:07:06 -04:00
BernardoDeLaPlaz
c0403d2096 code review 2019-04-25 18:05:26 -04:00
Elliot Glaysher
a4ce72355d Store [mug job] instead of the entire IPC message. 2019-04-25 14:57:26 -07:00
Benjamin Summers
4b6509e7a3 Hello-world haskell package. 2019-04-25 14:02:19 -07:00
~rigdyn-sondur
8db9653168
Merge branch 'cc-release' into vere_build_warnings 2019-04-25 16:37:08 -04:00
Joe Bryan
ac59fb749c updates arvo submodule and brass.pill to latest arvo next 2019-04-25 13:35:34 -07:00
BernardoDeLaPlaz
22fe68f67c fix one new build warning 2019-04-25 16:24:55 -04:00
Joe Bryan
4258c3c8ba Merge branch 'cc-release' into ccr-replay-reform
* cc-release: (26 commits)
  Rmoves all calls to u3m_bail() in the database layer. Everything returns an error code.
  Cleaner slog replay + fix spelling error
  Misc cleanup blocking CC-Release. (#1249)
  Use Joe's suggested change to u3_pier_snap().
  u3m_lmdb -> u3_lmdb
  updates libnoun to ignore SIGINT upon completion of a soft
  Cleanup
  Don't print %slog on replay.
  Finish cc-release cross-compilation. (#1202)
  removes clay mount auto-sync on restart
  Cleanup and enable MDB_NOOVERWRITE.
  Remove most u3_foil_* functions.
  Read the latest event number out of lmdb.
  Event log replay succeeds.
  removes obsolete, commented-out signal handling in main.c
  First version which appears to replay most of the event log. Still crashes at the end.
  corrects typos in libnoun commented-out code
  consolidates daemon signal handling
  consistently aborts immediately on ctrl-z (SIGTSTP)
  The entire log appears to be loaded from the database; still need to queue events, but exciting
  ...
2019-04-25 13:06:03 -07:00
Elliot Glaysher
0a0d7e0e57
Merge pull request #1248 from urbit/cc-lmdb-log-storage
Use lmdb for log storage instead of hand-rolled structure
2019-04-25 12:50:49 -07:00
~rigdyn-sondur
b7c7b7f6be
Merge branch 'cc-release' into vere_build_warnings 2019-04-25 14:46:11 -04:00
Elliot Glaysher
e0e9a09b58 Rmoves all calls to u3m_bail() in the database layer. Everything returns an error code. 2019-04-25 11:22:26 -07:00
BernardoDeLaPlaz
61bf83ff56 remove all build warnings 2019-04-25 14:01:21 -04:00
Elliot Glaysher
f8ca7b39dd Cleaner slog replay + fix spelling error 2019-04-25 10:47:37 -07:00
Joe Bryan
d0269662c8 fixes memory leak in worker %save handler 2019-04-24 22:21:36 -07:00
Joe Bryan
cfb6202edb tweaks replacement events: %crud contents, %warn structure 2019-04-24 22:21:09 -07:00
benjamin-tlon
3c3f7e761e
Misc cleanup blocking CC-Release. (#1249)
* Move extraneous stuff out of pkg/urbit/*
* s/urb/herb/g
* Removed some boilerplate for `urbit` builds.
* Build urbit tests and run them in the nix build.
2019-04-24 17:27:27 -07:00
Elliot Glaysher
0841e797a9 Use Joe's suggested change to u3_pier_snap(). 2019-04-24 17:05:34 -07:00
Elliot Glaysher
175fd18585 u3m_lmdb -> u3_lmdb 2019-04-24 16:26:27 -07:00
Joe Bryan
62e7c8272b
Merge pull request #1243 from urbit/ccr-signal-reform
cc-release: cleanup of signal handling
2019-04-24 12:52:26 -07:00
Joe Bryan
96ad21c476 updates libnoun to ignore SIGINT upon completion of a soft 2019-04-24 11:29:12 -07:00
Elliot Glaysher
16788f92c1 Cleanup 2019-04-24 11:22:54 -07:00
Elliot Glaysher
d320a7cafe Don't print %slog on replay. 2019-04-24 10:54:19 -07:00
Joe Bryan
d4321aa28c
Merge pull request #1247 from urbit/ccr-start-nosync
cc-release: removes clay mount auto-sync on restart
2019-04-23 20:20:52 -07:00
benjamin-tlon
edd57d380d
Finish cc-release cross-compilation. (#1202)
- Fixes the IPC bug
- Fixes the terminfo bug
- Moves the OSX SDK out of our nixcrpkgs fork.
- Vendor nixcrpkgs instead of having it be a submodule.
2019-04-23 19:50:38 -07:00
Joe Bryan
3b5644f582 removes clay mount auto-sync on restart 2019-04-23 18:28:58 -07:00
Joe Bryan
450fd5199e adds additional replacement events
%hole (negative ack) and %warn (%crud failed)
2019-04-23 15:57:46 -07:00
Joe Bryan
1ec9b9eee9 limits event replacement to three attempts 2019-04-23 15:57:46 -07:00
Joe Bryan
6d778bee3f aligns worker printfs, adjusts function indentation 2019-04-23 15:57:34 -07:00
Elliot Glaysher
45b47c21f7 Cleanup and enable MDB_NOOVERWRITE. 2019-04-23 15:30:56 -07:00
Elliot Glaysher
6570b798fd Remove most u3_foil_* functions. 2019-04-23 15:10:03 -07:00
Joe Bryan
26cbb9c7c8 inject fresh entropy on every restart 2019-04-23 15:07:53 -07:00
Elliot Glaysher
cdc3b6562e Read the latest event number out of lmdb. 2019-04-23 15:02:28 -07:00
Elliot Glaysher
8b4f1d8e93 Event log replay succeeds. 2019-04-23 14:15:11 -07:00
Joe Bryan
4dabad9120 restores -P sample-based profiling 2019-04-23 12:56:03 -07:00
Joe Bryan
23cbb45ffe removes obsolete, commented-out signal handling in main.c 2019-04-23 12:04:12 -07:00
Elliot Glaysher
281e352c14 First version which appears to replay most of the event log. Still crashes at the end. 2019-04-23 11:12:09 -07:00
Joe Bryan
ead1b2443e corrects typos in libnoun commented-out code 2019-04-23 10:46:34 -07:00
Joe Bryan
beafc011cd consolidates daemon signal handling 2019-04-23 10:46:34 -07:00
Joe Bryan
075bc5109e consistently aborts immediately on ctrl-z (SIGTSTP) 2019-04-23 10:46:29 -07:00
Elliot Glaysher
5d2468056c The entire log appears to be loaded from the database; still need to queue events, but exciting 2019-04-22 16:29:38 -07:00
Elliot Glaysher
dc6e3b2236 (This commit makes sh/make-bootzod work again.) 2019-04-22 10:50:54 -07:00
Elliot Glaysher
96942f3dd5 Joe looked at this; this was because of u3we vs u3ke. 2019-04-19 17:02:57 -07:00
Elliot Glaysher
a849b1b81e WIP: Wrote the skeleton of the reading function. It compiles, but isn't invoked. 2019-04-19 15:49:54 -07:00
Elliot Glaysher
0c36e0da26 Fixes threading so uv_work_t is heap allocated. 2019-04-19 11:17:37 -07:00
Elliot Glaysher
a10beebd47 Wrote out the asynchronous writing, but it crashes in the nock thread now? 2019-04-19 10:28:58 -07:00
Elliot Glaysher
2bef1a30da First minor integration with lmdb.
This stores the ship's identity information in a separate META table in
the lmdb datastore.
2019-04-18 14:01:44 -07:00
Elliot Glaysher
4cf58f27bd Cleanups 2019-04-16 10:14:15 -07:00
Elliot Glaysher
2aa45f828e Restore git submodule screw up. 2019-04-15 15:57:06 -07:00
Elliot Glaysher
29d40e032e Also remove uH/uL macros. 2019-04-15 15:14:07 -07:00
Elliot Glaysher
1e468f75d6 Pass stderr from worker to daemon. 2019-04-15 15:06:19 -07:00
Elliot Glaysher
4f313f05fa Merge remote-tracking branch 'origin/cc-release' into cc-enhancements 2019-04-15 14:25:50 -07:00
Joe Bryan
ea30e715dd uses stderr in daemon mode for slog printing 2019-04-12 22:51:43 -07:00
Joe Bryan
417dbf298b (re-)disable terminal spinner in daemon mode 2019-04-12 22:27:41 -07:00
Joe Bryan
4ccf069458 restores terminal spinner 2019-04-12 22:15:59 -07:00
Joe Bryan
2585e1ca76 adds argument comment to _serf_send_slog 2019-04-12 22:15:59 -07:00
Joe Bryan
05ce835b55 miscellaneous output cleanup 2019-04-12 22:14:55 -07:00
Joe Bryan
daac99c91e moves slog function pointer to u3C (to preserve across roads) 2019-04-12 22:13:00 -07:00
Joe Bryan
4873309e81 send slog hints over the king/serf pipe 2019-04-12 22:12:31 -07:00
Joe Bryan
3eaa470d98 moves slog implementation out of trace.c and libnoun
and removes unused u3t_shiv()
2019-04-12 22:11:49 -07:00
Joe Bryan
3f6c9326fb improves error message when attempting to recreate existing ship 2019-04-12 22:07:31 -07:00
Joe Bryan
3f7f57a247 removes obsolete ames initialization on boot 2019-04-12 21:57:33 -07:00
Joe Bryan
93ce637e96 updates arvo submodule to latest master 2019-04-12 21:57:02 -07:00
Joe Bryan
55aa3b70bd refactors/reorders functions in pier.c 2019-04-12 21:48:38 -07:00
Elliot Glaysher
367bf939d2 Move all logging onto a dedicated u3l_log() statement.
This makes things in libnoun not depend on the specifics of the terminal
driver for logging, using a implementor customizable logging function.

This allows the daemon process to intercept all logging lines without
breaking the console, and should allow the worker process to forward all
logging messages to the daemon so the daemon can print them without
breaking the console.
2019-04-12 16:21:35 -07:00
Elliot Glaysher
dbeb2c2a8b Normalize on the preexisting daemon/worker nomenclature.
We were calling the worker process three different things, standardize
on the name worker. Same for the daemon.
2019-04-12 13:30:36 -07:00
Joe Bryan
1b503d9e26 ensure that event-log header is first in the log 2019-04-11 00:11:45 -07:00
Joe Bryan
f5da7da563 reads events in batches of 1K during replay 2019-04-11 00:07:35 -07:00
Joe Bryan
2eff7240ac refactors event-log replay preparation 2019-04-10 23:50:47 -07:00
Joe Bryan
8c0a8a182f adds explicit boot controller, refactors state transitions 2019-04-10 23:32:13 -07:00
Joe Bryan
671eeaaf00 prevent spurious first-boot of existing pier 2019-04-10 23:18:54 -07:00
Joe Bryan
f68e27e68a removes superfluous pier liv_o flag 2019-04-10 22:33:40 -07:00
Joe Bryan
785839db5c
Merge pull request #1232 from urbit/ccr-vent-sane
cc-release event state machine corrections
2019-04-05 16:58:46 -07:00
Isaac Visintainer
f9a61b36a3 fixes for review 2019-04-05 15:03:19 -07:00
Isaac Visintainer
7c9b8d71ef put tracing calls in serf 2019-04-05 14:56:58 -07:00
Isaac Visintainer
cf3ddef76a moved path prettyprinting into noun/manage, and made it globally available 2019-04-05 14:56:12 -07:00
Isaac Visintainer
03ae60505b load pier directory on serf for saving tracing files 2019-04-05 14:56:11 -07:00
Isaac Visintainer
5c88da2619 fix serf flag size 2019-04-05 14:56:11 -07:00
Joe Bryan
92ece2d22a enforces snapshot/commit ordering constraints 2019-04-05 14:40:18 -07:00
Joe Bryan
4fb35aaee3 moves boot-barrier callback into _pier_work_release and refactors 2019-04-05 14:33:36 -07:00
Joe Bryan
7f116290aa adds explicit pier states, uses for playback printfs 2019-04-05 11:45:57 -07:00
Joe Bryan
a4735e8c93 adds explicit _pier_writ_unlink function 2019-04-05 11:45:57 -07:00
Joe Bryan
aaa5b31969 fixes _pier_work_poke reference counting 2019-04-05 11:45:57 -07:00
Joe Bryan
28c7131cc8 revises handling of event-log header 2019-04-05 11:45:57 -07:00
Joe Bryan
e22312ea14 initalizes persistence and starts the serf in parallel 2019-04-05 11:45:57 -07:00
Joe Bryan
6c932e5304 restructures pier startup 2019-04-05 11:43:34 -07:00
Joe Bryan
cf89e34a8a move disk_init/complete 2019-04-05 11:43:34 -07:00
Joe Bryan
1b456d1121 asserts lifecycle barrier is > 0, sets when reading event-log header 2019-04-05 11:43:42 -07:00
Joe Bryan
02abafef4e consolidates single-home logic 2019-04-05 11:43:34 -07:00
Joe Bryan
45d892d946 WIP extracts event-log header read and single-home 2019-04-05 11:43:34 -07:00
Joe Bryan
b33c50d117 WIP refactors log init, adds explicit "live" flag 2019-04-05 11:43:38 -07:00
Joe Bryan
8162a5177d WIP refactors serf init, adds explicit "live" flag 2019-04-05 11:43:34 -07:00
Joe Bryan
6eadbaa18d frees u3_writ on dispose 2019-04-05 11:43:34 -07:00
Joe Bryan
80d2a41810 removes obsolete, commented-out boot code 2019-04-05 11:43:34 -07:00
Joe Bryan
ffbc3bbc90 cleans up i/o driver initialization 2019-04-05 11:43:34 -07:00
Joe Bryan
81647bbd7c removes precommits, updates event state machine constraints 2019-04-05 11:43:28 -07:00
Joe Bryan
734adde0b7 adds defines for verbose event state machine printfs 2019-04-05 11:32:50 -07:00
Joe Bryan
4cc3a70498 bumps vere version number 2019-04-02 11:57:14 -07:00
Joe Bryan
9481ff7a6a removes duplication %behn initialization 2019-04-02 11:32:21 -07:00
Benjamin Summers
272263cf4d bumps arvo commit to latest next 2019-04-02 11:31:36 -07:00
Joe Bryan
ea56669696 TCOs +turn jet 2019-04-02 10:40:39 -07:00
Joe Bryan
53ca83f4bc TCOs +weld jet 2019-04-02 10:40:39 -07:00
Joe Bryan
2b3c218d9f for @pilfer-pandex 2019-03-29 10:50:58 -07:00
Joe Bryan
c39f26f02c fixes typo, adds comment per review 2019-03-28 23:38:13 -07:00
Joe Bryan
2c0566c55a Merge branch 'cc-release' into ccr-fast-boot
* cc-release: (69 commits)
  Fixed Nix build errors on Bernardo's Ubuntu. (#1220)
  Removed urb submodule.
  Removed `pkg/ent` submodule.
  Nix Build + Monorepo Structure (#1196)
  Added -P/--output-pill argument (#6)
  Collapse long lines.
  Nix Setup and Docs (#5)
  Instructions for getting dependencies on Ubuntu/Debian
  Whitespace errors.
  Wrote a really stupid configure script.
  Meson tries to hard to be "smart". Replaced with a Makefile.
  Clarify README comment
  Version bump, remove double negative
  Actually try calling getrandom while configuring
  v0.2.0
  v0.1.4
  Add all config vars to config.h.in
  Wrote a config.h.in file for old meson versions.
  Minor cleanup
  Remove assert, add _ent_fail
  ...
2019-03-20 23:53:41 -07:00
Benjamin Summers
02a1443cec Add 'pkg/urb/' from commit '29a2e6a79e59f93e6399225efec6e09bc17f2767'
git-subtree-dir: pkg/urb
git-subtree-mainline: 774f29bd06
git-subtree-split: 29a2e6a79e
2019-03-04 17:35:24 -08:00
Benjamin Summers
774f29bd06 Removed urb submodule. 2019-03-04 17:34:55 -08:00
Benjamin Summers
9618f37965 Add 'pkg/ent/' from commit '31ac2913f14c6f7631f5792ad942605fb2d9fb87'
git-subtree-dir: pkg/ent
git-subtree-mainline: 1207c204cb
git-subtree-split: 31ac2913f1
2019-03-04 16:49:14 -08:00
Benjamin Summers
1207c204cb Removed pkg/ent submodule. 2019-03-04 16:46:58 -08:00
benjamin-tlon
c86879e833
Nix Build + Monorepo Structure (#1196) 2019-03-04 16:43:53 -08:00