Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge vere-v2.2 to release #352

Merged
merged 50 commits into from Apr 25, 2023
Merged

Merge vere-v2.2 to release #352

merged 50 commits into from Apr 25, 2023

Conversation

pkova
Copy link
Collaborator

@pkova pkova commented Apr 24, 2023

No description provided.

ashelkovnykov and others added 30 commits March 11, 2023 18:13
Resolves #197 

**click** = **cli** for **c**onn.c & **K**han

I didn't know where it should live, so for now I put it into a `bin`
folder in root Vere. Overview:
```
Usage:
    click [options] <path-to-pier> <hoon> [<dependencies> ...]
    click [options] -i <path-to-file> <path-to-pier> [<dependencies> ...]
    click [-o|-p] -e -i <path-to-file> <path-to-pier>

    Thin client for interacting with running Urbit ship via conn.c

    options:
        -e                  Execute jammed Hoon
        -h                  Show usage info
        -i <path-to-file>   Read input from file
        -j                  Jam only
        -k                  Execute command using "khan-eval" thread
        -o <path-to-file>   Output to file
        -p                  Filter failure stack traces from result and pretty-print them to stderr
        -x                  Jam to hex
```
Where:
- `-e` reuses a pre-jammed noun
- `-j` creates a pre-jammed noun
- `-k` calls the input Hoon using the "khan-eval" thread, which parses
the Hoon as thread code and calls it from a child thread
- `-p` returns failed threads as just `%.n`, printing the stacktrace to
`stderr` instead of returning it to click

Will add a commit with unit tests shortly. The following commands
operate correctly:
```
./bin/click ~/Urbit/test-piers/zod '42'
./bin/click ~/Urbit/test-piers/zod $'(cat 3 \\\'abc\\\' \\\'def\\\')'
./bin/click ~/Urbit/test-piers/zod '(gad 2 2)' '/lib/gad/hoon'
./bin/click -k ~/Urbit/test-piers/zod $'=/  m  (strand ,vase)  ;<  ~  bind:m  (poke [~zod %hood] %helm-hi !>(\\\'\\\'))  (pure:m !>(\\\'success\\\'))'
./bin/click -k -p ~/Urbit/test-piers/zod $'=/  m  (strand ,vase)  ;<  vax=vase  bind:m  (eval-hoon [%zpzp ~] ~)  (pure:m !>(\\\'success\\\'))'

./bin/click -j ~/Urbit/test-piers/zod '42'
./bin/click -jx ~/Urbit/test-piers/zod '42'

./bin/click -o tmp.txt ~/Urbit/test-piers/zod '42'

./bin/click -i txt/cat.txt ~/Urbit/test-piers/zod
./bin/click -k -i txt/poke.txt ~/Urbit/test-piers/zod
./bin/click -k -j -i txt/poke.txt -o /tmp/poke.jam ~/Urbit/test-piers/zod && ./bin/click -e -i /tmp/poke.jam ~/Urbit/test-piers/zod
./bin/click -k -j -i txt/err.txt -o /tmp/err.jam ~/Urbit/test-piers/zod && ./bin/click -e -i /tmp/err.jam -p ~/Urbit/test-piers/zod
```
Do not merge yet.
Resolves #278 

I moved docking from `u3_king_done` to `_boothack_cb` to make sure ship
is always docker by default.

There are some unknowns:

- Should it happen before or after `_king_doom`?
- I removed the "hack", as I believe `_boothack_cb` will only be called
once. Is that okay?
This PR adds a command line option that allows the user to set the time
in minutes between snapshots. This helps resolve the issues discussed in
https://github.com/urbit/urbit/issues/4150.

By allowing the user to set the time between shapshots it lets them
decide how long they want to possibly wait to replay events. This also
may allow urbit to run on an SD Card (which has ~10,000 write cycles.);
reducing the cost to home host.
Resolves #224

When rotating between various combinations of build configs defined in
/.bazelrc
time to rebuild is significantly reduced by scoping their effects to
only the
vere src via `--per_file_copt`.

whatever permutations of the following args when building vere:

```
bazel build ARGS :urbit

ARGS:
--config=dbg                    # -O0 opt and -g3 dbg symbols
--config=mem_dbg                # eq to -DU3_MEMORY_DEBUG
--config=cpu_dbg                # eq to -DU3_CPU_DEBUG
```

The `--config=[mem|cpu]_dbg` is a necessary evil indirection for faster
builds
when iteratively switching between mem and or cpu debugging since
passing the
macro define flag to bazel like: `bazel build --copt="-DU3_CPU_DEBUG"
:urbit`
sends that macro define down to all dependencies -- thus rebuilding the
entire
project rather than just the vere source.

Still feels a bit fragile, but this is the smallest easiest fix.
mopfel-winrux and others added 20 commits April 5, 2023 14:56
Resolves #304 

This location is temporary housing until a separate repo for Urbit tools
exists
- Updates README (here and in DockerHub)
- Fixes bug that posted README updates to `tloncorp/urbit` instead of
`tloncorp/vere`
- Moves DockerHub deploy tasks in build to separate workflow
- Adds a workflow which allows on-demand GitHub Action to redeploy
Docker image to DockerHub
Adds `--gc` to the boot phase of the fake ship tests as the binary we
build for them already uses the correct `copts`.

Resolves #332.
Resolves failing GitHub build action
Moved to urbit/tools
@pkova pkova requested a review from a team as a code owner April 24, 2023 16:39
@pkova pkova merged commit 590f427 into release Apr 25, 2023
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

9 participants