Skip to content

Commit 18067d2

Browse files
authored
Merge pull request #1 from arborchat/master
merging current state of root node
2 parents fa86b16 + ab3bda6 commit 18067d2

26 files changed

+872
-83
lines changed

.github/ISSUE_TEMPLATE/bug-report.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
title: 'Bug report'
3+
labels: bug
4+
---
5+
6+
## Expected Behavior
7+
8+
1.
9+
1.
10+
1.
11+
12+
13+
## Current Behavior
14+
15+
1.
16+
1.
17+
1.
18+
19+
20+
## Other Observations
21+
22+
-
23+
-
24+
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
title: 'Feature Request'
3+
labels: enhancement
4+
---
5+
6+
## Story
7+
8+
As a `user`
9+
I want `this feature`
10+
so that `it does a thing.`
11+
12+
13+
## Feature Explanation
14+
15+
16+
## Use-cases
17+
18+
Example use-cases addressed by this feature.
19+
20+
-
21+
-
22+
-
23+
24+
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
title: 'Bug Fix'
3+
labels: bug
4+
---
5+
6+
Fixes # .
7+
8+
Erase all that do not apply:
9+
- This PR modified command line flags/arguments
10+
- This PR modified configuration file options
11+
- This PR modified keybindings (either changing defaults or adding new actions)
12+
- This PR modified the visible UI
13+
14+
Changes proposed:
15+
16+
-
17+
-
18+
-
19+
20+
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
title: 'Feature Implementation'
3+
labels: enhancement
4+
---
5+
6+
Implements # .
7+
8+
Erase all that do not apply:
9+
- This PR modified command line flags/arguments
10+
- This PR modified configuration file options
11+
- This PR modified keybindings (either changing defaults or adding new actions)
12+
- This PR modified the visible UI
13+
14+
## Feature explanation
15+
16+
17+

.travis.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,5 @@ install:
55
- dep ensure
66
script:
77
- go test -v -cover ./...
8+
- for os in linux darwin windows openbsd; do echo "building for $os" && env GOOS="$os" go build -o /dev/null; done
9+
- ./build-releases.sh

Gopkg.lock

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Gopkg.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727

2828
[[constraint]]
2929
name = "github.com/arborchat/arbor-go"
30-
version = "0.1.3"
30+
version = "0.1.8"
3131

3232
[[constraint]]
3333
name = "github.com/bbrks/wrap"

README.md

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,21 @@ This is muscadine's (and arbor's) killer feature. You can actually see the conte
2020
in. If someone replies to a much earlier message, you can tell that they are doing so. This is a marked improvement
2121
over the current clutter that can build up during group chat sessions.
2222

23+
You may also notice the `[join]` and `[quit]` messages. Since Arbor does not track online users, Muscadine sends these
24+
messages to inform the chat of who is connected.
25+
26+
The very first line in the screenshot contains some extra information about the current session:
27+
28+
- Shown in the screenshot
29+
- `Selected: Mon Jan 7 14:34:53 EST 2019`: shows the timestamp of the selected message (the red line in the screenshot)
30+
- `Connected`: indicates Muscadine is connected to an Arbor server
31+
- `all known threads complete`: indicates the entire chat history is loaded by the client
32+
- Not shown in the screenshot
33+
- `Connecting...`: indicates Muscadine is trying to connect to an Arbor server
34+
- `3+ broken threads, q to query`: The `3` indicates how many messages are missing their history. `q to query` is a
35+
reminder to press q in order to ask the server for missing information. This key usually has no effect since Muscadine
36+
automatically queries missing history on startup.
37+
2338
## What's a Muscadine?
2439

2540
Muscadine is named after [muscadine grapes](https://en.wikipedia.org/wiki/Vitis_rotundifolia), a wild grape native to the
@@ -47,15 +62,15 @@ The keybindings are:
4762
- History Mode
4863
- up/down/j/k - scroll the selected message up and down
4964
- left/right/h/l - scroll the viewport (not the cursor) up and down
50-
- enter/i - start a reply to the selected message
51-
- r - reply to the earliest known message (the root message)
65+
- enter/i/r - start a reply to the selected message
66+
- n - reply to the earliest known message (the root message)
5267
- home/g - jump to top of history
5368
- end/G - jump to bottom of history
5469
- q - query the server for any missing chat history (only necessary if top status bar indicates)
5570
- Compose Mode:
5671
- enter - send your message (unless in paste mode)
5772
- ctrl+p - toggle "paste mode", in which the enter key will *not* send the message, but instead type a newline
58-
- ctrl+\ - return to history mode
73+
- escape - return to history mode
5974
- Global:
6075
- ctrl+c - quit
6176

archive/archive.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func (a *Archive) Needed(n int) []string {
5353
if n >= len(needed) {
5454
return needed
5555
}
56-
return needed[len(a.chronological)-n:]
56+
return needed[len(needed)-n:]
5757
}
5858

5959
// Has returns whether the archive contains a message with the given ID.
@@ -127,15 +127,15 @@ func (a *Archive) Persist(storage io.Writer) error {
127127
return encoder.Encode(a.chronological)
128128
}
129129

130-
// Load reads messages from the io.Reader. It expects those messages to be
130+
// Populate reads messages from the io.Reader. It expects those messages to be
131131
// in the format written by Archive.Persist(), and should only be used on
132132
// io.Readers that were populated with data from a call to Persist(). It
133-
// is legal to call Load() more than once to load the contents of more than
133+
// is legal to call Populate() more than once to load the contents of more than
134134
// one io.Reader into the Archive. This will always be performed nondestructively
135135
// when possible. Conflicting data (multiple different messages with the same
136136
// ID) will cause an error. All data from a source containing a conflict will
137137
// be rejected, so io.Readers loaded first take precedence.
138-
func (a *Archive) Load(storage io.Reader) error {
138+
func (a *Archive) Populate(storage io.Reader) error {
139139
if storage == nil {
140140
return fmt.Errorf("Unable to load from nil")
141141
}

0 commit comments

Comments
 (0)