Releases: thegamecracks/theticketbot
v0.5.1
This release contains a few tweaks, but nothing that visibly affects the bot's functionality.
Changes
- Document recommended workflow in readme
- Slightly refactor a few source files
- Optimize a couple foreign key delete constraints
- Bump CI/CD and pre-commit actions
Note
Localizations have not yet been synced in this release. 10 of 124 strings across 2 languages are out of date.
v0.5.0
New Features
- Add
/inbox destination
to allow routing tickets to any channel- Can also be set during
/inbox create
with a newdestination
parameter
- Can also be set during
- Add version-based automatic synchronization of application commands
- Users should no longer need to use
theticketbot --sync
after installing an update. - If you are using multiple database files for the same bot, you should pass the
--no-sync
argument after switching databases to skip automatic synchronization.
- Users should no longer need to use
Changes
- Replace gettext localization system with more flexible Project Fluent files
- Compilation no longer required to use localizations
Note
Localizations have not yet been synced in this release. 10 of 124 strings across 2 languages are out of date.
v0.4.3
v0.4.2
New Features
- Automatically prompt to create a config.toml file in a user config directory if no config file is found (#10)
- To preserve backwards compatibility, config.toml will still be loaded from the current working directory if the new user config isn't present.
- This behaviour can be bypassed by explicitly passing a file path using the
--config-file
argument.
- Print loaded config file's path when using
--dump-config
Changes
- Suppress KeyboardInterrupt tracebacks in the CLI more reliably
Fixes
- Fix untranslated message when clicking "Create Ticket" on an unrecognized inbox
- Raise an exception when
--config-file
is given a non-existent file path
v0.4.1
New Features
- Add .jsonl logging to user log directory
Changes
- Replace hardcoded owner mention shown in error messages with the real bot owner given by the Discord API
- Clarify gettext dependency in readme
Fixes
- Don't unnecessarily create application / temporary directories at startup
v0.4.0.post1
This release adds a couple badges to the readme and fixes the readme image not showing up on the PyPI page.
v0.4.0
This is theticketbot's first release to go on PyPI! 🎉 You can now install the bot with:
pip install theticketbot
But before you install this version, please read the breaking changes below.
Changes
- BREAKING CHANGE: The default database path now defaults to a user-specific directory on your current platform.
- This path can be revealed by running
theticketbot --dump-config
. - Users who want to revert to the old behaviour must explicitly write
path = "data/theticketbot.db"
in their config file's[db]
table.
- This path can be revealed by running
- Add classifiers, license, keywords, and URLs to the project's metadata
- Unpin discord.py to
~=2.4
- Use PyPI version of asqlite pinned at
==2.0.0
Fixes
- Disable the polls intent by default, and don't enable any future standard intents when upgrading discord.py
Distribution archives will no longer be included in these releases as they will be uploaded to PyPI.
v0.3.2
New Features
- Add french localization, courtesy of @Bubobubobubobubo
- Add
--sync
command-line argument to make registering application commands easier
Distribution archives are included in this release.
v0.3.1
v0.3.0
New Features
- Add german localization, courtesy of @GamingGalaxy200
- Add
/inbox message
for editing inbox messages in-place (#2) - Add
/inbox staff
all-in-one command for adding, listing, and removing inbox staff - Use per-channel Manage Threads permission to automatically add staff for new inboxes (#8)
- Prompt to select messages after using a command instead of requiring a selection beforehand (#3)
- This should make the user experience easier overall, but may make it less convenient to perform multiple commands on the same message.
- Automatically cleanup deleted roles from inbox staff (#4)
- Automatically archive tickets when their owner leaves the server
- Optionally lock tickets during archival when the bot is given the Manage Threads permission
- Add
theticketbot
console script as an alternative topython -m theticketbot
- Supports running with pipx, if desired
- Add experimental support for encrypted SQLite databases
- See the README for usage
Changes
- Make
/inbox
command guild-only - Don't include commas in the
$staff
placeholder for ticket starters - Rename
$name
to$author
in ticket name placeholders- This is automatically applied to existing inboxes during database migrations.
- Don't request guild members during startup
- This can significantly reduce unnecessary bandwidth when added to large guilds.
- For user convenience, reset timeouts for message selection commands when an error occurs
- Previously, the selection would always timeout 180s after the initial slash command even if the user was selecting messages.
- Remove Manage Server permission check on inbox message selections
- This is no longer needed since the new message selection system is isolated to each guild, preventing users from attempting to manage inboxes from other guilds. Admins can now grant the
/inbox
command to staff that don't have the Manage Server permission.
- This is no longer needed since the new message selection system is isolated to each guild, preventing users from attempting to manage inboxes from other guilds. Admins can now grant the
Fixes
- Fix deleted threads not being removed from database while bot is online
Removals
/inbox staff add
/inbox staff list
/inbox staff remove
Distribution archives are included in this release.