Comments (5)
Looks like this was commented out in 8800f81. Are there plans to support it again in the future?
from weechat-discord.
Yeah... might have to do significant refactoring, though. See here :(
from weechat-discord.
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.
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.
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)
- Cargo build fails on custom build command for `openssl-sys-extras v0.7.14` HOT 1
- Build failed: thread 'main' panicked at 'explicit panic' HOT 3
- Weecord fails to compile HOT 1
- Improve buffer heirarchy HOT 3
- After struggling with openssl HOT 3
- Discord API returns channels the user is not in. weechat-discord should filter these out. HOT 3
- Weechat immediately crashes on /discord connect HOT 7
- [Help Wanted] Using buffer_autoset with weecord HOT 5
- Documentation improvement regarding weechat-dev dependency. HOT 1
- Compilation errors for weechat 1.0.1 HOT 2
- Compilation error: non-capturing closure is experimental HOT 4
- As of 1bb57f0d640431598da043edb8, channels requiring special access are hidden HOT 4
- Only plugins.var.weecord.token shows up as an option HOT 3
- Option to merge server buffers with core HOT 5
- License HOT 3
- Hang (Spinlock) When There is Too Many Servers HOT 5
- Message deletion on user ban HOT 1
- Error connecting after setting up my own server HOT 1
- Make it not dead.
- buffers not appearing when i connect? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from weechat-discord.