~reedwade/wee-matter-devel

4 2

Single file plugin and forks differences

Details
Message ID
<CBQG7WRZA08F.DDRBC8TRYR8Q@Guinguette>
DKIM signature
pass
Download raw message
Hi,

I wanted to contribute a few things to this plugin.

Most notably I would like to have the plugin as a single Python file so
that it can be added alongside all the other Weechat scripts [1] making
it easier for everybody to discover, install and manage it.

I understand that developing it as a single file is not really ideal but
in the end this is what is expected on the Weechat ecosystem side.

My preferred option would be to keep it multiple files as it is in the
repo and see if we can export it as a single file for the Weechat script
purpose. But otherwise managing it as a single file should not be too
difficult. It would be 2000+ lines currently. As a reference wee-slack
[2] have 6000+ lines and seems manageable given all the activity it has.

What do you think of it?

But further than this, I'm not sure from which fork to start from.

The fork from @midgard seems better to me given what I see in its README
(only loading channels when you switch to them is a must IMHO) and in
its last update message [3] listing many improvements and fixes made.
But since then the repo from @reedwade has had further changes (maybe
including some of the ones listed there?).

I'm afraid they've diverged a lot. Can you update me on the status of
those forks differences?

I understand that for example there could be a disagreement on whether
to load all channels at start or only on switch but I think this is a
good candidate to have as a configuration option rather than forcing a
fork.

[1] https://github.com/weechat/scripts
[2] https://github.com/wee-slack/wee-slack/blob/master/wee_slack.py
[3]
https://lists.sr.ht/~reedwade/wee-matter-devel/%3C160570723430.28229.14412118992131708753%40localhost%3E

--
Damien Tardy-Panis
Details
Message ID
<2G4A1QDQD8TXL.2T8YC744E81G8@stacyharper.net>
In-Reply-To
<CBQG7WRZA08F.DDRBC8TRYR8Q@Guinguette> (view parent)
DKIM signature
pass
Download raw message
Hi !

> What do you think of it?

Honestly I'm not seing the point on being alongside all the other
weechat scripts. But if someone want to package wee-matter this way, I'm
not seeing a problem. It should not be hard to do.

> Can you update me on the status of those forks differences?

Midgard made some changes initially cause he had issues with too many
active channels (too many requests). Now the buffer loading take a
longer time as each requests are enqueued and delayed. We do not
have any hydratation antispam issue.

I'm not interested in lazy loading buffers. It would be harder to handle
things like notifications or to works correctly with other addons.
Matching the IRC backend behavior looks easier and more reliable to me.

I pulled some of the Midgard work after his email. I'm not aware of
futher divergences but I hope he made some :D The lazy loading vs
delayed loading probably is the most notable one.

I made some fixes and few feature after that. Most notably, I handled
some missing websocket events. Those patchs really are required for the
backend to works reliably.

> I think this is a good candidate to have as a configuration option
> rather than forcing a fork.

Having a configurable toggle would require way more complexity that
I'd like to avoid. I prefer the fork approach or to have a listed
applyable patch.
Details
Message ID
<2DUMRL3C2WMDD.3KLI856GV4BR1@stacyharper.net>
In-Reply-To
<CBQG7WRZA08F.DDRBC8TRYR8Q@Guinguette> (view parent)
DKIM signature
pass
Download raw message
More about lazy loading :

The thing is that having 1 or 100 channels really make no difference
when fully loaded. We only got one websocket. So I prefer to load them
all.

Plus, I think we should prefer leave or mute a channel in Mattermost
than lazy load them. Some websockets events probably are missing for
this to works.
Details
Message ID
<CC8N99MEGYR0.3BB892JVFSAMO@Guinguette>
In-Reply-To
<2G4A1QDQD8TXL.2T8YC744E81G8@stacyharper.net> (view parent)
DKIM signature
pass
Download raw message
> Honestly I'm not seing the point on being alongside all the other
> weechat scripts.

Previously I was locally setting up the plugins I use by fetching a
single file for each of them. It was simple because "all" plugins in the
weechat ecosystem follow this pattern. But now I've changed my setup to
use a package for each plugin. So this single file plugin is now low
priority for me personally.

> I'm not interested in lazy loading buffers. It would be harder to
> handle things like notifications or to works correctly with other
> addons. Matching the IRC backend behavior looks easier and more
> reliable to me.

Ok clear. I've been using the plugin for a few weeks now and not having
lazy loading is for now at least not critical, only causing a few minor
annoyances now and then.

--
Damien Tardy-Panis
Details
Message ID
<3INYSZLBSQILE.3C00C3NVA9JDE@stacyharper.net>
In-Reply-To
<CC8N99MEGYR0.3BB892JVFSAMO@Guinguette> (view parent)
DKIM signature
pass
Download raw message
> Ok clear. I've been using the plugin for a few weeks now and not having
> lazy loading is for now at least not critical, only causing a few minor
> annoyances now and then.

I agree that it still exists some minors issues with the current state.
By example, if a hydratation query fail, the buffer stay in a buggy
state where we drop any new posts. It happen only one or two time to me
but tend to happen more when the networks is less reliable.

I'll have to fix thoses inconsistent state at one time.
Reply to thread Export thread (mbox)