新特性
支持一日多🦌(5)
破坏性更新
**该版本数据库结构发生重大变化,请自行尝试迁移**
<details>
<summary>旧数据库 schema</summary>
CREATE TABLE user (
user_id VARCHAR NOT NULL,
year INTEGER NOT NULL,
month INTEGER NOT NULL,
mask INTEGER NOT NULL,
PRIMARY KEY (user_id)
);
</details>
<details>
<summary>新数据库 schema</summary>
CREATE TABLE user (
id VARCHAR NOT NULL,
year INTEGER NOT NULL,
month INTEGER NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE userdeer (
id CHAR(32) NOT NULL,
user_id VARCHAR NOT NULL,
day INTEGER NOT NULL,
count INTEGER NOT NULL,
PRIMARY KEY (id)
);
CREATE INDEX ix_userdeer_user_id ON userdeer (user_id);
</details>
<details>
<summary>可能的迁移方案</summary>
1. 创建 `userdeer` 表及其索引 `ix_userdeer_user_id`
2. 将 `user` 表的主键 `user_id` 重命名为 `id`
3. 将 `user` 表的键 `mask` 按照二进制位对应转换为一个日期列表(最低位二进制表示当月 1 号,次低位为当月 2 号,以此类推),对于二进制位为 `0` 的日期表示当天没有🦌
4. 通过获得的🦌日期生成 `userdeer` 所需的表项,其中 `id` 主键必须是一个合法的 UUID4 字符串,`user_id` 对应 `user` 表的主键 `id`,`day` 为🦌的日期,`count` 为当天🦌的次数
**注:`userdeer` 表的 `id` 虽然是 UUID4 字符串,但是与 python 的 uuid 模块生成的稍有不同,应该将字符串中的 `-` 去掉**
</details>
完整更新日志
**Full Changelog**: https://github.com/SamuNatsu/nonebot-plugin-deer-pipe/compare/v0.2.5...v0.3.0