]> git.scottworley.com Git - reliable-chat/log
reliable-chat
12 years agoTake UI creation out of rcaddmessagetohistory
Scott Worley [Sat, 4 Aug 2012 18:23:08 +0000 (11:23 -0700)]
Take UI creation out of rcaddmessagetohistory

12 years agoDisplay a server count for each message
Scott Worley [Fri, 3 Aug 2012 19:41:18 +0000 (12:41 -0700)]
Display a server count for each message

12 years agoFeed the median-timestamp updates back into the UI
Scott Worley [Fri, 3 Aug 2012 19:22:48 +0000 (12:22 -0700)]
Feed the median-timestamp updates back into the UI

12 years agoPut timestamps in a separate span
Scott Worley [Fri, 3 Aug 2012 19:22:18 +0000 (12:22 -0700)]
Put timestamps in a separate span

This makes them easier to update separately, and also easier to style.

12 years agoFix odd case of median
Scott Worley [Fri, 3 Aug 2012 19:20:43 +0000 (12:20 -0700)]
Fix odd case of median

12 years agoPreserve history's in-order invariant
Scott Worley [Fri, 3 Aug 2012 18:51:03 +0000 (11:51 -0700)]
Preserve history's in-order invariant

In rcupdatemessagetime().

12 years agoKeep messages sorted by timestamp
Scott Worley [Fri, 3 Aug 2012 18:30:52 +0000 (11:30 -0700)]
Keep messages sorted by timestamp

This causes messages that appear on some servers and not others to be
correctly interleaved on initial load.

Note: this is incomplete. rcupdatemessagetime() can break history's
always-in-sorted-order invariant by changing Time after messages have
been inserted.  Fixing this is next.

Consider replacing rcaddmessagetohistory()'s simple backwards linear scan
with a binary search in the unlikely event that its performance is ever
noticed.

12 years agoFix initial servertimes entry.
Scott Worley [Fri, 3 Aug 2012 17:48:05 +0000 (10:48 -0700)]
Fix initial servertimes entry.

(Use the value of the variable server, not the string "server".)

12 years agoCalculate the median of the server timestamps
Scott Worley [Fri, 3 Aug 2012 17:43:26 +0000 (10:43 -0700)]
Calculate the median of the server timestamps

This isn't used yet.  Next: rewrite history each time this is updated.

12 years agoKeep server timestamps for all copies
Scott Worley [Fri, 3 Aug 2012 16:02:45 +0000 (09:02 -0700)]
Keep server timestamps for all copies

Note: This allows a replay attack where a malicious user can cause a
message to appear to be sent later than it was by re-sending it.
I'm not going to worry about any of these types of issues until the
crypto is in place, which will guard against most of them.

12 years agoDocumentation: What's in a message
Scott Worley [Fri, 3 Aug 2012 15:41:15 +0000 (08:41 -0700)]
Documentation: What's in a message

12 years agoKeep messages around as values in seen.
Scott Worley [Fri, 3 Aug 2012 15:27:05 +0000 (08:27 -0700)]
Keep messages around as values in seen.

12 years agoPass message on *after* setting since.
Scott Worley [Fri, 3 Aug 2012 07:58:03 +0000 (00:58 -0700)]
Pass message on *after* setting since.

rcreceivemessages() modifies the message.  The fetch loop needs
to extract the final timestamp for since= feedback before it is
modified.

12 years agoTimestamps for incoming messages
Scott Worley [Fri, 3 Aug 2012 07:45:01 +0000 (00:45 -0700)]
Timestamps for incoming messages

Plan: Outgoing messages will hang around at the bottom and have the
timestamp added when their echos come back from the servers.  This
will happen automatically when we start recalculating the timestamp
on each server arrival (part of switching from using first-timestamp
to median-timestamp).

12 years agoMinor syntax cleanup
Scott Worley [Fri, 3 Aug 2012 07:26:19 +0000 (00:26 -0700)]
Minor syntax cleanup

12 years agorcaddmessagetohistory() accepts a message object
Scott Worley [Fri, 3 Aug 2012 07:20:00 +0000 (00:20 -0700)]
rcaddmessagetohistory() accepts a message object

Not just a string.

12 years agoA little tiny bit of documentation
Scott Worley [Fri, 3 Aug 2012 07:15:13 +0000 (00:15 -0700)]
A little tiny bit of documentation

12 years agoStreamline /command checking a little
Scott Worley [Fri, 3 Aug 2012 07:13:30 +0000 (00:13 -0700)]
Streamline /command checking a little

12 years agoLeave out the anonymous nick reminders for now
Scott Worley [Fri, 3 Aug 2012 07:06:44 +0000 (00:06 -0700)]
Leave out the anonymous nick reminders for now

Status messages complicate some upcoming history representation rework.
Also, theer's a plan for something better than this simple nagging.

12 years agoRemove useless postMessage call
Scott Worley [Fri, 3 Aug 2012 06:23:37 +0000 (23:23 -0700)]
Remove useless postMessage call

Oops.  This is left over from when this used to be in /frame.

12 years agoSend old clients a deprecation warning
Scott Worley [Fri, 3 Aug 2012 05:26:27 +0000 (22:26 -0700)]
Send old clients a deprecation warning

/frame is no longer used by modern clients.

12 years agoLink to the IRC,Better diagram in the README
Scott Worley [Fri, 3 Aug 2012 04:20:12 +0000 (21:20 -0700)]
Link to the IRC,Better diagram in the README

The diagram does pretty much sum up the project.

12 years agoDocumentation digram
Scott Worley [Fri, 3 Aug 2012 04:08:15 +0000 (21:08 -0700)]
Documentation digram

Originally created 2011-09-26.

12 years agoAdd license (AGPL)
Scott Worley [Fri, 3 Aug 2012 03:46:01 +0000 (20:46 -0700)]
Add license (AGPL)

12 years agoMerge skitch's changes.
Scott Worley [Fri, 3 Aug 2012 01:38:31 +0000 (18:38 -0700)]
Merge skitch's changes.

Conflicts:
webclient/rc.html

12 years agoDark color scheme
Jason Hibbs [Fri, 3 Aug 2012 01:35:05 +0000 (18:35 -0700)]
Dark color scheme

12 years agoMove the status indicators to the right.
Jason Hibbs [Fri, 3 Aug 2012 01:34:10 +0000 (18:34 -0700)]
Move the status indicators to the right.

This leaves room for Chrome's "Waiting for ..." status float.

12 years agoScroll history without input. Input above status
Jason Hibbs [Fri, 3 Aug 2012 01:32:27 +0000 (18:32 -0700)]
Scroll history without input.  Input above status

Scroll the history without the input line scrolling away.
Move the input line above the status line.

12 years agoBetter visibility for the server status indicators
Jason Hibbs [Fri, 3 Aug 2012 01:29:41 +0000 (18:29 -0700)]
Better visibility for the server status indicators

12 years ago/me support
Jason Hibbs [Fri, 3 Aug 2012 01:05:32 +0000 (18:05 -0700)]
/me support

12 years agoAuto-focus the input field.
Jason Hibbs [Fri, 3 Aug 2012 00:35:38 +0000 (17:35 -0700)]
Auto-focus the input field.

12 years agoFetch with direct cross-origin XMLHttpRequests
Scott Worley [Wed, 1 Aug 2012 05:40:15 +0000 (22:40 -0700)]
Fetch with direct cross-origin XMLHttpRequests

I swear I tried this before and it didn't work.

12 years agoMake /nick reminder a little more visible
Scott Worley [Wed, 1 Aug 2012 05:15:21 +0000 (22:15 -0700)]
Make /nick reminder a little more visible

12 years agoTrack /frame usage.
Scott Worley [Wed, 1 Aug 2012 05:09:02 +0000 (22:09 -0700)]
Track /frame usage.

We're about to depricate it, so it'd be nice to know when users are
done using it.

12 years agoActually use the command line flags
Scott Worley [Wed, 1 Aug 2012 04:56:22 +0000 (21:56 -0700)]
Actually use the command line flags

12 years agoMove javascript and css into the html file.
Scott Worley [Mon, 30 Jul 2012 06:32:04 +0000 (23:32 -0700)]
Move javascript and css into the html file.

12 years agoMore "var" in variable declarations.
Scott Worley [Mon, 30 Jul 2012 06:28:38 +0000 (23:28 -0700)]
More "var" in variable declarations.

12 years agoImplement nicknames
Scott Worley [Mon, 30 Jul 2012 05:33:27 +0000 (22:33 -0700)]
Implement nicknames

12 years agoActual server list
Scott Worley [Mon, 30 Jul 2012 04:09:22 +0000 (21:09 -0700)]
Actual server list

12 years agoStatus bar indicators
Scott Worley [Mon, 30 Jul 2012 04:07:45 +0000 (21:07 -0700)]
Status bar indicators

12 years agoBidirectional communication!
Scott Worley [Mon, 30 Jul 2012 03:58:58 +0000 (20:58 -0700)]
Bidirectional communication!

This is actually pretty awful.  In order to fetch _data_ cross-origin,
I have to run foreign _code_ and have it window.parent.postMessage().
This seems really, really wrong.

12 years agoSend messages with <img src="...">
Scott Worley [Sun, 29 Jul 2012 18:22:35 +0000 (11:22 -0700)]
Send messages with <img src="...">

12 years agoDon't autocomplete in the input field.
Scott Worley [Sun, 29 Jul 2012 18:22:07 +0000 (11:22 -0700)]
Don't autocomplete in the input field.

12 years agoThis 'form' is never submitted.
Scott Worley [Sun, 29 Jul 2012 05:24:14 +0000 (22:24 -0700)]
This 'form' is never submitted.

12 years agoStart poking at the web client.
Scott Worley [Sun, 29 Jul 2012 04:25:27 +0000 (21:25 -0700)]
Start poking at the web client.

12 years agoFactor out copy/pasted message testing
Scott Worley [Sun, 29 Jul 2012 01:44:38 +0000 (18:44 -0700)]
Factor out copy/pasted message testing

12 years agoAdd an id to messages
Scott Worley [Sun, 29 Jul 2012 00:26:37 +0000 (17:26 -0700)]
Add an id to messages

This is how clients de-dupe.

12 years agoTest with since == message time
Scott Worley [Sat, 28 Jul 2012 21:32:31 +0000 (14:32 -0700)]
Test with since == message time

12 years agoTest partial fetch
Scott Worley [Sat, 28 Jul 2012 19:38:34 +0000 (12:38 -0700)]
Test partial fetch

12 years agogofmt
Scott Worley [Sat, 28 Jul 2012 19:14:58 +0000 (12:14 -0700)]
gofmt

12 years agoTest multiple listeners
Scott Worley [Sat, 28 Jul 2012 19:14:25 +0000 (12:14 -0700)]
Test multiple listeners

12 years agoTest fetch blocking
Scott Worley [Sat, 28 Jul 2012 19:06:43 +0000 (12:06 -0700)]
Test fetch blocking

Fetch blocks until message is sent.
Fetches initiated before a speak return the later-spoken value.

12 years agoCounters!
Scott Worley [Sat, 28 Jul 2012 18:51:42 +0000 (11:51 -0700)]
Counters!

12 years agoAllow port to be specified. Default resonably.
Scott Worley [Sat, 28 Jul 2012 18:38:53 +0000 (11:38 -0700)]
Allow port to be specified.  Default resonably.

12 years agoShut down the message store after each test
Scott Worley [Sat, 28 Jul 2012 18:28:37 +0000 (11:28 -0700)]
Shut down the message store after each test

12 years agoCopy less: pass messages by pointer
Scott Worley [Sat, 28 Jul 2012 18:23:18 +0000 (11:23 -0700)]
Copy less: pass messages by pointer

12 years agoAdd a test
Scott Worley [Sat, 28 Jul 2012 17:45:00 +0000 (10:45 -0700)]
Add a test

12 years agoFetch returns a list of messages
Scott Worley [Sat, 28 Jul 2012 17:34:50 +0000 (10:34 -0700)]
Fetch returns a list of messages

Not a thing that contains a list of messages.

12 years agoWait when since == last message time
Scott Worley [Sat, 28 Jul 2012 17:33:18 +0000 (10:33 -0700)]
Wait when since == last message time

12 years agoDecode URL parameters
Scott Worley [Sat, 28 Jul 2012 17:24:14 +0000 (10:24 -0700)]
Decode URL parameters

12 years agoFirst cut at minimum-functionality server
Scott Worley [Sat, 28 Jul 2012 05:45:54 +0000 (22:45 -0700)]
First cut at minimum-functionality server