Releases: No767/Kumiko
v0.11.0
✨ Kumiko v0.11.0 ✨
The final feature release before bugfixing and staging tests begin. This release includes changes such as the introduction of the auction house, pronouns module, and others. These features are considered to be stable but will contain bugs and issues. Please report any bugs you find to the issue tracker if you find one.
For the full list of changes, please see them here: v0.10.2...v0.11.0
As a side note, I (Noelle) will not be working on Kumiko as actively as before due to college and work so releases will not be as frequent as before.
💥 Breaking Changes 💥
- There are none 😄
✨ TD;LR
- Implement the Auction House module (#390)
- Implement the Redirects module
- Kumiko is fully up to PEP8 standards
🛠️ Changes
- Use discord.py styled versioning schema
- Use RoboDanny styled uptime tracker
- Optimize error handler stack
- Support systemd journal handlers
- Use msgspec as a replacement to attrs and faster serialization/deserialization
- Upgrade redis stack to 7.2.0-RC3
- Use SonarCloud to enforce code quality
- Move connection checks into one file
- Use
verify-full
for SSL PostgreSQL connections - Condense Reddit cog
- Start tasks in
cog_load
instead of constructor - Ensure that the codebase is linted through better Pyright and Ruff configs
- Use grouped unique keys to enforce M-M relations
- Update docs to reflect PEP8 standards
- Improved traceback formatting for backwards compatibility
- Use
msgspec.Struct
instead ofattrs
for faster serializations - Improve Redis caching
- Improve event logs by using better redis caching and structs instead
- Provide more fixes to the jobs module
✨ Additions
- Implement message constants enums
- Use SonarCloud to enforce code quality
- Implement Auction House, refund, and pronouns commands
- Add buttons within inventory in order to access AH easier
- Systemd journal handler
- Leaderboard command
- Implement dictionary module (supports both English and Japanese)
- Implement a purchase command for the Auctions module
- More test coverage
- Implement the Redirects module (allows you to redirect overlapping conversations into threads)
- Implement the
resolved
command to mark a thread as resolved. Also works on fourms - Add
FUNDING.yml
(because I am a broke college student and I need money) - Simple healthcheck ipc endpoint
➖ Removals
- Old help command
- Dead code / commented out code
- Unused tables and indexes (the m-m tables got dropped)
⬆️ Dependabot Updates
- [pip](deps-dev): Bump sphinx from 7.0.1 to 7.1.0 (#394) (@dependabot)
- [pip](deps-dev): Bump furo from 2023.5.20 to 2023.7.26 (#397) (@dependabot)
- [pip](deps-dev): Bump sphinx from 7.1.0 to 7.1.1 (#398) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.280 to 0.0.282 (#399) (@dependabot)
- [pip](deps-dev): Bump sphinx from 7.1.1 to 7.1.2 (#402) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.318 to 1.1.320 (#403) (@dependabot)
- [pip](deps): Bump orjson from 3.9.2 to 3.9.3 (#404) (@dependabot)
- [pip](deps): Bump orjson from 3.9.3 to 3.9.4 (#405) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.282 to 0.0.283 (#406) (@dependabot)
- [pip](deps): Bump faust-cchardet from 2.1.18 to 2.1.19 (#407) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.283 to 0.0.284 (#408) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.320 to 1.1.321 (#409) (@dependabot)
- [pip](deps): Bump msgspec from 0.17.0 to 0.18.0 (#410) (@dependabot)
- [pip](deps): Bump discord-py from 2.3.1 to 2.3.2 (#411) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.321 to 1.1.322 (#414) (@dependabot)
- [Actions](deps): Bump actions/setup-node from 3.7.0 to 3.8.0 (#415) (@dependabot)
v0.10.2
🛠️ Kumiko v0.10.2 🛠️
This release fixes issues with the marketplace module and others.
For the full list of changes, please see them here: v0.10.1...v0.10.2
💥 Breaking Changes 💥
- There are none 😄
✨ TD;LR
- Fixed the owner-issue relationship bug
🛠️ Changes
- Fixed the owner-issue relationship bug (this was an issue with the marketplace where if someone made a job output and others bought it, it would throw errors)
- Applied foreign key constraints for item ids
- Changed the user_inv from an 1-n relationship to m-m relationship
- Fixed the prefix duplicates bug (before this, admins could set duplicate prefixes and it would work)
- Updated
Requirements/prod.txt
requirements
✨ Additions
- None
➖ Removals
- Removed
toml
(not from stdlib)
⬆️ Dependabot Updates
- (Security) Update certifi to 2023.07.22 (fixes CVE-2023-37920)
v0.10.1
🛠️ Kumiko v0.10.1 🛠️
This release just updates the prod.txt
requirements file for installing deps.
For the full list of changes, please see them here: v0.10.0...v0.10.1
💥 Breaking Changes 💥
- There are none 😄
✨ TD;LR
- None
🛠️ Changes
- Update
prod.txt
to match the latest prod requirements
✨ Additions
- None
➖ Removals
- None
⬆️ Dependabot Updates
- None
v0.10.0
✨ Kumiko v0.10.0 ✨
Finally Kumiko is nearly feature complete for v1. This release includes the new pins
module, which is pretty much a tags feature. This release also includes the new Economy V4, which is the core and flagship feature of Kumiko. Ranks, jobs, and the marketplace now fully work, and more features are planned soon. On top of these, this release also fixes some bugs with the prefix and events log modules. Note that the economy feature is stable, but does have bugs and issues that folks may encounter. If there are any, please report them in the issues page on GitHub.
For the full list of changes, please see them here: v0.9.2...v0.10.0
💥 Breaking Changes 💥
- There are none 😄
✨ TD;LR
- Pins module (pretty much works like most tags features)
- Economy V4 (this includes the
economy
,jobs
, andmarketplace
cogs). This feature has been the core of Kumiko, and was one of the very first features that I worked on. Now it is stable, although there are a lot of bugs and issues to fix.
🛠️ Changes
- Fixed bugs with the
prefix
andevents-log
cog - Proper server config (both on PostgreSQL and Redis). The config is always cached on Redis first, and if doesn't exist, pulls from the database and reconstructs the cache entirely.
- Clarify running migrations with the docs
- Optimized Dockerfile (cut down on image size and removed unneeded things)
- Update AIOHTTP to v3.8.5 (fixes CVE-2023-37276) (Backported from v0.9.2)
- Implement file based logging support
- Upgrade Redis-Stack to 7.2.0-RC3
- Use
JSON.MERGE
instead ofJSON.SET
when replacing items in the JSON document (with Redis)
✨ Additions
- NSFW module (These can only be used in NSFW channels)
- Pins module
- Economy V4 (includes
economy
,jobs
, andmarketplace
cogs). is_economy_enabled
check- Proper configuration for
eventslog
feature - Proper SIGTERM support. Now the bot doesn't exit with an exit code 137, but now a 0.
- Implement permission check shortcuts (
is_manager
,is_admin
,is_mod
). Taken from RDanny because I have no time. - Add tasks to update pay and restock items. Done per hour
- Add local
eco_user
table - Add SSL support (only up to
requires
, not the fullverify
). This is really needed because of data security
➖ Removals
- Old "community docs"
- Old scripts
⬆️ Dependabot Updates
- [pip](deps): Bump asyncpraw from 7.7.0 to 7.7.1 (#378) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.316 to 1.1.317 (#379) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.277 to 0.0.278 (#381) (@dependabot)
- [pip](deps-dev): Bump pytest-asyncio from 0.21.0 to 0.21.1 (#380) (@dependabot)
- [Actions](deps): Bump actions/setup-python from 4.6.1 to 4.7.0 (#382) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.317 to 1.1.318 (#387) (@dependabot)
- [pip](deps-dev): Bump pyinstrument from 4.5.0 to 4.5.1 (#388) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.278 to 0.0.280 (#389) (@dependabot)
v0.9.2
🛠️ Kumiko v0.9.2 🛠️
Security update to fix a vulnerability in AIOHTTP (CVE-2023-37276) where llhttp v6.0.6 would be vulnerable to CVE-2023-30589
For the full list of changes, please see them here: v0.9.1...v0.9.2
💥 Breaking Changes 💥
- None
✨ TD;LR
- None
🛠️ Changes
- Pin AIOHTTP to use v3.8.5 instead (fixes CVE-2023-37276)
✨ Additions
- None
➖ Removals
- None
⬆️ Dependabot Updates
- None
v0.9.1
🛠️ Kumiko v0.9.1 🛠️
Small bug fixes to make sure that Kumiko is working
For the full list of changes, please see them here: v0.9.0...v0.9.1
💥 Breaking Changes 💥
- None
✨ TD;LR
- None
🛠️ Changes
- Fix
SIGTERM
not working to close the bot properly - Use
latest
tag instead ofedge
tag for productiondocker-compose.yml
file - Use
SIGTERM
as theSTOPSIGNAL
for Docker
✨ Additions
- None
➖ Removals
- None
⬆️ Dependabot Updates
- None
v0.9.0
✨ Kumiko v0.9.0 ✨
More reworks of literally everything... This release migrates from Prisma to pure SQL (asyncpg), and fully stabilities the repo to use discord.py instead of Pycord. Nearly all of the planned features are implemented in this release, except the economy module.
For the full list of changes, please see them here: v0.8.x...v0.9.0
Note: The commands to configure which events are turned on are disabled as of now, since it would require a full rework of the schema and code. This will be implemented in a future release.
💥 Breaking Changes 💥
- All of the SQL queries have been rewritten to use SQL w/ asyncpg instead of Prisma
- A ton of cogs, and commands have been either moved or deleted since v0.8.x. Please consider resyncing your commands with the include dev-tool cog (or by activating jishaku)
- All
*-bullseye
tags are now deprecated. Kumiko is now built using Debian 12 (Bookworm)
✨ TD;LR
- Migration from Prisma to asyncpg
- Kumiko now supports custom prefixes (max is 10). The default that will be set is
>
- asyncpg-trek migration system
- Kumiko's EventsLog module has been implemented
- Docs has been merged into one repo (https://kumiko.readthedocs.io/en/latest/index.html)
🛠️ Changes
- Allow actions commands to greedily consume users to mention
- Replaced RedisCheck with an simple ping check (
ensureOpenRedisConn
) - Replace all Prisma related code with asyncpg code
- Reuse AIOHTTP
ClientSession
,asyncpg.Pool
,redis.asyncio.connection.ConnectionPool
, andLRU
objects throughout the lifecycle of the bot - Hide
.python-version
file from the repo - Expect
id
andredis_pool
args to be in an function when using@cache
or@cacheJson
decos - Update docs to add new instructions for hosting, and new requirements
- Don't stack context managers, but rather spawn 3 new ones in one go (this is recommended instead)
- Update Dockerfile to use Debian 12 (Bookworm)
- Use
Embed.timestamp
for some embeds to show timestamps - Replaced
.gitignore
with a proper one from GitHub - Replaced
kumiko.py
withmeta.py
to allow for clearer purpose - Updated the return types of
KumikoCache().getJSONCache()
- Allow for custom paths to search for
KumikoCache().setJSONCache()
- Alow for custom keys and names to be used instead in
@cache
and@cacheJson
decos - Use WindowsEventLoop for Windows (#375) (@rtk-rnjn)
- Implement WinLoop event policy for Windows
- Ensure that the migration runner always runs first
- Change stop signal from
SIGTERM
toSIGINT
for Docker - Build the Docker image locally for Kumiko's Postgres server
- Redirect users to the Dev Contributing Guide (located in the docs) within
contributing.md
✨ Additions
- Migrations system using asyncpg-trek
- SQL migrations
- SQL based code to replace Prisma
- Context manager based logging system
- Custom prefix module (aka Kumiko supports custom prefixes for guilds)
- Ansible playbooks, proper Vagrant config
- Discord API events handler, custom dispatch events
- Prefix utils
- EventsLog module
- Ping checks to ensure that the connections are open for PostgreSQL and Redis
- Docs merged into one repo - this repo
- Added
display_emoji
property to allow for cogs to have emojis when being loaded in the select menus - The final version of what an help command should be (taken from RDanny directly as usual)
- Increased test coverage
sys-metrics
command to obtain system metrics (for Noelle only)
➖ Removals
- Global KumikoCPM variable in favor of having it stored during runtime instead
- Old economy packages
- cog-ext module
- Prisma along with other unused libs
- Any old v0.8.x Prisma code
- Old "Docs"
⬆️ Dependabot Updates
- [pip](deps-dev): Bump pre-commit from 3.2.1 to 3.2.2 (#300) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.301 to 1.1.302 (#301) (@dependabot)
- [pip](deps-dev): Bump pytest from 7.2.2 to 7.3.0 (#302) (@dependabot)
- [pip](deps): Bump orjson from 3.8.9 to 3.8.10 (#303) (@dependabot)
- [pip](deps-dev): Bump pytest from 7.3.0 to 7.3.1 (#304) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.302 to 1.1.303 (#305) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.261 to 0.0.262 (#306) (@dependabot)
- [Actions](deps): Bump actions/setup-python from 4.5.0 to 4.6.0 (#307) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.303 to 1.1.304 (#308) (@dependabot)
- [pip](deps-dev): Bump sphinx from 6.1.3 to 6.2.0 (#310) (@dependabot)
- [pip](deps-dev): Bump nox from 2022.11.21 to 2023.4.22 (@dependabot)
- [pip](deps-dev): Bump sphinx from 6.2.0 to 6.2.1 (#312) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.262 to 0.0.263 (#313) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.304 to 1.1.305 (#314) (@dependabot)
- [pip](deps): Bump orjson from 3.8.10 to 3.8.11 (#315) (@dependabot)
- [pip](deps): Bump discord-py from 2.2.2 to 2.2.3 (#316) (@dependabot)
- [pip](deps-dev): Bump pre-commit from 3.2.2 to 3.3.0 (#317) (@dependabot)
- [pip](deps-dev): Bump pre-commit from 3.3.0 to 3.3.1 (#318) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.263 to 0.0.264 (#319) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.305 to 1.1.306 (#320) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.264 to 0.0.265 (#321) (@dependabot)
- [pip](deps): Bump orjson from 3.8.11 to 3.8.12 (#322) (@dependabot)
- [pip](deps): Bump redis from 4.5.4 to 4.5.5 (#324) (@dependabot)
- [pip](deps): Bump gql from 3.4.0 to 3.4.1 (#323) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.306 to 1.1.307 (#325) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.307 to 1.1.308 (#326) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.265 to 0.0.267 (#327) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.308 to 1.1.309 (#328) (@dependabot)
- [pip](deps-dev): Bump pre-commit from 3.3.1 to 3.3.2 (#329) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.267 to 0.0.269 (#330) (@dependabot)
- [pip](deps-dev): Bump furo from 2023.3.27 to 2023.5.20 (#331) (@dependabot)
- [pip](security): Bump requests from 2.28.2 to 2.31.0 (#332) (@dependabot)
- [Actions](deps): Bump actions/setup-python from 4.6.0 to 4.6.1 (#333) (@dependabot)
- [pip](deps): Bump orjson from 3.8.12 to 3.8.13 (#334) (@dependabot)
- [pip](security): Bump tornado from 6.2 to 6.3.2 (#336) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.309 to 1.1.310 (#337) (@dependabot)
- [pip](deps-dev): Bump pytest-cov from 4.0.0 to 4.1.0 (#335) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.269 to 0.0.270 (#338) (@dependabot)
- [pip](deps): Bump orjson from 3.8.13 to 3.8.14 (#339) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.310 to 1.1.311 (#340) (@dependabot)
- [pip](deps): Bump orjson from 3.8.14 to 3.9.0 (#341) (@dependabot)
- [pip](deps-dev): Bump pyinstrument from 4.4.0 to 4.5.0 (#342) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.270 to 0.0.271 (#343) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.311 to 1.1.313 (#344) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.271 to 0.0.272 (#345) (@dependabot)
- [Actions](deps): Bump docker/build-push-action from 4.0.0 to 4.1.0 (#346) (@dependabot)
- [pip](deps): Bump orjson from 3.9.0 to 3.9.1 (#347) (@dependabot)
- [pip](deps-dev): Bump pytest from 7.3.1 to 7.3.2 (#348) (@dependabot)
- [pip](deps): Bump prisma from 0.8.2 to 0.9.0 (#349) (@dependabot)
- [pip](deps): Bump discord-py from 2.2.3 to 2.3.0 (#350) (@dependabot)
- [Actions](deps): Bump docker/build-push-action from 4.1.0 to 4.1.1 (#352) (@dependabot)
- [pip](deps-dev): Bump myst-parser from 1.0.0 to 2.0.0 (@dependabot)
- [pip](deps-dev): Bump pre-commit from 3.3.2 to 3.3.3 (#354) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.313 to 1.1.314 (#356) (@dependabot)
- [pip](deps-dev): Bump sphinx from 6.2.1 to 7.0.1 (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.314 to 1.1.315 (#357) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.272 to 0.0.274 (#358) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.274 to 0.0.275 (#359) (@dependabot)
- [pip](deps-dev): Bump pytest from 7.3.2 to 7.4.0 (#360) (@dependabot)
- [pip](deps): Bump discord-py from 2.3.0 to 2.3.1 (#361) (@dependabot)
- [pip](deps): Bump redis from 4.5.5 to 4.6.0 (#363) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.315 to 1.1.316 (#362) (@dependabot)
- [pip](deps): Bump prisma from 0.9.0 to 0.9.1 (#367) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.275 to 0.0.276 (#370) (@dependabot)
- [pip](deps-dev): Bump ruff from 0.0.276 to 0.0.277 (#371) (@dependabot)
- [Actions](deps): Bump actions/setup-node from 3.6.0 to 3.7.0 (#372) (@dependabot)
- [pip](deps): Bump asyncpg from 0.27.0 to 0.28.0 (#373) (@dependabot)
- [pip](deps): Bump orjson from 3.9.1 to 3.9.2 (#374) (@dependabot)
- [pip](deps-dev): Bump nox-poetry from 1.0.2 to 1.0.3 (#376) (@dependabot)
v0.8.0
🛠️ Kumiko v0.8.0 🛠️
This release just fixes the deployment. Accidentally deployed an update, not a patch.
Because of this, v0.8.x will be skipped, and the next official update will be v0.9.x
Full changes can be found below:
💥 Breaking Changes 💥
- None
✨ TD;LR
- None
🛠️ Changes
- Remove old local packages to reduce size
- Optionally allow setting the Redis Password for KumikoCPM
✨ Additions
- None
➖ Removals
- Old local packages to reduce size
⬆️ Dependabot Updates
- None
v0.7.0
✨ Kumiko v0.7.0 ✨
This release is the foundation for v0.8.x. This release implements almost everything back (excluding the advanced moderation features, and economy system) from previous versions of Kumiko, and now Kumiko is migrated to Discord.py (sorry Pycord devs). The economy system and improved moderation commands will be coming in v0.8.x instead. There might be some that might have been missed, so if you want to see the full list of changes, please see the changes here: v0.6.0...v0.7.x
💥 Breaking Changes 💥
- Literally rewrote Kumiko from the ground up to use Discord.py instead of Pycord. Expect a ton of things to be broken
- A ton of cogs, and commands have been either moved or deleted since v0.6.x. Please consider resyncing your commands with the include dev-tool cog (or by activating jishaku)
✨ TD;LR
- Migrated from Pycord to Discord.py. Literally this took way too long
- Kumiko now supports both prefixed and slash commands (default prefix is
>
) - Migration from Coredis to Redis-py, and migration from Tortoise ORM to Prisma
- Kumiko is now properly type hinted/statically typed now.
🛠️ Changes
- RedisCheck is now fully recursive
- Properly implemented static type checking
- Improved DB connections via DB cog
- Migrate searches cog to dpy
- Spilt Reddit and GitHub commands to their respective cogs
- Use
@app_commands.describe
to describe the slash command inputs. Removed the docstring args bc it was conflicting w/ the help cmd - Now using a singleton object for storing Redis connection pools. (Known as the KumikoCPM)
- Improved the Vagrantfile (possible Ansible provisioning in the future)
- Using orjson for parsing JSON instead of pysimdjson or cysimdjson
✨ Additions
- Context manager for Prisma sessions - Useful for debugging and testing
- Recursive RedisCheck coroutine - Actually now cleans up the stack calls for once (thanks to a base case)
- Vasic help command - Will be improved in v0.8.x
- New unit tests
- Pagination - Taken from Rapptz's (Danny) RoboDanny bot, and improved to work w/ Kumiko
- EmbedListSource for paginating embeds
- TextSources, and ListSources for paginating text and lists
- Actions cog - Replacement for the UwU Cog
- Error Handler cog - Now uses custom exceptions
- exceptions and utils (including datetime parsing utils, and much much more)
- Dev Mode - It's an environment variable that toggles the dev mode. This is useful for testing, and debugging Kumiko (includes Jishaku and a custom extension reloader)
➖ Removals
- MsgPack Serialization
- Literally all of the cogs from v0.6.x
- Removed python-dateutil, numpy, pytimeparse, aiocache, ormsgpack, and pysimdjson (yay no C compilations anymore)
- Old libs
- Pycord itself
- Builtlins cache in favor of KumikoCPM
⬆️ Dependabot Updates
- [Actions](deps): Bump actions/cache from 3.3.0 to 3.3.1 (#282) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.298 to 1.1.299 (#283) (@dependabot)
- [pip](deps-dev): Bump pre-commit from 3.1.1 to 3.2.0 (#284) (@dependabot)
- [pip](deps): Bump redis from 4.5.1 to 4.5.2 (#285) (@dependabot)
- [pip](deps-dev): Bump pytest-asyncio from 0.20.3 to 0.21.0 (#286) (@\dependabot)
- [pip](deps): Bump orjson from 3.8.7 to 3.8.8 (#288) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.299 to 1.1.300 (#289) (@dependabot)
- [pip](deps): Bump redis from 4.5.2 to 4.5.3 (#290) (@dependabot)
- [pip](deps-dev): Bump pre-commit from 3.2.0 to 3.2.1 (#291) (@dependabot)
- [pip](deps): Bump orjson from 3.8.8 to 3.8.9 (#293) (@dependabot)
- [pip](deps-dev): Bump pyright from 1.1.300 to 1.1.301 (#294) (@dependabot)
- [pip](deps): Bump redis from 4.5.3 to 4.5.4 (#295) (@dependabot)
v0.6.0
✨ Kumiko v0.6.0 ✨
This release focuses on cleaning out any old code, and getting ready for the migration to discord.py. This release is just the setup for v0.7.x, where everything is going to be re-implemented but in a more stable, and cleaner state. For more info on why, please see #267.
Note that this release is considered semi-stable, but removes the whole entire economy system in preparation for a full rewrite
💥 Breaking Changes 💥
- Removed the whole entire economy system (will be re-implemented in v0.7.x) - Most of the commands will need to be re-synced globally
- Also removed GWS - Will be implemented in v0.7.x or later as a gacha system
✨ TD;LR
- Removed a ton of things in preparation for v0.7.x
🛠️ Changes
- Significant changes to the way Kumiko is built
- Significant changes to the subclass for Kumiko
- Move IPC into a separate extension
- Rework the docs
- Merged all of Rin's cogs into one cog - Searches
- Ensure that the setup function for Redis conn pools are sync
- Cleaner recursive cog loading
- Recursive DB + Redis connections - Also uses exponential backoffs
✨ Additions
- New cache, utils, and economy packages (cache package uses redis-py)
@cached
and@cachedJson
decorators - These will automatically cache the return value of any coroutines, and cache them on Redis- Prisma schema
- Auto Merge Workflow for Dependabot
- Builtin global memory cache for Redis connection pools
- Datetime utils
- MsgPack support
➖ Removals
- The whole entire economy system
- Rin's Cogs (Merged into search feature)
- Quests (for now)
- Old packages (utils, economy, cache, etc)
- GWS (will be replaced by a gacha system in the future)
- A ton of libs
- Removed standalone setup scrips
- Removed old DB seeder scripts
- Remove of any trace of Tortoise ORM
- Tortoise ORM, Coredis, and others
⬆️ Dependabot Updates
- [Actions](deps): Bump actions/setup-python from 4.4.0 to 4.5.0 (@dependabot)
- [pip](deps): Bump python-dotenv from 0.21.1 to 1.0.0 (@dependabot)
- [pip](deps): Bump asyncpraw from 7.6.1 to 7.7.0 (@dependabot)
- [pip](deps-dev): Bump pre-commit from 3.1.0 to 3.1.1 (#273) (@dependabot)
- [pip](deps): Bump orjson from 3.8.6 to 3.8.7 (#274) (@dependabot)
- [pip](deps): Bump prisma from 0.8.1 to 0.8.2 (#276) (@dependabot)
- [pip](deps-dev): Bump pytest from 7.2.1 to 7.2.2 (#277) (@dependabot)
- [pip](deps): Bump charset-normalizer from 3.0.1 to 3.1.0 (#278) (@dependabot)
- [pip](deps): Bump coredis from 4.10.2 to 4.10.3 (#279) (@dependabot)
- [Actions](deps): Bump actions/cache from 3.2.6 to 3.3.0 (#280) (@dependabot)