freenode/#shirakumo - IRC Chatlog
Search
20:08:57
Shinmera
also, do you want to join the shirakumo team? Could give you commit bit for all the lichat repos.
20:10:12
SAL9000
if the server downcases "destructively" anyway, then client doesn't need to care (can just downcase too)
20:10:48
Shinmera
whatever the case the server definitely doesn't store the name as created and then "fix" it for you to send that back.
20:11:02
Shinmera
I think lookups are just case-insensitive, so the update would send whatever the user typed.
20:11:32
SAL9000
right, so it's case-insensitive (non-destructive), as opposed to case-folding (destructive)
20:14:09
SAL9000
I think a custom-map would be the 'pythonic' thing to do, since then client.channels would still Just Work(tm)
20:15:08
Colleen
docs.python.org/3/library/c... Website (HTML), Title: collections.abc â Abstract Base Classes for Containers — Python 3.9.1 documentation
20:22:54
SAL9000
tl;dr python2 has been deprecated for years, and now officially sunsetted, but people STILL USE IT
20:25:18
SAL9000
pro is like 2x the price of home, but you can refuse updates for much longer if you want
20:25:35
selwyn
unfortunately all of the good open source voice recognition software is in python2 for the moment
20:26:47
SAL9000
ditto un-activated... apparently after enough time has passed it starts turning features off
20:26:55
selwyn
i did the azure thing and it works great, it tends not to give you much choice in updates afaict
20:27:40
SAL9000
on pro I can -- if I really want to -- tell non-security updates to go hang for 365 days
20:28:29
SAL9000
delaying the update = more time for the guinea pigs to pick up on the issues and get the update pulled/patched
20:28:51
SAL9000
because who needs QA when one has users willing to pay for the privilege of being alpha-testers? /s
20:31:51
Shinmera
https://lh3.googleusercontent.com/proxy/fLoNEe8YYEMzK-VbstrtxZ3ZAMR3Neqswq6um2TEVpXVZKY1VGD5LaReKsHLLEDPxIj3t3eN9EDAOlvIkzei1DRORAs7YBrfhs0hpXvezRAsZEcSdUxXTJns-MQSRBmvYlmEUe9z_j4zVn5yCYj6Uhblqz1jan-pTcU
21:10:02
Shinmera
Personally I woulda just .lower() d things on lookup and insert and be done with it.
21:18:30
SAL9000
unless something's changed since I did weechat scripting last time (years ago), there's basically "IRC-like" buffers and "freeform" buffers
21:20:01
gingerale
I really should come up with a task list of some sort where to also write notes in.
21:31:14
SAL9000
Shinmera: poked #weechat but quick check of API docs seems to indicate no editing unless it's freeform. IRC doesn't allow editing messages, so it makes sense...
21:36:40
gingerale
There's a very nice diff library for JavaScript for comparing two blocks of text.
21:38:15
SAL9000
given that there are a grand total of 2 weechat scripts in js, I'm guessing no-one is going to have that feature installed :p
21:44:32
Shinmera
like, instead of using update classes could just use the list and a custom dispatch.
21:46:15
Shinmera
Another nice extension to lichat would be E2E encryption. I'm scared of trying that though as I don't think I know enough to make a good proposal for that kinda thing.
21:48:56
SAL9000
basically, a protocol for doing E2E on top of existing chat systems e.g. IRC private messaging
21:49:22
Colleen
otr.cypherpunks.ca/Protocol... Website (HTML), Title: Off-the-Record Messaging Protocol version 3
21:52:48
Shinmera
The problem with this I guess is that it only encrypts the payload. You'd still be able to snoop the from and other update fields.
21:53:45
Shinmera
Whereas every lichat communication is over a channel with arbitrary number of participants.
21:54:47
Shinmera
the from etc fields don't matter as long as we already have an established connection.
21:55:09
Shinmera
In fact in Lichat 2.0 you can leave out from entirely and the server will tack it on for you.
21:55:37
SAL9000
although having a from could make sense if you want to (later) implement gateways/proxies
21:57:56
Shinmera
Another problem the from was meant to solve was sharding. Another server would be another user with an "impostor" permission so that it could send messages on behalf of others.
21:58:48
Shinmera
But that needs some more thought (how to merge user and channel lists and keep them in sync, etc.)
22:01:13
Shinmera
anyway, considering my tests with exlichat earlier today I don't think I need to work on that extension for a long time :)
22:05:26
Shinmera
nah, just leaving it be for now, perf seems far more than acceptable for what I need.
22:05:46
SAL9000
"over 2 million connections (Erlang on FreeBSD)" yes... and then "10-12 million connections (Java)"
22:07:59
Shinmera
we say as we consider an elixir server and talk about python and javascript clients
22:36:59
SAL9000
loading a trivial weechat script which loads pylichat already causes warning messages :p
22:37:07
SAL9000
"context.c:55: warning: mpd_setminalloc: ignoring request to set MPD_MINALLOC a second time"
22:37:20
SAL9000
https://stackoverflow.com/questions/49757245/fixing-warning-message-related-to-mpd-setminalloc
22:37:21
Colleen
stackoverflow.com/questions... Website (HTML), Title: python - fixing warning message related to mpd_setminalloc - Stack Overflow
22:48:38
Colleen
github.com/Shirakumo/weelic... Website (HTML), Title: weelichat/lichat.py at main · Shirakumo/weelichat · GitHub
22:52:05
Shinmera
I'll hold off on pushing a new version to pypi until this works so we don't have to bump versions too much.
23:19:10
Shinmera
SAL9000: do you have an idea already how to handle the connection? Does weechat offer some periodic callback you can use or something?
23:19:29
Shinmera
would still introduce latency, but not sure how else to make it "wake up on arrival"
23:19:31
SAL9000
Shinmera: there's periodic callbacks but I'm hoping to hook into the weechat select loop