What's Changed
- docs: update contributing.md, fix spelling mistakes, upgrade to Python 3.14 by @Gloxiedev in #777
- money cog for front-facing currency commands by @laggron42 in #782
- Prevent negative money proposals in SetMoneyModal by @flaree in #783
- Show currency in trades by @flaree in #788
- Fix admin syncslash by @dormieriancitizen in #785
- Add emoji support to currencies by @flaree in #789
- Fix exception logging bug in trade cog :D by @Gloxiedev in #781
- [admin info user] Fix recent catches by @hiboman in #768
- Improve checkmedia command by @dormieriancitizen in #787
- Add dev docker var and update contributing.md by @flaree in #791
- Polish /balls last, duplicate, and compare by @flaree in #799
- admin: balls transferinv command by @laggron42 in #805
- Confirm + echo resolved ball before admin balls delete/transfer by @flaree in #803
- Add group model by @flaree in #790
- Polish /config channel, disable, and status by @flaree in #802
- Filter/reverse/ephemeral parity: balls count, trade bulk_add, balls list/info/completion by @flaree in #798
- Expand FilteringChoices: favorites, duplicates, traded_only by @flaree in #797
- [balls] Add sorting to balls dupe by @flaree in #795
- Improve /trade history: sort wording, filter param, page count by @flaree in #800
- FIx trade confirmation timeout by @flaree in #794
- Polish admin history, blacklist history, and info days presets by @flaree in #804
- Add a captcha for deletion by @flaree in #808
- Panel fixes for guild sorting and add locked status to ball tab by @flaree in #809
- fix: allow balls count in DMs by @ahfoysal in #810
- Condensed admin guilds by @flaree in #811
- [admin] Add list catchers, ability to move between history and first owner by @flaree in #812
- Add balls drop by @flaree in #793
- [balls] Add bulk give by @flaree in #796
- 3.1.0 release by @flaree in #815
New Contributors
- @Gloxiedev made their first contribution in #777
- @ahfoysal made their first contribution in #810
Full Changelog: release/3.0.4...release/3.1.0