Skip to content

Releases: nukemiko/libtakiyasha

2.1.1.post1 Release

24 Feb 10:10
7739d16
Compare
Choose a tag to compare

自版本 2.1.0 以来的变更记录

注:版本 2.1.1 有一个致命错误,会导致导入 libtakiyasha 失败(#10),因此已从发布页删除。

  • 正式版更新:2.1.1 by @nukemiko in #8
  • 正式版 2.1.1:修复了在打包时跳过数据文件的问题 by @nukemiko in #9
  • 修复导入 libtakiyasha 时出现 FileNotFoundError 的致命问题 by @nukemiko in #10
  • 更新:2.1.1 -> 2.1.1.post1 by @nukemiko in #11

Full Changelog: 2.1.0...2.1.1.post1

2.1.0 Release

10 Feb 19:33
86ce995
Compare
Choose a tag to compare

自版本 2.0.1 以来的所有变更记录

全部变更记录: 2.0.1...2.1.0

2.1.0rc2 Pre-Release

21 Jan 05:29
b70c336
Compare
Choose a tag to compare
2.1.0rc2 Pre-Release Pre-release
Pre-release

变更内容

完整的变更记录: master@{1day}...master

2.1.0rc1 Pre-Release

18 Jan 02:46
2a221e6
Compare
Choose a tag to compare
2.1.0rc1 Pre-Release Pre-release
Pre-release

变更

查看完整的变更记录: 2.0.1...2.1.0rc1

2.0.1 Release

22 Nov 15:30
238dbab
Compare
Choose a tag to compare

变更内容

将鼠标指针移动到提交上方悬停,可查看完整的提交信息。

  • ea41b24: 删除了 TarsCppTCTEAWithModeCBC.encrypt() 开头无用且错误的参数检查逻辑,以解决无法保存到新 QMCv2 KeyEncV2 文件的问题。
  • 77bbcd2: libtakiyasha.qmc.qmckeyciphers.QMCv2KeyEncryptV1encrypt()decrypt() 方法现在不再接受长度小于8的明文或密文。
  • dfec557, 8619e11: libtakiyasha.stdciphers.ARC4.__init__()libtakiyasha.qmc.qmcdataciphers.HardenedRC4.__init__() 不再接受空字节串作为密钥,后者同时也不再允许密钥中出现零字节 b\x00;尝试触碰这些限制会引发 ValueError
  • 4aef0f7: 修复了 libtakiyasha.qmc.QMCv2.from_file() 即便提供了 master_key 仍然会报错缺少参数 simple_keymix_key1mix_key2 的问题

安装

通过 PyPIpip install -U libtakiyasha==2.0.1

或者从下面下载安装包后在本地安装。

2.0.0-1 Release

02 Nov 11:15
e1e59c9
Compare
Choose a tag to compare

变更内容

  • 35a4ddb: 解析文件中的 163key 出错时,继续创建 NCM 对象并警告用户,而不是中断运行
  • 68da2da: 改变了 libtakiyasha.qmc.QMCv2.from_file() 在抛出异常时引用文件名的方式:如果输入的是文件路径,异常信息中将会原样显示此文件的路径,而不是从此路径打开的文件对象的 repr 表示
  • 2f7d9c3: 重写了 NCM 示例脚本:美化输出,支持类似于 0x11, 0x45, 0x14, 0xfa, 0x19, 0x19, 0xd8, 0x10 的输入作为核心密钥
  • #2(修复了 #1): 修复了 libtakiyasha.qmc.QMCv2.new() 调用 make_random_ascii_string() 的返回值未经 encode 导致 TypeError 的错误
    • 这个错误是在 2.0.0 版本发布在 PyPI 之后才被发现的,因此这里直接跳过了 2.0.0 版本的发布

安装

此版本已在 PyPI 发布,可通过 pip 安装:

pip install -U libtakiyasha==2.0.0.post1

也可以在下方下载安装。

2.0.0.b1

26 Oct 16:39
e99e6a6
Compare
Choose a tag to compare

变更日志

  • 2144649: 添加了 KWM 的加解密支持(暂不支持保存到文件)
  • 3d01c9f, c085ebe: 添加了一个示例脚本,以 NCM 格式为例,展示 libtakiyasha 的常用用法
  • 5da3afe: 修复了 libtakiyasha.qmc.qmcdataciphers.HardenedRC4 对象无法通过 CryptLayerWrappedIOSkel.__init__() 的功能检查的问题
  • 07471b0: src/libtakiyasha/kgmvpr/ 下的 kgmmaskutils.py 改名为 kgmvprmaskutils.py
  • 78f7581: 完善了 CloudMusicIdentifier.to_mutagen_style_dict() 的文档

安装

此版本已在 PyPI 上发布,可通过 pip 安装:

pip install -U libtakiyasha==2.0.0b1

也可以在下方下载安装。

2.0.0.a1

25 Oct 02:41
2129e33
Compare
Choose a tag to compare
2.0.0.a1 Pre-release
Pre-release

变更内容

  • b5025c1: 添加了 version_info() 以及一套版本号解析方案。
  • 3b60c12: libtakiyasha.qmc 包下的所有模块(除 __init__)都改名为前面加上 qmc 的形式,以防与其他模块搞混。
  • 1cfd98f: 对框架类 CryptLayerWrappedIOSkel 进行了大量修改,着重提高了容错度,以及修复了一个问题。
  • 76ff7c5, 845b273: 修复了无法解析部分 163key 的问题,以及 163key 转 Mutagen 兼容格式字典过程的一个错误。
  • 39a7022: 所有 Cipher 类的 keystream()(如果有)、encrypt()decrypt() 现在都不再允许小于 0 的偏移量和长度。
  • adc213a, e5c0d35, 7c6680f, 4d60d24: 添加并完善了用于 KGM/VPR 格式加解密的 libtakiyasha.kgmvpr.KGMorVPR,并可打开 KGM/VPR 文件。
    • 要想新建或从文件打开一个 KGMorVPR 对象,你需要三个 table;如果是 VPR 文件,你还需要一个 VPR 密钥。你可以从内容提供商的应用程序或其他项目中寻找这些所需材料。

安装

此版本已在 PyPI 上发布,可通过 pip 直接安装:

pip install -U libtakiyasha==2.0.0a1

也可以在下面下载安装。

2.0.0.dev1 Build 2022-10-22

22 Oct 14:05
53633ea
Compare
Choose a tag to compare
Pre-release

变更日志

(截止至此版本发布时,2.0.0.dev2 版本还不存在,这个版本号只是提交时的一个手误导致的。)

相较于上一版本

  • 19320e7
    • 针对 QQ 音乐 PC 客户端 18.57 及之后下载的 QMCv2 文件支持,现已彻底稳定可用
    • 移除了打开上述文件时出现的警告信息

Version 2.0.0.dev0 Build 2022-10-21

21 Oct 12:19
c937e2e
Compare
Choose a tag to compare
Pre-release

变更日志

这是 2.x 的首个开发版,从此版本开始,libtakiyasha 不兼容之前发布的 1.x 版本;使用 1.x 版本的应用,需要大量的改造才能使用 2.x 版本。

此版本已在 PyPI 发布,可通过以下命令,从 PyPI 安装:

piip install -U libtakiyasha==2.0.0.dev0