Git Product home page Git Product logo

Comments (5)

calzoneman avatar calzoneman commented on July 26, 2024

Looks like this was commented out in 8800f81. Are there plans to support it again in the future?

from weechat-discord.

khyperia avatar khyperia commented on July 26, 2024

Yeah... might have to do significant refactoring, though. See here :(

from weechat-discord.

calzoneman avatar calzoneman commented on July 26, 2024

I see; that's unfortunate. I'll follow that issue as well. If I knew Rust at all I'd offer to help out.

from weechat-discord.

Aanok avatar Aanok commented on July 26, 2024

I've actually been tinkering with this; at the moment I have some code that pulls on init the last N messages from each channel and prints them to the corresponding buffer with the correct timestamp. Further steps are mostly getting the last read message from each channel in order to pull the logs from there onward (it should be listed in the initial ReadyEvent, I think) and then moving everything to a separate thread. An option to toggle this behavior would also probably be in order.

Then it would be reasonable to implement issue #9 to have a complete synchronization mechanism, but that's going to be an adventure. To be honest it's already been an adventure, since I've just picked up Rust with this :p

from weechat-discord.

Aanok avatar Aanok commented on July 26, 2024

Rather, more than using a thread to load everything asynchronously at startup (which was my understanding of what you meant on the other thread, @khyperia ), it might be nice to load the backlog only when the corresponding buffer is actually accessed in WC by the user. It would cause a lag spike at that moment, sure, but it should be tolerable and would avoid issues of interleaving with new messages arriving while the backlogs are being pulled and printed.

Of course this requires more FFI wrappers to catch the corresponding WC signal, but that's also imho the biggest obstacle with issue #9 so it's something that needs to be done sooner or later.
(assuming we want to solve issue #9 by only acknowledging messages seen by the user, of course. The lazy solution is clearly to just ACK everything)

from weechat-discord.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.