Age | Commit message (Collapse) | Author |
|
add connection state tracked per-stream, add explicit TwitterProfile
mapped to names that can be used for accounts. default names are the
handle of the corresponding twitter account.
partition out user Credential to be per TwitterProfile, so fav, reply,
etc, all come from the selected account. Multiplex twitter connections
and message streams across chan (instead of earlier plan, which was to
have one chan per thread)
|
|
also disable rendering of delete events
|
|
this is, hopefully, the start of support for correctly wrapping lines
with ANSI control codes included. additionally, hopefully the start of
supporting coloring @'s in tweets.
|
|
|
|
|
|
|
|
|
|
|
|
commiting app oauth secret
|
|
|
|
|
|
|
|
|
|
profile corruption was trailing json left by not truncating when profile shrinks in size
|
|
* show interface at startup
* report when stream is connected at startup
|
|
also fix bug where cached user info takes precedence over (possibly
updated) api json user info
|
|
|
|
move DisplayInfo into ... display
flush output, duh
|
|
|
|
|
|
|
|
kind of.
add DisplayInfo struct that eventually can be used for rendering to any
particular interface. I care primarily about rendering to a CLI, so.
to support this: many instances of rendering with println!() are moved
to at least be orchestrated by display::paint, which will eventually
become smart enough to handle a reserved area for state notifications
from the client, and buffer input nicely, ....
more code moved over to use TweetId instead of bare strings
because DisplayInfo is currently a member on TwitterCache, any cases of
writing to DisplayInfo also involve writing to TwitterCache, which means
TwitterCache is mut like... everywhere.
Also, invalid TweetId in IdConversions ends up logging, meaning anything
calling that conversion requires a mut TwitterCache, by the above
paragraph.
|
|
|
|
split included @, meaning no handle started with @, so get_mentions() returned empty vec
|
|
|
|
escape more stuff
avoid possible breakage if we dont have the fav of a retweet
|
|
|
|
|
|
|
|
|
|
double-post bug if you are the author of the quoting tweet because you see the event AND your tweet in your feed
|
|
mirrors typical twitter use
|
|
extended mode now puts text in full_text, not in extended_tweet, an inner object
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
automatically pick out mentions and include them in replies
|
|
also adjust \x0d to "\r" so \r in tweets doesn't mangle the displayed
text
|
|
* fix a bunch of warnings
* modularize commands
* colorize rendered tweets
* properly url-encode most punctuation (janky as hec)
* support explicit "reconnect" command if twitter stream dropped
* prelim support for DMs
* get user's handle on connect (to prevent incorrect threading attempts)
* render quoted tweets sanely
|
|
also move application to main thread, twitter connection to.. not main
thread.
now when twitter fails to connect or the connection drops, the
application continues ticking along.
|
|
it might even grow to multiple files one day
|
|
|
|
|
|
render slightly intelligently, too
|
|
Stream<Item=Vec<u8>> delimited by byte-of-choice (here 0x0a)
|
|
(i gotta go back and look at futures::stream::iter and into_iter() vs iter())
and try doing this myself again until i can follow the types a lil better
|