together-java / jshellbot Goto Github PK
View Code? Open in Web Editor NEWDiscord bot that allows you to interact with it as if it was a jshell program
Discord bot that allows you to interact with it as if it was a jshell program
For example, you should be able to prevent calls like
!jshell java.util.Arrays.toString(new java.io.File(".").listFiles());
OR
!jshell java.util.Arrays.toString(new java.io.File("/home/").listFiles());
from listing files on the system that it is running on.
We would need to add this option to the example configuration file. bot.properties.example.
Have a way to be able to list out available commands and how to use them.
System.print will block all other threads. If someone was to create a for loop (below)
!jshell for(int i = 0; i < 10000000; i++){System.out.println("oof!");}
It will tie up all listening threads.
Ideal solution would be to have it non-blocking AND the ability to have a timeout from processing taking too long.
JShellBot currently does not notify the user if their statement has a compilation error, it just returns null
.
$ new FooBar()
> new FooBar() = null
The correct output should have been:
$ new GobblyGoop()
> | Error:
> | cannot find symbol
> | symbol: class GobblyGoop
> | new GobblyGoop()
This prevents use of the time classes and the timezone is not exactly a fiercly guarded secret.
Preferably alpine base container.
Considering integrating Travis CI for an easier roll out of JShellbot. Will save me a lot of time.
Discord API Domain Migration
Last month, we excitedly announced our official move to discord.com. It was a long time in the making, and the work isn't done yet! For now, our API will continue to handle requests made to discordapp.com. On November 7, 2020 we will be dropping support for the discordapp.com domain in favor of discord.com. Please ensure that your libraries, bots, and applications are updated accordingly.
The embed format only allows for fields with less than 1025 characters. This naturally constrains the output size quite a bit.
Apples keyboard by default changes quotes to fancy quotes and jshell bot throws an compilation error. Can someone intercept the fancy quotes and change them back to regular quotes?
The concurrent package might spawn threads, but TimeUtil should be fine.
Previous issue: #15
Seems like it's not enough.
I'd suggest running the app with a linux user that only has read/execute access to what it needs to.
Some objects, like BufferedImage
are nice to look at, but don't provide much in textual form.
However, Discord allows uploading images, so they could be directly displayed instead.
This could also be extended to other classes like Throwable
, which could complement #5.
(by tiggerbiggo)
Dyno bot has died and does not send responses to commands, this is a big problem as Dyno Bot is vital to our server. A lot of commands help us in providing information without typing long messages. A temporary solution would be to add some of the frequent commands to Together Java Bot.
Since Java 16 got released today, we should add support for it
A few more packages/classes need to be blacklisted and a few need to be allowed, but that is a tad horrendous with the current system.
A sequence of regular expressions for blacklisting and whitelisting may fit better?
What:
Unable to listen to channels in Discord due to the API change of 11/07/2020.
Resolution:
Migration to the latest version of JDA should resolve this issue. Will have to migrate references from core
to api
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.