Releases: Botanism/Botanist
Miscellaneous
Update v2.3
Main features
Hello. This is a small release that is quite diversified. That is to say that it doesn’t a great achievement but several small improvements. Hence there are two new commands:
summary
: gives the settings of the server. This is very useful to server administrators as well as developers who are making inquires as to why something is failing.poll extended
: an improvement over polls. These new ones don’t have dynamic colors but allow the user to input any emoji as valid reactions. They remain limited to poll channels.
Aside from that many bugs have been fixed and there has been a rise in logging entries, making the code easier to live debug. Finally the configuration interface is now done through reactions when possible, I believe this is more intuitive for most users (more than CLI anyways).
Changelog
This does not include small bug fixes.
Done
Interactive help
Update v2.2
Main features
Hello. This update revolves around the addition of the long awaited interactive help command. This means that you can now initiate an interactive help session by typing ::help [command]
. Where the sole optional parameter can represent a Cog (also named extension by the bot), Group or Command. If none is provided then the general help session is built.
As you can see the bot adds some reactions which can be used to go through the pages.
Changelog
Another short one, seems like I’m succeeding to split them up!
Done
- Added per-extension configuration #94
- Made interactive help command #18
- Added command to get a list of free role #95
- Improved performances
And more little tweaks that I did not judge interesting to link here!
Law & Order
Update v2.1
Main features
Good evening or whatever it is in your timezone. You may be surprised to see a new release come so quickly. After all the last one was released only a few days ago! However be sure that there's content.
This update is called Law & Order for it brings several more tools for moderation. That is the mute
command which lets you prevent a user to post messages in the current channel for a given amount of time. Although nice the highlight of this update is community moderation. Users are now given tools to self-moderate the servers. Don't worry they're not given super-powers. They merely have access to spam
and abuse
which respectively lets them immediately stop a spammer and report an abuse from another member. All of this is configurable, notably the threshold at which a reported spammer will be auto-muted.
The clear
has also been boosted with 3 filters. You can now clear exactly what you want! Lastly "free roles" have been introduced. Those are roles up for grabs that everyone can choose to self-assign.
I hope you'll enjoy and do feel free to tell me what you think. More is coming soon!
Changelog
This one is relatively short.
Done
- Added community moderation #48
- Added
mute
command #45 - Added free roles #19
- Added lots of filters to
clear
#52 - Non-mentionable roles can now be given to the configuration interface #47
And more little tweaks that I did not judge interesting to link here!
Colorful update
Update v2.0
Main features
Hello dear users! Again I repeat myself by telling you this is the most important update yet. This one has been going for several months now and although I barely had time to code during this time frame I've still been able to improve practically every feature in a way or another.
The v1.0
update brought the new Config
interface. However it was very badly coded, limited and cumbersome. My main concern with it was the lack of extensibility and modularity which has been at the core of this bot's design since the beginning. Hence I now bring to you an entirely different Config
interface which has become a mandatory module in the process. This means you cannot disable it anymore.
Another such module was created: the help
one. The help interface has long been a subject of discussion. We have gone from an idea to another but never did get anything done. In the meantime we've been able to close 48 issues (which are also improvements). What explains this continuous pushbacks is the difficulty at stake. discord.py
(the library we use to communicate with discord) offers out-of-the-box help interface. However this is not a very nice, or expandable one. So this new update brings a better help interface. Beware though, it is still in its earliest phase of development, so please give me your feedback on it! Still it should now be more nicely formatted and supports translations!
The next big thing we bring with this update is the support for translation. As of now not translation has been made for the bot. This is because I first want to re-write most of the English strings (piece of text) for some are quite bad. I wouldn't want someone to translate from a bad source. Hence I will slowly be bringing the new texts to the bot through small and regular updates. As for other languages they will be community driven. I will accept all PR (pull requests) made to the repo for translations. To help in this process I will also write a new section in CONTRIBUTING.md
and a label to help newcomers get started on translation. Any language is welcome so come numerous!
Other features include an overhauled slap interface which now supports reasons for the slaps which you can check back later thanks to the history. The bot now sends you an embed error when something weirds occurs. This can be quite useful for the users as well as the devs. Just try to do something wrong and you'll see ;)
Changelog
An important feature has been pushed back once again: the todo
extension. Hence it will stay disabled for some more time. The event planner, a much wished for feature, has to come later too. I have started working on it but I couldn't finish in time.
Canceled
- Competition feature (#32)
Postponed
- Event planner (#54)
Done
-
You can now clear messages that are over 14 days old (#80). This has been heavily optimized to offer the best balance between compatibility and speed. It may look weird when deleting a large number of messages.
-
When you ping someone and make this a poll, only one ping will be issued (#74)
-
Command
dev
has been introduced to get an invite to the development server (#72) -
There's now an audit log of slaps (#62)
-
Command
remind
can now be used to have the bot send you a message after X time (#61) -
You can't leak tokens anymore because it's now stored in an environment variable (#60)
-
You can now get the list of extensions and their state (#59)
-
You can now get the list of slapped users as well as the slapping history, with the reasons for the slaps (#56)
-
The bot now stops troubling with tons of messages when joining a new guild (#55)
-
Bot now provides the link to github when needed (#55)
-
Made a generic
ConfigFile
class which handles all interactions with JSON files (#46) -
You can now provide a reason for slaps (#41)
-
Fixed poll color calculation (#39)
-
Added server status command (#24)
-
Errors are now better formated (#18)
And more little tweaks that I did not judge interesting to link here!
Public release !
Update v1.0
Main features
Hello dear users ! It would seem I repeat this every time but it doesn't prevent it from being true: this update is once again the biggest to date. It also means a lot (like last time yes ^^). This update is the marks the public release of the bot. Everyone can now invite it to his/her server(s). Thanks to everyone who helped to make & test it ! Here is an exhaustive list of the ones who participated in this update:
This update main benefit is the all-new Config
extension which brings bot's configuration directly to discord. Like this any server owner can configure the bot to their liking. This has required rewrites in several parts of the codebase. This is mostly noticeable in the directory structure and the change from plain text
configuration files to JSON
ones. Although it's been more difficult than anticipated it has improved the bot. It has, among other things, allowed the creation of more powerful utility functions which are now use throughout the code.
Another extension was added: Development
. It provides commands which will help for the maintenance and future development of the bot. It also helps to keep the server owners up-to-date with the latest changes.
Several new checks have been also been introduced. The major being has_auth
which enables server-specific clearance checks. This has allowed us to entirely move the bot to his own, role independent, authentication system. We've called it clearance
so that it sounds a bit spy-like ;) .
That's it for the main features, I'm now unveiling all the little features which will surely be much more interesting to you, our end users !
Changelog
Some of the initially planned features were pushed back sadly 😢. Some have been canceled but the others are coming Soon™️.
If you have trouble understanding what was done, I advise you to check the reference and check on Github. Anyways, here it is:
Canceled
- Extension files do not have a description (#1)
- Add a way to manually add a poll (#1)
- Setting global separators (#33)
Postponed
Done
- Add a settings configuration from discord (#4)
- Non-users can't delete their polls, even if they made a mistake ! (#5)
- Embeds now preserve images and attachments. This is true for both
Poll
&Embedding
(#6) - Added a clear command to help managers control channel flow (#7)
- Extensions can now be dynamically reloaded thanks to the
reload
command (#8) - The author names of polls isn't in the footer anymore (#11)
- The pardon command now has a count parameter (#16)
- There's now the possibility to add a notification when a member leaves (#20)
-
Slapping
is now server-specific (#22) - Extensions can now be unloaded with the
rm
command (#23) - Developers can now recover the log using the
log
command (#28) - Server owners can now be notified of updates with the
update
command (#31) - Removed many global variables in the process of adding the configuration interface (#35)
- Fixed poll color calculation (#39)
- It is now possible to get a list of loaded extensions with
ls
(#40) - Fixed an issue where a link wasn't given (#49)