Remember to bring your dependencies up to date with
pip install -r requirements.txt
when updating to this version!
-
Breaking: pajbot now uses PostgreSQL instead of MySQL as its supported
database engine. It is not possible to continue to use MySQL.
To migrate your existing database(s):- Install new requirements from apt:
sudo apt-get install libpq-dev
- Bring your installed dependencies up-to-date with
pip install -r requirements.txt
- Install and start PostgreSQL, if you have not done so already
- Create the pajbot PostgreSQL user, a database and optionally a schema for
the bot to use. (see the updated SQL section of
the install docs) - Edit
./scripts/migrate-mysql-to-postgresql.py
with a connection string for
the old MySQL database, and your new PostgreSQL database. - Stop pajbot:
sudo systemctl stop pajbot@streamername pajbot-web@streamername
- Backup your data:
sudo mysqldump --single-transaction --result-file=mysql-dump-streamername.sql pajbot_streamername
- Activate the python virtualenv:
source venv/bin/activate
- Run
./scripts/migrate-mysql-to-postgresql
to move the data - Update the
sql
connection string in your bot config (see the updated
example config for
examples) - Start pajbot again:
sudo systemctl start pajbot@streamername pajbot-web@streamername
- Drop the old MySQL database:
sudo mysql -e "DROP DATABASE pajbot_streamername"
The procedure for new bot installations is described in the
install documentation. - Install new requirements from apt:
-
Breaking: If you were using the
chatters microservice, you must update
it to be able to use it after the PostgreSQL update. -
Breaking (if you rely on it in an automatic way somehow):
venvinstall.sh
has
been moved from./install
into./scripts
, where all other shell scripts
also reside. -
Major: Official support for python 3.5 has been removed. Only python 3.6 or
above will be supported from this release on. -
Feature: Added
!namechange <oldusername> <newusername>
command for migrating
users that changed their twitch name. (Level 2000 only).
./scripts/transfer-{all,sql,redis}
scripts have been removed. -
Minor: Removed
!reload
command since it did nothing. -
Minor: Modules can now be configured to only allow users above a certain level to configure them. #108
-
Minor: Removed "Personal Uptime" module.
-
Bugfix: A series of bugs (including the
!laststream
command sometimes not
working) caused by a mismatch of datetime-aware and datetime-naive objects. -
Bugfix: If redis is busy loading data, the bot no longer exits, and waits for
completion instead. -
Bugfix:
/api/v1/user/:username
no longer fetchesnl_rank
from redis twice. -
Bugfix: If no git data is available, web interface will no longer show
Last commit:
, instead last commit will be omitted altogether -
Bugfix: Fixed a series of bugs (including the
!laststream
command sometimes
not working) caused by a mismatch of datetime-aware and datetime-naive
objects. -
Bugfix: Commands are now only checked against banphrases, ascii and massping
checks if you enabledrun_through_banphrases
(e.g. via--checkmsg
) (#478) -
Bugfix: Subscribers refresh now correctly sets the
active_subs
KVI value. -
Bugfix: You can no longer ignore yourself
-
Bugfix: You can now use the same phrases (1k, "all", etc.) with the
!givepoints
command. -
Documentation Bugfix:
$(urlfetch)
returns the response body, not request
body