File tree Expand file tree Collapse file tree 4 files changed +19
-53
lines changed
src/main/worker/dbService Expand file tree Collapse file tree 4 files changed +19
-53
lines changed Original file line number Diff line number Diff line change 11目前本项目的原始发布地址只有 ** GitHub** 及 ** 蓝奏网盘** ,其他渠道均为第三方转载发布,可信度请自行鉴别。
22本项目无微信公众号之类的官方账号,谨防被骗。
33
4- ### 不兼容性变更
5-
6- 该版本修改了同步协议逻辑,同步功能至少需要PC端v2.4.0或移动端v1.1.0版本或同步服务v2.0.0才能连接使用。
7-
8- ### 新增
9-
10- - 新增我的列表名右键菜单-排序歌曲-随机乱序功能,使用它可以对选中列表内歌曲进行随机重排(#1440 )
11- - 新增数据同步服务端模式已认证设备列表管理,该功能位置:设置-数据同步-服务端模式-已认证设备列表
12- - 新增“不喜欢歌曲”功能,可以在我的列表或者在线列表内歌曲的右击菜单使用,还可以去“设置-其他”手动编辑不喜欢规则,注:“上一曲”、“下一曲”功能将跳过符合“不喜欢歌曲”规则的歌曲,但你仍可以手动播放这些歌曲
13- - 新增同步功能对“不喜欢歌曲”列表的同步
14- - 新增软件内快捷键“不喜欢该歌曲”设置,全局快捷键“收藏歌曲”、“取消收藏”、“不喜欢该歌曲”设置
15- - 新增设置-播放设置-点击相同列表内的歌曲切歌时是否清空已播放列表(随机模式下列表内所有歌曲会重新参与随机)选项,默认关闭
16-
17- ### 优化
18-
19- - 优化音效设置-环境音效启用、禁用时的操作效果显示,修复禁用环境音效时仍然可以调整增益、新增预设的问题
20- - 过滤翻译歌词或罗马音歌词中只有“//”的行(#1499 )
21- - 点击打开歌单弹窗背景将不再自动关闭弹窗,防止选择输入框里的内容时意外关闭弹窗
22- - 优化数据传输逻辑,列表同步指令使用队列机制,保证列表同步操作的顺序
23- - 优化桌面歌词在开启 缩放当前播放的歌词 并关闭 延迟歌词滚动 时的歌词滚动位置计算问题,现在歌词滚动应该可以正确滚动到目标位置了
24- - 优化歌词在短时间内快速播放时的滚动效果,现在遇到这种情况时滚动将更平滑
25-
264### 修复
275
28- - 修复字体设置某些字体无法应用的问题
29- - 修复搜索提示功能失效的问题(#1452 , @Folltoshe )
30- - 修复我的列表名右键菜单-排序歌曲按专辑名排序无效的问题(#1440 )
31- - 修复若路径存在 # 字符时,软件无法启动的问题
32- - 修复搜索框在某些情况下输入内容后搜索时会自动清空的问题(#1472 )
33- - 修复某些tx源歌词因数据异常解析失败的问题
34- - 修复windows平台下隐藏窗口后再显示时任务栏按钮丢失的问题
35- - 修复首句歌词被提前播放的问题
36- - 修复潜在导致列表数据不同步的问题
37- - 修复kg无评论时的加载处理问题
38-
39- ### 变更
40-
41- - 播放模式应该只适用于列表内的歌曲,所以单曲循环模式不应对“稍后播放”的歌曲有效,该行为现在与移动端一致
42- - 随机模式下,通过点击与播放列表相同的列表切歌时,将不再清空已播放列表,即已播放的歌曲不再重新参与随机,若想恢复之前的行为可以去设置-播放设置启用清空已播放列表选项
43-
44- ### 其他
45-
46- - 更新 electron 到 v22.3.23
47- - 重构同步服务端功能部分代码,使其更易扩展新功能
6+ - 修复 v2.4.0 的默认数据库版本号不对导致无法启动问题
Original file line number Diff line number Diff line change 11import Database from 'better-sqlite3'
22import path from 'path'
3- import tables from './tables'
3+ import tables , { DB_VERSION } from './tables'
44import verifyDB from './verifyDB'
55import migrateData from './migrate'
66
@@ -10,7 +10,7 @@ let db: Database.Database
1010const initTables = ( db : Database . Database ) => {
1111 db . exec ( `
1212 ${ Array . from ( tables . values ( ) ) . join ( '\n' ) }
13- INSERT INTO "main"."db_info" ("field_name", "field_value") VALUES ('version', '1 ');
13+ INSERT INTO "main"."db_info" ("field_name", "field_value") VALUES ('version', '${ DB_VERSION } ');
1414 ` )
1515}
1616
Original file line number Diff line number Diff line change 11import type Database from 'better-sqlite3'
2+ import { DB_VERSION } from './tables'
23
34// const migrateV1 = (db: Database.Database) => {
45// const sql = `
@@ -26,15 +27,19 @@ import type Database from 'better-sqlite3'
2627// }
2728
2829const migrateV1 = ( db : Database . Database ) => {
29- const sql = `
30- CREATE TABLE "dislike_list" (
31- "type" TEXT NOT NULL,
32- "content" TEXT NOT NULL,
33- "meta" TEXT
34- );
35- `
36- db . exec ( sql )
37- db . prepare ( 'UPDATE "main"."db_info" SET "field_value"=@value WHERE "field_name"=@name' ) . run ( { name : 'version' , value : '2' } )
30+ // 修复 v2.4.0 的默认数据库版本号不对的问题
31+ const existsTable = db . prepare ( 'SELECT name FROM "main".sqlite_master WHERE type=\'table\' AND name=\'dislike_list\';' ) . get ( )
32+ if ( ! existsTable ) {
33+ const sql = `
34+ CREATE TABLE "dislike_list" (
35+ "type" TEXT NOT NULL,
36+ "content" TEXT NOT NULL,
37+ "meta" TEXT
38+ );
39+ `
40+ db . exec ( sql )
41+ }
42+ db . prepare ( 'UPDATE "main"."db_info" SET "field_value"=@value WHERE "field_name"=@name' ) . run ( { name : 'version' , value : DB_VERSION } )
3843}
3944
4045export default ( db : Database . Database ) => {
Original file line number Diff line number Diff line change @@ -214,3 +214,5 @@ tables.set('dislike_list', `
214214` )
215215
216216export default tables
217+
218+ export const DB_VERSION = '2'
You can’t perform that action at this time.
0 commit comments