2021-03-10 10:46:26 +00:00
|
|
|
design ideas
|
|
|
|
---
|
|
|
|
|
|
|
|
- instead of dumb search with `/`, have like an omnibar with recency info built in?
|
|
|
|
- this requires some kind of cache and text search
|
|
|
|
- tmux-like windows
|
|
|
|
- maybe some of the familiar commands? `<C-b %>` for split for ex,
|
|
|
|
- gluon for scripting language
|
|
|
|
- hook into some global keybinds/hooks struct
|
|
|
|
- transparent self-updates?? this could work with some kind of deprecation scheme for the config files
|
|
|
|
- for ex: v1 has `{ x: Int }`, v2 has `{ [deprecated] x: Int, x2: Float }` and v3 has `{ x2: Float }`
|
|
|
|
this means v1 -> v2 upgrade can be done automatically but because there are _any_ pending deprecated values being used
|
|
|
|
it's not allowed to automatically upgrade to v3
|
|
|
|
|
2021-02-14 23:49:54 +00:00
|
|
|
imap routine
|
|
|
|
---
|
|
|
|
|
|
|
|
- basic tcp connection is opened
|
|
|
|
- if tls is "on", then immediately perform tls handshake with the server
|
|
|
|
- if tls is "starttls", check starttls capability
|
|
|
|
- if the server doesn't have starttls capability, die and report to the user
|
|
|
|
- if the server _does_ have starttls, exit the read loop and perform tls handshake over current connection
|
|
|
|
- at this point, tls should be figured out, so moving on to auth
|
|
|
|
- check if the auth type that the user specified is in the list of auth types (prob support plain and oauth2?)
|
|
|
|
|
2021-02-21 15:11:48 +00:00
|
|
|
|
|
|
|
list of shit to do
|
|
|
|
---
|
|
|
|
|
|
|
|
- [x] starttls impl
|
|
|
|
- [ ] auth impl
|
|
|
|
- [ ] auth plain impl
|
|
|
|
- [ ] fetch impl
|