Releases: Starry-OvO/aiotieba
Releases · Starry-OvO/aiotieba
v2.9.7
贴吧接口层
新增特性
typedef.UserInfo
新增字段glevel
表示用户成长等级typedef.Thread
新增字段is_help
表示该主题帖是否为求助帖Thread
Post
新增字段vimage
表示虚拟形象相关信息
bug修复
- 修复了一个获取用户主页不返回发帖量的bug
v2.9.6
贴吧接口层
新增特性
typedef
新增VirtualImage
,UserInfo
新增字段vimage
用于支持获取虚拟形象相关信息。现在你可以使用obj.user.vimage.state
或str(obj.user.vimage)
获取虚拟形象状态签名
变化特性
typedef.FragVoice
和Fragments.voice
被移除,新增Fragments.has_voice
v2.9.5
贴吧接口层
新增特性
client.Client
新增类方法hash2image
用于通过百度图床hash获取指定尺寸的图片- 新增针对 Python3.11 的支持
变化特性
- 使用内置函数
bytes.hex
替代binascii.hexlify
Client._unpack_ws_bytes
现在使用memoryview
节省了解析过程中不必要的内存复制- 优化
Client._init_websocket
中的protobuf封装流程 typedefs.ProtocolText
不再支持运行时类型检查
bug修复
- 使用
importlib.resources
修复了配置文件模板无法正确生成的bug client._ForumInfoCache
现在会正确地使用OrderedDict
而不是dict
作为缓存容器
应用接口层
新增特性
reviewer.BaseReviewer
新增类方法has_QRcode
用于判断图像是否包含二维码
变化特性
reviewer.BaseReviewer
的类方法scan_QRcode
更名为decode_QRcode
v2.9.4
贴吧接口层
变化特性
- 主仓库名称由
Tieba-Manager
变更为aiotieba
Client.get_basic_user_info
被合并入Client.get_user_info
。Client.get_user_info
使用参数require (ReqUInfo)
来指定需要获取哪些用户信息BasicUserInfo
被合并入UserInfo
fid: fname
映射的本地缓存逻辑被迁移至类_ForumInfoCache
实现,现在最多缓存128对fid: fname
以避免无限的内存增长- 强制使用
ipv4
以避免百度ipv6
地址失效导致的异常
应用接口层
变化特性
- 需要读多写多的缓存功能迁移至
database.SQLiteDB
,使用SQLite
实现,有效避免MySQL
中频繁的锁竞争导致CPU占用高的问题
v2.9.3
贴吧接口层
新增特性
Fragments.__getitem__
和_Containers.__getitem__
现在会根据不同的输入参数类型返回对应的类型注解,通过typing.overload
实现
变化特性
typedefs
中的绝大多数类型现在都不再保留原始对象,这可以减少一定的内存占用
bug修复
- 修复了
Client.get_rank_users
get_member_users
get_blacklist_users
三个接口由于301重定向到https网址失败所导致的bug
应用层
变化特性
- 优化了多页审查的具体流程
bug修复
- 修复了
Reviewer.loop_handle_thread
和loop_handle_post
的分支bug,现在默认的审查规则可以正确实现全覆盖
v2.9.2
贴吧接口层
bug修复
- 修复了使用
repr
输出错误信息时BDUSS
的具体值从日志泄漏的安全性问题 - 修复了传入空
BasicUserInfo
会导致Client.get_basic_user_info
和get_user_info
无限递归的bug
v2.9.1
贴吧接口层
变化特性
numpy
和opencv-contrib-python-headless
现在不再是aiotieba
的必需依赖
bug修复
Client.get_threads
新增请求参数_client_type
以正确获取主题帖的用户信息
应用接口层
bug修复
Database.create_database
现在可以正确地初始化数据库
应用层
bug修复
cmd_handler.py
中修复了若干bug
v2.9.0
贴吧接口层
变化特性
client.Client
中,针对BDUSS_key
BDUSS
STOKEN
等用户身份相关的属性的重复初始化会被拒绝并抛出警告
应用接口层
新增特性
_reviewer.py
新增审查脚手架设计,原有业务流程可被大幅精简
变化特性
database.Database
新增参数fname
用于表示目标操作贴吧,且成员函数不再包含fname
参数
应用层
新增特性
- 使用
pyproject.toml
管理项目依赖和包构建流程
v2.8.3
贴吧接口层
新增特性
client.Client
新增接口del_threads
用于批量删除主题帖,del_posts
用于批量删除回复,agree
disagree
unagree
undisagree
分别用来点赞、点踩、取消点赞、取消点踩typedefs.UserInfo
新增字段sign
用于存放用户的个性签名typedefs._Container
以及它的派生类现在都是Hashable
对象
变化特性
client.Client
的各个ClientSession
以及TCPConnector
成员现在会采用惰性生成typedefs.FragLink
的text
属性现在会返回链接本身而不是链接标题
bug修复
- python/cpython#92841 修复了
asyncio
的_ProactorBasePipeTransport.__del__
中当SSL链接关闭时会出现的RuntimeError: Event loop is closed
应用层
变化特性
- 优先使用
Client.del_post
删除主题帖,这使得视频帖可以被删除 - 优化水经验脚本
v2.8.2
贴吧接口层
新增特性
- 在内存缓存中新增
fid
到fname
的映射
变化特性
- 所有不应被用户直接调用的私有函数现在都会在失败时直接抛出错误而不是返回
False
- 优化
typedefs
中各个类型的魔术方法的速度
bug修复
- 修复了
Client._id2user_info
中用户吧龄为-
时会无法被转换为浮点数的bug
应用接口层
变化特性
reviewer.Reviewer
不再继承自client.Client
。而仅仅会实例化一个Client
作为成员变量,并提供一些Client
中的热点函数的shortcutReviewer.database
更名为Reviewer.db
- 默认数据库名由
tieba_cloud_review
更改为aiotieba
应用层
变化特性
- 优化指令管理器的代码结构
- 优化文档
- 移除
vote_stat
指令