-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nim for Discox #188
Nim for Discox #188
Conversation
jesus christ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we have something like python bindings instead of spawning 2 instances of bot?, still no support for mysql bridge
EmbedField( | ||
name: "**URL:**", | ||
value: "```" & VirboxMcServer & ':' & VirboxMcServerPort & "```" | ||
), | ||
EmbedField( | ||
name: "**VERSION:**", | ||
value: "```" & server.version() & "```" | ||
), | ||
EmbedField( | ||
name: "**PLAYERS:**", | ||
value: "```" & playerHeader & "```" | ||
), | ||
EmbedField( | ||
name: "**PLUGINS:**", | ||
value: "```" & pluginHeader & "```" | ||
), | ||
EmbedField( | ||
name: "**PROTOCOL**", | ||
value: '`' & $server.protocol().get() & '`' | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is not identical to the python version
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's a few extra fields, but other than that it looks the same. I'll fix the embed color.
🧌 |
No. |
Why not? Doesn't hurt anyone, plus I'll be able to contribute to more commands since I've basically forgotten Python. |
I think this is a bad idea because you've redesigned the core bot "infrastructure" to use Nim primarily; no one will be able to maintain it except you. |
It's very easy to change it, even now. It seems you haven't seen the source code and are assuming things. |
I have seen your changes but I just think it reduces maintainability moving parts of it to Nim. Nobody even knows how to use Nim's tooling except you, nor does anyone here use the Nim language, so why is this even needed? The Python interpreter is a common program found on most systems but Nim is not, further increasing the need for unnecessary dependencies. |
Nim's tooling is something a literal child can use. Plus, you don't even need to. I've fixed the Makefile and Nix Flake to work properly, so in the best case, you won't have to. I'll take care of any issues that occur, though there should be none. |
Nim is available in a lot of software repos nowadays, with the major exception being Fedora Linux. |
i think this can be improved to something like |
so now mysql bridging isn't the problem because python side would query it then send it back through stdin |
let me come up with a binding rq |
@xTrayambak Let me explain to you so you'll understand: No one cares how "easy it is to use Nim's tooling" or how "it's in every repo." No one but you cares about Nim. More importantly, no one but you knows Nim. You have rewritten core parts of the bot in Nim, meaning that no one but you can maintain it because I guarantee, no one will learn Nim for a Discord bot. Your PR would provide absolutely no benefit but complicate both the bot itself and the infrastructure needed to operate the bot. Furthermore, it will make the bot unmaintainable. Making core parts of the software in Nim is the exact opposite of making it optional. |
This seems like a good idea. I'll try to implement this. |
What's the current status on this? |
Turns out, I never got around to working on that |
What kind of change does this PR introduce?
This PR allows you to write commands for Discox within the Nim programming language using the dimscord library.
Describe the changes proposed in the pull request
The Python code is now run by an
init
binary written in Nim, meaning everything written in Python still works just as it would.Does this PR introduce a breaking change?
Nothing. The makefiles and Nix flake have been modified to work with the new system from now on.
Note that
nim
andnimble
are now a required dependency to run discox.Does this PR introduce changes to the database?
No.
Other information:
Nim is very based.
please accept this, I spent 3 hours of my life doing this
kthxbye :3