From 89a6d0c38f1f32b72319a40140be972b7ed021e7 Mon Sep 17 00:00:00 2001 From: Fechin Date: Thu, 5 Jan 2023 13:41:27 +0800 Subject: [PATCH 01/18] Update app.csv Added TableConvert Signed-off-by: Fechin --- app.csv | 1 + 1 file changed, 1 insertion(+) diff --git a/app.csv b/app.csv index a40c738..d7e2a0d 100644 --- a/app.csv +++ b/app.csv @@ -8,5 +8,6 @@ chatgpt,ChatGPT,ChatGPT,https://chat.openai.com/chat flomo,Flomo,浮墨,https://v.flomoapp.com/mine qwerty,Qwerty,Qwerty,https://qwerty.kaiyi.cool/ zlibrary,ZLibrary,ZLibrary,https://zlib.cydiar.com/ +tableconvert,TableConvert,TableConvert,https://tableconvert.com/ lizhi,LiZhi,李志,https://lizhi.turkyden.com/?from=pake weread,WeRead,微信阅读,https://weread.qq.com/ From dac2437f18d35107650f242984168c60602a5aaa Mon Sep 17 00:00:00 2001 From: Tlntin Date: Thu, 5 Jan 2023 18:12:00 +0800 Subject: [PATCH 02/18] =?UTF-8?q?=E9=99=8D=E7=BA=A7ubuntu=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=88=B020.04=EF=BC=8C=E4=BB=A5=E5=85=BC=E5=AE=B9?= =?UTF-8?q?=E6=9B=B4=E5=A4=9A=E8=80=81=E8=AE=BE=E5=A4=87=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tlntin --- .github/workflows/pake_build.yaml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/pake_build.yaml b/.github/workflows/pake_build.yaml index aac097d..6d1cdfe 100644 --- a/.github/workflows/pake_build.yaml +++ b/.github/workflows/pake_build.yaml @@ -4,7 +4,6 @@ on: # Sequence of patterns matched against refs/tags tags: - "V*" - workflow_dispatch: jobs: build: @@ -15,7 +14,7 @@ jobs: build: [linux, windows, macos] include: - build: linux - os: ubuntu-latest + os: ubuntu-20.04 rust: nightly target: x86_64-unknown-linux-musl - build: windows @@ -46,13 +45,13 @@ jobs: target: ${{ matrix.target }} - name: install dependencies (ubuntu only) - if: matrix.os == 'ubuntu-latest' + if: matrix.os == 'ubuntu-20.04' run: | sudo apt-get update sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf gnome-video-effects gnome-video-effects-extra - name: build for Ubuntu - if: matrix.os == 'ubuntu-latest' + if: matrix.os == 'ubuntu-20.04' run: npm run build:all-unix - name: build for MacOS From af00318455bcabb967a3c66c6ae73e876089a61a Mon Sep 17 00:00:00 2001 From: Tlntin Date: Thu, 5 Jan 2023 18:31:56 +0800 Subject: [PATCH 03/18] add tableconvert --- src-tauri/icons/tableconvert.icns | Bin 0 -> 16974 bytes src-tauri/png/tableconvert_256.ico | Bin 0 -> 12266 bytes src-tauri/png/tableconvert_32.ico | Bin 0 -> 2577 bytes src-tauri/png/tableconvert_512.png | Bin 0 -> 5191 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 src-tauri/icons/tableconvert.icns create mode 100644 src-tauri/png/tableconvert_256.ico create mode 100644 src-tauri/png/tableconvert_32.ico create mode 100644 src-tauri/png/tableconvert_512.png diff --git a/src-tauri/icons/tableconvert.icns b/src-tauri/icons/tableconvert.icns new file mode 100644 index 0000000000000000000000000000000000000000..2d70b72bbb5d38233f083d2ea889951e61aaf0d8 GIT binary patch literal 16974 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 literal 0 HcmV?d00001 diff --git a/src-tauri/png/tableconvert_256.ico b/src-tauri/png/tableconvert_256.ico new file mode 100644 index 0000000000000000000000000000000000000000..ee397e436532d0c6e094869f43140a32d1864d26 GIT binary patch literal 12266 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 SOCjh1h%Ndrx&QoQ^#1`e<|}ys literal 0 HcmV?d00001 diff --git a/src-tauri/png/tableconvert_32.ico b/src-tauri/png/tableconvert_32.ico new file mode 100644 index 0000000000000000000000000000000000000000..ed362d4ac2e18707d9c7dae7c01f13ad99da49ab GIT binary patch literal 2577 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 aK_G5(J0v1LZxVfS0314SgqFXLe*NFla+s(9 literal 0 HcmV?d00001 From 1143797203d98c0fb4b1fcadb38933e0c56560b3 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Thu, 5 Jan 2023 18:34:56 +0800 Subject: [PATCH 04/18] docs(contributor): contrib-readme-action has updated readme --- README.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 23cfba5..9fc4ea7 100644 --- a/README.md +++ b/README.md @@ -262,21 +262,28 @@ Pake 的发展离不开这些 Hacker 们,一起贡献了大量能力,也欢 Dengju Deng + + + Fechin +
+ Fechin +
+ princemaple
Po Chen
- + + houhoz
Hyzhao
- - + liusishan From 0d941bd73f1391bdc6af58e933f54c50dddcab50 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Fri, 6 Jan 2023 18:57:54 +0800 Subject: [PATCH 05/18] =?UTF-8?q?:sparkles:=20mac=E5=91=BD=E4=BB=A4?= =?UTF-8?q?=E8=A1=8C=E9=BB=98=E8=AE=A4=E6=89=93=E9=80=9A=E7=94=A8=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/pake_build.yaml | 18 ----- bin/builders/LinuxBuilder.ts | 16 ++-- bin/builders/MacBuilder.ts | 20 ++--- bin/builders/WinBulider.ts | 10 +-- bin/builders/common.ts | 4 +- bin/cli.ts | 7 +- bin/options/icon.ts | 37 ---------- dist/cli.js | 119 +++++++++++++----------------- package.json | 2 +- script/build.sh | 3 - src-tauri/tauri.conf.json | 31 +------- src-tauri/tauri.macos.conf.json | 26 +------ 12 files changed, 78 insertions(+), 215 deletions(-) diff --git a/.github/workflows/pake_build.yaml b/.github/workflows/pake_build.yaml index aac097d..fab49ea 100644 --- a/.github/workflows/pake_build.yaml +++ b/.github/workflows/pake_build.yaml @@ -66,24 +66,6 @@ jobs: run: | npm run build:all-windows - # - name: Create Release and Upload Release Asset - # uses: softprops/action-gh-release@v1 - # if: startsWith(github.ref, 'refs/tags/') - # with: - # tag_name: ${{ github.ref }} - # name: Release ${{ github.ref }} - # body: TODO New Release. - # draft: false - # prerelease: false - # files: | - # output/*/*.* - - # - uses: ncipollo/release-action@v1 - # if: startsWith(github.ref, 'refs/tags/v') - # with: - # allowUpdates: true - # artifacts: "output/*/*.*" - # token: ${{ secrets.GITHUB_TOKEN }} - name: Upload files env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/bin/builders/LinuxBuilder.ts b/bin/builders/LinuxBuilder.ts index cec50b1..df1ee6e 100644 --- a/bin/builders/LinuxBuilder.ts +++ b/bin/builders/LinuxBuilder.ts @@ -46,31 +46,31 @@ export default class LinuxBuilder implements IBuilder { const { name } = options; await mergeTauriConfig(url, options, tauriConf); - const _ = await shellExec(`cd ${npmDirectory} && npm install && npm run build`); - let arch = ""; + await shellExec(`cd ${npmDirectory} && npm install && npm run build`); + + let arch: string; if (process.arch === "x64") { arch = "amd64"; } else { arch = process.arch; } const debName = `${name}_${tauriConf.package.version}_${arch}.deb`; - const appPath = this.getBuildedAppPath(npmDirectory, "deb", debName); + const appPath = this.getBuildAppPath(npmDirectory, "deb", debName); const distPath = path.resolve(`${name}.deb`); await fs.copyFile(appPath, distPath); await fs.unlink(appPath); - const appImageName = `${name}_${tauriConf.package.version}_${arch}.AppImage`; - const appImagePath = this.getBuildedAppPath(npmDirectory, "appimage", appImageName); + const appImagePath = this.getBuildAppPath(npmDirectory, "appimage", appImageName); const distAppPath = path.resolve(`${name}.AppImage`); await fs.copyFile(appImagePath, distAppPath); await fs.unlink(appImagePath); logger.success('Build success!'); logger.success('You can find the deb app installer in', distPath); - logger.success('You can find the Appimage app installer in', distAppPath); + logger.success('You can find the AppImage app installer in', distAppPath); } - getBuildedAppPath(npmDirectory: string,packageType: string, packageName: string) { + getBuildAppPath(npmDirectory: string, packageType: string, packageName: string) { return path.join( npmDirectory, 'src-tauri/target/release/bundle/', @@ -78,4 +78,4 @@ export default class LinuxBuilder implements IBuilder { packageName ); } -} \ No newline at end of file +} diff --git a/bin/builders/MacBuilder.ts b/bin/builders/MacBuilder.ts index 8a5fdcb..4fedbc7 100644 --- a/bin/builders/MacBuilder.ts +++ b/bin/builders/MacBuilder.ts @@ -29,7 +29,7 @@ export default class MacBuilder implements IBuilder { // TODO 国内有可能会超时 await installRust(); } else { - log.error('Error: Pake need Rust to package your webapp!!!'); + log.error('Error: Pake need Rust to package your webapp!'); process.exit(2); } } @@ -40,15 +40,11 @@ export default class MacBuilder implements IBuilder { await mergeTauriConfig(url, options, tauriConf); - const _ = await shellExec(`cd ${npmDirectory} && npm install && npm run build`); - let arch = "x64"; - if (process.arch === "arm64") { - arch = "aarch64"; - } else { - arch = process.arch; - } - const dmgName = `${name}_${tauriConf.package.version}_${arch}.dmg`; - const appPath = this.getBuildedAppPath(npmDirectory, dmgName); + //这里直接使用 universal-apple-darwin 的打包,而非当前系统的包 + await shellExec(`cd ${npmDirectory} && npm install && npm run build:mac`); + + const dmgName = `${name}_${tauriConf.package.version}_universal.dmg`; + const appPath = this.getBuildAppPath(npmDirectory, dmgName); const distPath = path.resolve(`${name}.dmg`); await fs.copyFile(appPath, distPath); await fs.unlink(appPath); @@ -57,10 +53,10 @@ export default class MacBuilder implements IBuilder { logger.success('You can find the app installer in', distPath); } - getBuildedAppPath(npmDirectory: string, dmgName: string) { + getBuildAppPath(npmDirectory: string, dmgName: string) { return path.join( npmDirectory, - 'src-tauri/target/release/bundle/dmg', + 'src-tauri/target/universal-apple-darwin/release/bundle/dmg', dmgName ); } diff --git a/bin/builders/WinBulider.ts b/bin/builders/WinBulider.ts index 2ca2958..dfd5026 100644 --- a/bin/builders/WinBulider.ts +++ b/bin/builders/WinBulider.ts @@ -5,11 +5,9 @@ import { checkRustInstalled, installRust } from '@/helpers/rust.js'; import { PakeAppOptions } from '@/types.js'; import { IBuilder } from './base.js'; import { shellExec } from '@/utils/shell.js'; -// @ts-expect-error 加上resolveJsonModule rollup会打包报错 -// import tauriConf from '../../src-tauri/tauri.windows.conf.json'; +// @ts-expect-error import tauriConf from './tauriConf.js'; -import { fileURLToPath } from 'url'; import logger from '@/options/logger.js'; import { mergeTauriConfig } from './common.js'; import { npmDirectory } from '@/utils/dir.js'; @@ -47,11 +45,11 @@ export default class WinBuilder implements IBuilder { await mergeTauriConfig(url, options, tauriConf); - const _ = await shellExec(`cd ${npmDirectory} && npm install && npm run build`); + await shellExec(`cd ${npmDirectory} && npm install && npm run build`); const language = tauriConf.tauri.bundle.windows.wix.language[0]; const arch = process.arch; const msiName = `${name}_${tauriConf.package.version}_${arch}_${language}.msi`; - const appPath = this.getBuildedAppPath(npmDirectory, msiName); + const appPath = this.getBuildAppPath(npmDirectory, msiName); const distPath = path.resolve(`${name}.msi`); await fs.copyFile(appPath, distPath); await fs.unlink(appPath); @@ -59,7 +57,7 @@ export default class WinBuilder implements IBuilder { logger.success('You can find the app installer in', distPath); } - getBuildedAppPath(npmDirectory: string, dmgName: string) { + getBuildAppPath(npmDirectory: string, dmgName: string) { return path.join( npmDirectory, 'src-tauri/target/release/bundle/msi', diff --git a/bin/builders/common.ts b/bin/builders/common.ts index 06b2d19..3c0dc37 100644 --- a/bin/builders/common.ts +++ b/bin/builders/common.ts @@ -51,7 +51,7 @@ export async function mergeTauriConfig( const reg = new RegExp(/([0-9]*[a-zA-Z]+[0-9]*)+/); if (!reg.test(name) || reg.exec(name)[0].length != name.length) { logger.error("package name is illegal, it must be letters, numbers, and it must contain the letters") - logger.error("E.g 123pan,123Pan Pan123,weread, WeRead, WERead"); + logger.error("E.g 123pan,123Pan,Pan123,weread,WeRead,WERead"); process.exit(); } } @@ -113,7 +113,7 @@ export async function mergeTauriConfig( break; } } - + let bundleConf = {tauri: {bundle: tauriConf.tauri.bundle}}; await fs.writeFile( configPath, diff --git a/bin/cli.ts b/bin/cli.ts index 14a6d0e..d1a4778 100644 --- a/bin/cli.ts +++ b/bin/cli.ts @@ -1,6 +1,5 @@ import { program } from 'commander'; import log from 'loglevel'; -import chalk from 'chalk'; import { DEFAULT_PAKE_OPTIONS } from './defaults.js'; import { PakeCliOptions } from './types.js'; import { validateNumberInput, validateUrlInput } from './utils/validate.js'; @@ -9,7 +8,6 @@ import BuilderFactory from './builders/BuilderFactory.js'; import { checkUpdateTips } from './helpers/updater.js'; // @ts-expect-error import packageJson from '../package.json'; -import logger from './options/logger.js'; program.version(packageJson.version).description('A cli application can package a web page to desktop application.'); @@ -25,7 +23,8 @@ program .option('--transparent', 'transparent title bar', DEFAULT_PAKE_OPTIONS.transparent) .option('--debug', 'debug', DEFAULT_PAKE_OPTIONS.transparent) .action(async (url: string, options: PakeCliOptions) => { - checkUpdateTips(); + + await checkUpdateTips(); if (!url) { // 直接 pake 不需要出现url提示 @@ -42,7 +41,7 @@ program const appOptions = await handleInputOptions(options, url); - builder.build(url, appOptions); + await builder.build(url, appOptions); }); program.parse(); diff --git a/bin/options/icon.ts b/bin/options/icon.ts index 8aff0d6..9fddd2c 100644 --- a/bin/options/icon.ts +++ b/bin/options/icon.ts @@ -33,43 +33,6 @@ export async function getDefaultIcon() { return path.join(npmDirectory, iconPath); } -// export async function getIconFromPageUrl(url: string) { -// const icon = await pageIcon(url); -// console.log(icon); -// if (icon.ext === '.ico') { -// const a = await ICO.parse(icon.data); -// icon.data = Buffer.from(a[0].buffer); -// } - -// const iconDir = (await dir()).path; -// const iconPath = path.join(iconDir, `/icon.icns`); - -// const out = png2icons.createICNS(icon.data, png2icons.BILINEAR, 0); - -// await fs.writeFile(iconPath, out); -// return iconPath; -// } - -// export async function getIconFromMacosIcons(name: string) { -// const data = { -// query: name, -// filters: 'approved:true', -// hitsPerPage: 10, -// page: 1, -// }; -// const res = await axios.post('https://p1txh7zfb3-2.algolianet.com/1/indexes/macOSicons/query?x-algolia-agent=Algolia%20for%20JavaScript%20(4.13.1)%3B%20Browser', data, { -// headers: { -// 'x-algolia-api-key': '0ba04276e457028f3e11e38696eab32c', -// 'x-algolia-application-id': 'P1TXH7ZFB3', -// }, -// }); -// if (!res.data.hits.length) { -// return ''; -// } else { -// return downloadIcon(res.data.hits[0].icnsUrl); -// } -// } - export async function downloadIcon(iconUrl: string) { let iconResponse; try { diff --git a/dist/cli.js b/dist/cli.js index 468a13b..a838a66 100644 --- a/dist/cli.js +++ b/dist/cli.js @@ -1646,7 +1646,7 @@ function mergeTauriConfig(url, options, tauriConf) { const reg = new RegExp(/([0-9]*[a-zA-Z]+[0-9]*)+/); if (!reg.test(name) || reg.exec(name)[0].length != name.length) { logger.error("package name is illegal, it must be letters, numbers, and it must contain the letters"); - logger.error("E.g 123pan,123Pan Pan123,weread, WeRead, WERead"); + logger.error("E.g 123pan,123Pan,Pan123,weread,WeRead,WERead"); process.exit(); } } @@ -1752,38 +1752,6 @@ function getDefaultIcon() { return path.join(npmDirectory, iconPath); }); } -// export async function getIconFromPageUrl(url: string) { -// const icon = await pageIcon(url); -// console.log(icon); -// if (icon.ext === '.ico') { -// const a = await ICO.parse(icon.data); -// icon.data = Buffer.from(a[0].buffer); -// } -// const iconDir = (await dir()).path; -// const iconPath = path.join(iconDir, `/icon.icns`); -// const out = png2icons.createICNS(icon.data, png2icons.BILINEAR, 0); -// await fs.writeFile(iconPath, out); -// return iconPath; -// } -// export async function getIconFromMacosIcons(name: string) { -// const data = { -// query: name, -// filters: 'approved:true', -// hitsPerPage: 10, -// page: 1, -// }; -// const res = await axios.post('https://p1txh7zfb3-2.algolianet.com/1/indexes/macOSicons/query?x-algolia-agent=Algolia%20for%20JavaScript%20(4.13.1)%3B%20Browser', data, { -// headers: { -// 'x-algolia-api-key': '0ba04276e457028f3e11e38696eab32c', -// 'x-algolia-application-id': 'P1TXH7ZFB3', -// }, -// }); -// if (!res.data.hits.length) { -// return ''; -// } else { -// return downloadIcon(res.data.hits[0].icnsUrl); -// } -// } function downloadIcon(iconUrl) { return __awaiter(this, void 0, void 0, function* () { let iconResponse; @@ -1861,8 +1829,8 @@ function checkRustInstalled() { var tauri$3 = { windows: [ { - url: "https://weread.qq.com/", - transparent: true, + url: "https://baidu.com", + transparent: false, fullscreen: false, width: 1200, height: 780, @@ -1874,21 +1842,40 @@ var tauri$3 = { }, updater: { active: false + }, + bundle: { + icon: [ + "/Users/tw93/www/pake/src-tauri/icons/icon.icns" + ], + identifier: "pake-bb6e08", + active: true, + category: "DeveloperTool", + copyright: "", + externalBin: [ + ], + longDescription: "", + macOS: { + entitlements: null, + exceptionDomain: "", + frameworks: [ + ], + providerShortName: null, + signingIdentity: null + }, + resources: [ + ], + shortDescription: "", + targets: [ + "dmg" + ] } }; -var build = { - devPath: "../dist", - distDir: "../dist", - beforeBuildCommand: "", - beforeDevCommand: "" -}; var CommonConf = { "package": { - productName: "WeRead", + productName: "baidu", version: "1.0.0" }, - tauri: tauri$3, - build: build + tauri: tauri$3 }; var tauri$2 = { @@ -1931,9 +1918,9 @@ var WinConf = { var tauri$1 = { bundle: { icon: [ - "icons/weread.icns" + "/Users/tw93/www/pake/src-tauri/icons/icon.icns" ], - identifier: "com.tw93.weread", + identifier: "pake-bb6e08", active: true, category: "DeveloperTool", copyright: "", @@ -2038,7 +2025,7 @@ class MacBuilder { yield installRust(); } else { - log.error('Error: Pake need Rust to package your webapp!!!'); + log.error('Error: Pake need Rust to package your webapp!'); process.exit(2); } }); @@ -2048,16 +2035,10 @@ class MacBuilder { log.debug('PakeAppOptions', options); const { name } = options; yield mergeTauriConfig(url, options, tauriConf); - yield shellExec(`cd ${npmDirectory} && npm install && npm run build`); - let arch = "x64"; - if (process.arch === "arm64") { - arch = "aarch64"; - } - else { - arch = process.arch; - } - const dmgName = `${name}_${tauriConf.package.version}_${arch}.dmg`; - const appPath = this.getBuildedAppPath(npmDirectory, dmgName); + //这里直接使用 universal-apple-darwin 的打包,而非当前系统的包 + yield shellExec(`cd ${npmDirectory} && npm install && npm run build:mac`); + const dmgName = `${name}_${tauriConf.package.version}_universal.dmg`; + const appPath = this.getBuildAppPath(npmDirectory, dmgName); const distPath = path.resolve(`${name}.dmg`); yield fs.copyFile(appPath, distPath); yield fs.unlink(appPath); @@ -2065,8 +2046,8 @@ class MacBuilder { logger.success('You can find the app installer in', distPath); }); } - getBuildedAppPath(npmDirectory, dmgName) { - return path.join(npmDirectory, 'src-tauri/target/release/bundle/dmg', dmgName); + getBuildAppPath(npmDirectory, dmgName) { + return path.join(npmDirectory, 'src-tauri/target/universal-apple-darwin/release/bundle/dmg', dmgName); } } @@ -2102,7 +2083,7 @@ class WinBuilder { const language = tauriConf.tauri.bundle.windows.wix.language[0]; const arch = process.arch; const msiName = `${name}_${tauriConf.package.version}_${arch}_${language}.msi`; - const appPath = this.getBuildedAppPath(npmDirectory, msiName); + const appPath = this.getBuildAppPath(npmDirectory, msiName); const distPath = path.resolve(`${name}.msi`); yield fs.copyFile(appPath, distPath); yield fs.unlink(appPath); @@ -2110,7 +2091,7 @@ class WinBuilder { logger.success('You can find the app installer in', distPath); }); } - getBuildedAppPath(npmDirectory, dmgName) { + getBuildAppPath(npmDirectory, dmgName) { return path.join(npmDirectory, 'src-tauri/target/release/bundle/msi', dmgName); } } @@ -2144,7 +2125,7 @@ class LinuxBuilder { const { name } = options; yield mergeTauriConfig(url, options, tauriConf); yield shellExec(`cd ${npmDirectory} && npm install && npm run build`); - let arch = ""; + let arch; if (process.arch === "x64") { arch = "amd64"; } @@ -2152,21 +2133,21 @@ class LinuxBuilder { arch = process.arch; } const debName = `${name}_${tauriConf.package.version}_${arch}.deb`; - const appPath = this.getBuildedAppPath(npmDirectory, "deb", debName); + const appPath = this.getBuildAppPath(npmDirectory, "deb", debName); const distPath = path.resolve(`${name}.deb`); yield fs.copyFile(appPath, distPath); yield fs.unlink(appPath); const appImageName = `${name}_${tauriConf.package.version}_${arch}.AppImage`; - const appImagePath = this.getBuildedAppPath(npmDirectory, "appimage", appImageName); + const appImagePath = this.getBuildAppPath(npmDirectory, "appimage", appImageName); const distAppPath = path.resolve(`${name}.AppImage`); yield fs.copyFile(appImagePath, distAppPath); yield fs.unlink(appImagePath); logger.success('Build success!'); logger.success('You can find the deb app installer in', distPath); - logger.success('You can find the Appimage app installer in', distAppPath); + logger.success('You can find the AppImage app installer in', distAppPath); }); } - getBuildedAppPath(npmDirectory, packageType, packageName) { + getBuildAppPath(npmDirectory, packageType, packageName) { return path.join(npmDirectory, 'src-tauri/target/release/bundle/', packageType, packageName); } } @@ -2187,7 +2168,7 @@ class BuilderFactory { } var name = "pake-cli"; -var version = "1.0.1"; +var version = "1.2.0"; var description = "🤱🏻 很简单的用 Rust 打包网页生成很小的桌面 App 🤱🏻 A simple way to make any web page a desktop application using Rust."; var engines = { node: "^14.13 || >=16.0.0" @@ -2303,7 +2284,7 @@ program .option('--transparent', 'transparent title bar', DEFAULT_PAKE_OPTIONS.transparent) .option('--debug', 'debug', DEFAULT_PAKE_OPTIONS.transparent) .action((url, options) => __awaiter(void 0, void 0, void 0, function* () { - checkUpdateTips(); + yield checkUpdateTips(); if (!url) { // 直接 pake 不需要出现url提示 program.help(); @@ -2315,6 +2296,6 @@ program const builder = BuilderFactory.create(); yield builder.prepare(); const appOptions = yield handleOptions(options, url); - builder.build(url, appOptions); + yield builder.build(url, appOptions); })); program.parse(); diff --git a/package.json b/package.json index fde17bc..68d9594 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "pake-cli", - "version": "1.1.0", + "version": "1.2.0", "description": "🤱🏻 很简单的用 Rust 打包网页生成很小的桌面 App 🤱🏻 A simple way to make any web page a desktop application using Rust.", "engines": { "node": "^14.13 || >=16.0.0" diff --git a/script/build.sh b/script/build.sh index 7d370bc..cabd0cf 100755 --- a/script/build.sh +++ b/script/build.sh @@ -45,7 +45,6 @@ if [[ "$OSTYPE" =~ ^linux ]]; then # for linux, package name may be com.xxx.xxx echo "rename package name" export desktop_file="src-tauri/assets/${package_prefix}.weread.desktop" - # sed -i "s/\"productName\": \"weread\"/\"productName\": \"${package_prefix}-weread\"/g" src-tauri/tauri.conf.json $sd "\"productName\": \"WeRead\"" "\"productName\": \"${package_prefix}-weread\"" src-tauri/tauri.conf.json fi @@ -109,7 +108,6 @@ do if [[ "$OSTYPE" =~ ^darwin ]]; then npm run tauri build -- --target universal-apple-darwin - # mv src-tauri/target/release/bundle/dmg/*.dmg output/macos/${package_title}_x64.dmg mv src-tauri/target/universal-apple-darwin/release/bundle/dmg/*.dmg output/macos/${package_title}.dmg fi @@ -119,4 +117,3 @@ done echo "build all package success!" echo "you run 'rm src-tauri/assets/*.desktop && git checkout src-tauri' to recovery code" -# rm src-tauri/assets/*.desktop && git checkout src-tauri diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index bd260ec..746b2a1 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,30 +1 @@ -{ - "package": { - "productName": "WeRead", - "version": "1.0.0" - }, - "tauri": { - "windows": [ - { - "url": "https://weread.qq.com/", - "transparent": true, - "fullscreen": false, - "width": 1200, - "height": 780, - "resizable": true - } - ], - "security": { - "csp": null - }, - "updater": { - "active": false - } - }, - "build": { - "devPath": "../dist", - "distDir": "../dist", - "beforeBuildCommand": "", - "beforeDevCommand": "" - } -} +{"package":{"productName":"baidu","version":"1.0.0"},"tauri":{"windows":[{"url":"https://baidu.com","transparent":false,"fullscreen":false,"width":1200,"height":780,"resizable":true}],"security":{"csp":null},"updater":{"active":false},"bundle":{"icon":["/Users/tw93/www/pake/src-tauri/icons/icon.icns"],"identifier":"pake-bb6e08","active":true,"category":"DeveloperTool","copyright":"","externalBin":[],"longDescription":"","macOS":{"entitlements":null,"exceptionDomain":"","frameworks":[],"providerShortName":null,"signingIdentity":null},"resources":[],"shortDescription":"","targets":["dmg"]}}} \ No newline at end of file diff --git a/src-tauri/tauri.macos.conf.json b/src-tauri/tauri.macos.conf.json index 5b09612..4374ab1 100644 --- a/src-tauri/tauri.macos.conf.json +++ b/src-tauri/tauri.macos.conf.json @@ -1,25 +1 @@ -{ - "tauri": { - "bundle": { - "icon": [ - "icons/weread.icns" - ], - "identifier": "com.tw93.weread", - "active": true, - "category": "DeveloperTool", - "copyright": "", - "externalBin": [], - "longDescription": "", - "macOS": { - "entitlements": null, - "exceptionDomain": "", - "frameworks": [], - "providerShortName": null, - "signingIdentity": null - }, - "resources": [], - "shortDescription": "", - "targets": ["dmg"] - } - } -} +{"tauri":{"bundle":{"icon":["/Users/tw93/www/pake/src-tauri/icons/icon.icns"],"identifier":"pake-bb6e08","active":true,"category":"DeveloperTool","copyright":"","externalBin":[],"longDescription":"","macOS":{"entitlements":null,"exceptionDomain":"","frameworks":[],"providerShortName":null,"signingIdentity":null},"resources":[],"shortDescription":"","targets":["dmg"]}}} \ No newline at end of file From fe36c255487d74ae51e7e521c5dbc7bb4b4e867e Mon Sep 17 00:00:00 2001 From: Tw93 Date: Fri, 6 Jan 2023 19:01:49 +0800 Subject: [PATCH 06/18] =?UTF-8?q?:bug:=20=E6=9B=B4=E6=96=B0=E6=9C=80?= =?UTF-8?q?=E6=96=B0=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dist/cli.js | 47 ++++++++++----------------------- package.json | 2 +- src-tauri/tauri.conf.json | 31 +++++++++++++++++++++- src-tauri/tauri.macos.conf.json | 26 +++++++++++++++++- 4 files changed, 70 insertions(+), 36 deletions(-) diff --git a/dist/cli.js b/dist/cli.js index a838a66..6cb3ac5 100644 --- a/dist/cli.js +++ b/dist/cli.js @@ -1829,8 +1829,8 @@ function checkRustInstalled() { var tauri$3 = { windows: [ { - url: "https://baidu.com", - transparent: false, + url: "https://weread.qq.com/", + transparent: true, fullscreen: false, width: 1200, height: 780, @@ -1842,40 +1842,21 @@ var tauri$3 = { }, updater: { active: false - }, - bundle: { - icon: [ - "/Users/tw93/www/pake/src-tauri/icons/icon.icns" - ], - identifier: "pake-bb6e08", - active: true, - category: "DeveloperTool", - copyright: "", - externalBin: [ - ], - longDescription: "", - macOS: { - entitlements: null, - exceptionDomain: "", - frameworks: [ - ], - providerShortName: null, - signingIdentity: null - }, - resources: [ - ], - shortDescription: "", - targets: [ - "dmg" - ] } }; +var build = { + devPath: "../dist", + distDir: "../dist", + beforeBuildCommand: "", + beforeDevCommand: "" +}; var CommonConf = { "package": { - productName: "baidu", + productName: "WeRead", version: "1.0.0" }, - tauri: tauri$3 + tauri: tauri$3, + build: build }; var tauri$2 = { @@ -1918,9 +1899,9 @@ var WinConf = { var tauri$1 = { bundle: { icon: [ - "/Users/tw93/www/pake/src-tauri/icons/icon.icns" + "icons/weread.icns" ], - identifier: "pake-bb6e08", + identifier: "com.tw93.weread", active: true, category: "DeveloperTool", copyright: "", @@ -2168,7 +2149,7 @@ class BuilderFactory { } var name = "pake-cli"; -var version = "1.2.0"; +var version = "1.2.1"; var description = "🤱🏻 很简单的用 Rust 打包网页生成很小的桌面 App 🤱🏻 A simple way to make any web page a desktop application using Rust."; var engines = { node: "^14.13 || >=16.0.0" diff --git a/package.json b/package.json index 68d9594..d8e5038 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "pake-cli", - "version": "1.2.0", + "version": "1.2.1", "description": "🤱🏻 很简单的用 Rust 打包网页生成很小的桌面 App 🤱🏻 A simple way to make any web page a desktop application using Rust.", "engines": { "node": "^14.13 || >=16.0.0" diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 746b2a1..bd260ec 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1 +1,30 @@ -{"package":{"productName":"baidu","version":"1.0.0"},"tauri":{"windows":[{"url":"https://baidu.com","transparent":false,"fullscreen":false,"width":1200,"height":780,"resizable":true}],"security":{"csp":null},"updater":{"active":false},"bundle":{"icon":["/Users/tw93/www/pake/src-tauri/icons/icon.icns"],"identifier":"pake-bb6e08","active":true,"category":"DeveloperTool","copyright":"","externalBin":[],"longDescription":"","macOS":{"entitlements":null,"exceptionDomain":"","frameworks":[],"providerShortName":null,"signingIdentity":null},"resources":[],"shortDescription":"","targets":["dmg"]}}} \ No newline at end of file +{ + "package": { + "productName": "WeRead", + "version": "1.0.0" + }, + "tauri": { + "windows": [ + { + "url": "https://weread.qq.com/", + "transparent": true, + "fullscreen": false, + "width": 1200, + "height": 780, + "resizable": true + } + ], + "security": { + "csp": null + }, + "updater": { + "active": false + } + }, + "build": { + "devPath": "../dist", + "distDir": "../dist", + "beforeBuildCommand": "", + "beforeDevCommand": "" + } +} diff --git a/src-tauri/tauri.macos.conf.json b/src-tauri/tauri.macos.conf.json index 4374ab1..5b09612 100644 --- a/src-tauri/tauri.macos.conf.json +++ b/src-tauri/tauri.macos.conf.json @@ -1 +1,25 @@ -{"tauri":{"bundle":{"icon":["/Users/tw93/www/pake/src-tauri/icons/icon.icns"],"identifier":"pake-bb6e08","active":true,"category":"DeveloperTool","copyright":"","externalBin":[],"longDescription":"","macOS":{"entitlements":null,"exceptionDomain":"","frameworks":[],"providerShortName":null,"signingIdentity":null},"resources":[],"shortDescription":"","targets":["dmg"]}}} \ No newline at end of file +{ + "tauri": { + "bundle": { + "icon": [ + "icons/weread.icns" + ], + "identifier": "com.tw93.weread", + "active": true, + "category": "DeveloperTool", + "copyright": "", + "externalBin": [], + "longDescription": "", + "macOS": { + "entitlements": null, + "exceptionDomain": "", + "frameworks": [], + "providerShortName": null, + "signingIdentity": null + }, + "resources": [], + "shortDescription": "", + "targets": ["dmg"] + } + } +} From 45d7652c43e347e4ee4b133f6111fe7c9ada6aa1 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 21:09:59 +0800 Subject: [PATCH 07/18] =?UTF-8?q?:bug:=20=E4=BB=A3=E7=A0=81=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E6=A3=80=E6=9F=A5=E4=BB=A5=E5=8F=8Awindows=E5=85=BC?= =?UTF-8?q?=E5=AE=B9=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/rust-code-quality-check.yml | 2 +- src-tauri/src/main.rs | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/rust-code-quality-check.yml b/.github/workflows/rust-code-quality-check.yml index a04433c..366053f 100644 --- a/.github/workflows/rust-code-quality-check.yml +++ b/.github/workflows/rust-code-quality-check.yml @@ -38,7 +38,7 @@ jobs: tool: cargo-hack,nextest - name: Install dependencies for Ubuntu if: matrix.os == 'ubuntu-latest' - uses: awalsh128/cache-apt-pkgs-action@latest + uses: awalsh128/cache-apt-pkgs-action@1.2.0 with: packages: > libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index fe8714b..f8c4cba 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -93,9 +93,14 @@ fn main() -> wry::Result<()> { None }) .with_inner_size(wry::application::dpi::LogicalSize::new(width, height)); + #[cfg(target_os = "windows")] let window = { let icon_path = format!("png/{}_32.ico", package_name); + // 假如没有设置,就使用默认的即可 + if !std::path::Path::new(&icon_path).exists() { + icon_path = "png/icon_32.ico"; + } let icon = load_icon(std::path::Path::new(&icon_path)); common_window .with_decorations(true) From ac172c87b524bde07cdeacae2a18f5130dba9d09 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 21:11:03 +0800 Subject: [PATCH 08/18] :bug: update version --- .github/workflows/rust-code-quality-check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust-code-quality-check.yml b/.github/workflows/rust-code-quality-check.yml index 366053f..64cb940 100644 --- a/.github/workflows/rust-code-quality-check.yml +++ b/.github/workflows/rust-code-quality-check.yml @@ -38,7 +38,7 @@ jobs: tool: cargo-hack,nextest - name: Install dependencies for Ubuntu if: matrix.os == 'ubuntu-latest' - uses: awalsh128/cache-apt-pkgs-action@1.2.0 + uses: awalsh128/cache-apt-pkgs-action@v1.2.0 with: packages: > libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev From b16695bfe5e1489b36324ece2ac933e81d41b549 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 21:14:36 +0800 Subject: [PATCH 09/18] :bug: update --- .github/workflows/rust-code-quality-check.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/rust-code-quality-check.yml b/.github/workflows/rust-code-quality-check.yml index 64cb940..9e05cc9 100644 --- a/.github/workflows/rust-code-quality-check.yml +++ b/.github/workflows/rust-code-quality-check.yml @@ -38,11 +38,9 @@ jobs: tool: cargo-hack,nextest - name: Install dependencies for Ubuntu if: matrix.os == 'ubuntu-latest' - uses: awalsh128/cache-apt-pkgs-action@v1.2.0 + uses: awalsh128/cache-apt-pkgs-action@latest with: - packages: > - libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev - libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev + packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev version: 1.0 - name: Run unit & integration tests with nextest run: cargo hack --feature-powerset nextest run From 21c986894cafe036c696fc9b04c4ffb1eeb392d7 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 21:18:12 +0800 Subject: [PATCH 10/18] =?UTF-8?q?:bug:=20=E6=9B=B4=E6=96=B0=E7=89=88?= =?UTF-8?q?=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/rust-code-quality-check.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/rust-code-quality-check.yml b/.github/workflows/rust-code-quality-check.yml index 9e05cc9..beaa1f4 100644 --- a/.github/workflows/rust-code-quality-check.yml +++ b/.github/workflows/rust-code-quality-check.yml @@ -67,9 +67,7 @@ jobs: if: matrix.os == 'ubuntu-latest' uses: awalsh128/cache-apt-pkgs-action@latest with: - packages: > - libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev - libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev + packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev version: 1.0 - name: Run all-features code quality checks run: cargo hack --feature-powerset --no-dev-deps clippy From 19a35f39b64ed0c69f9ac8fa2bbacbddfce78f3b Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 21:24:07 +0800 Subject: [PATCH 11/18] :bug: update version --- .github/workflows/editorconfig-check.yml | 2 +- .github/workflows/pake_build.yaml | 2 +- .github/workflows/rust-code-quality-check.yml | 2 +- src-tauri/Cargo.lock | 219 ++++++++++-------- 4 files changed, 128 insertions(+), 97 deletions(-) diff --git a/.github/workflows/editorconfig-check.yml b/.github/workflows/editorconfig-check.yml index b8fcbc8..8615b88 100644 --- a/.github/workflows/editorconfig-check.yml +++ b/.github/workflows/editorconfig-check.yml @@ -1,4 +1,4 @@ -name: Check if the codebase matches the EditorConfig rules +name: Check EditorConfig on: push: diff --git a/.github/workflows/pake_build.yaml b/.github/workflows/pake_build.yaml index 8eab016..354de02 100644 --- a/.github/workflows/pake_build.yaml +++ b/.github/workflows/pake_build.yaml @@ -1,4 +1,4 @@ -name: build +name: Build on: push: # Sequence of patterns matched against refs/tags diff --git a/.github/workflows/rust-code-quality-check.yml b/.github/workflows/rust-code-quality-check.yml index beaa1f4..35e1799 100644 --- a/.github/workflows/rust-code-quality-check.yml +++ b/.github/workflows/rust-code-quality-check.yml @@ -1,4 +1,4 @@ -name: Check, test and format the Rust part of codebase +name: Check Rust Code on: push: diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index a02d382..c4608d7 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -34,9 +34,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.66" +version = "1.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6" +checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61" [[package]] name = "app" @@ -139,11 +139,12 @@ dependencies = [ [[package]] name = "bstr" -version = "0.2.17" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223" +checksum = "b45ea9b00a7b3f2988e9a65ad3917e62123c38dba709b666506207be96d1790b" dependencies = [ "memchr", + "serde", ] [[package]] @@ -196,9 +197,9 @@ dependencies = [ [[package]] name = "cargo_toml" -version = "0.13.0" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa0e3586af56b3bfa51fca452bd56e8dbbbd5d8d81cbf0b7e4e35b695b537eb8" +checksum = "497049e9477329f8f6a559972ee42e117487d01d1e8c2cc9f836ea6fa23a9e1a" dependencies = [ "serde", "toml", @@ -206,9 +207,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.77" +version = "1.0.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9f73505338f7d905b19d18738976aae232eb46b8efc15554ffc56deb5d9ebe4" +checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d" [[package]] name = "cesu8" @@ -522,6 +523,15 @@ dependencies = [ "crypto-common", ] +[[package]] +name = "dirs" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" +dependencies = [ + "dirs-sys", +] + [[package]] name = "dirs-next" version = "2.0.0" @@ -532,6 +542,17 @@ dependencies = [ "dirs-sys-next", ] +[[package]] +name = "dirs-sys" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + [[package]] name = "dirs-sys-next" version = "0.1.2" @@ -860,7 +881,7 @@ dependencies = [ "libc", "log", "rustversion", - "windows", + "windows 0.39.0", ] [[package]] @@ -984,15 +1005,15 @@ dependencies = [ [[package]] name = "glob" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "globset" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a1e17342619edbc21a964c2afbeb6c820c6a2560032872f397bb97ea127bd0a" +checksum = "029d74589adefde59de1a0c4f4732695c32805624aec7b68d91503d4dba79afc" dependencies = [ "aho-corasick", "bstr", @@ -1069,9 +1090,9 @@ dependencies = [ [[package]] name = "half" -version = "2.1.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad6a9459c9c30b177b925162351f97e7d967c7ea8bab3b8352805327daf45554" +checksum = "6c467d36af040b7b2681f5fddd27427f6da8d3d072f575a265e181d2f8e8d157" dependencies = [ "crunchy", ] @@ -1099,9 +1120,9 @@ checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" [[package]] name = "hermit-abi" -version = "0.1.19" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" +checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" dependencies = [ "libc", ] @@ -1137,7 +1158,7 @@ checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399" dependencies = [ "bytes", "fnv", - "itoa 1.0.4", + "itoa 1.0.5", ] [[package]] @@ -1174,11 +1195,10 @@ dependencies = [ [[package]] name = "ignore" -version = "0.4.18" +version = "0.4.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "713f1b139373f96a2e0ce3ac931cd01ee973c3c5dd7c40c0c2efe96ad2b6751d" +checksum = "a05705bc64e0b66a806c3740bd6578ea66051b157ec42dc219c785cbf185aef3" dependencies = [ - "crossbeam-utils", "globset", "lazy_static", "log", @@ -1245,9 +1265,9 @@ checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" [[package]] name = "itoa" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4217ad341ebadf8d8e724e264f13e593e0648f5b3e94b3896a5df283be015ecc" +checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" [[package]] name = "javascriptcore-rs" @@ -1347,9 +1367,9 @@ checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8" [[package]] name = "libc" -version = "0.2.138" +version = "0.2.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db6d7e329c562c5dfab7a46a2afabc8b987ab9a4834c9d1ca04dc54c1546cef8" +checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" [[package]] name = "line-wrap" @@ -1562,9 +1582,9 @@ dependencies = [ [[package]] name = "num_cpus" -version = "1.14.0" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6058e64324c71e02bc2b150e4f3bc8286db6c83092132ffa3f6b1eab0f9def5" +checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" dependencies = [ "hermit-abi", "libc", @@ -1621,9 +1641,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860" +checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" [[package]] name = "overload" @@ -1681,9 +1701,9 @@ dependencies = [ [[package]] name = "paste" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf1c2c742266c2f1041c914ba65355a83ae8747b05f208319784083583494b4b" +checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba" [[package]] name = "percent-encoding" @@ -1693,9 +1713,9 @@ checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" [[package]] name = "pest" -version = "2.5.1" +version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc8bed3549e0f9b0a2a78bf7c0018237a2cdf085eecbbc048e52612438e4e9d0" +checksum = "0f6e86fb9e7026527a0d46bc308b841d73170ef8f443e1807f6ef88526a816d4" dependencies = [ "thiserror", "ucd-trie", @@ -1912,24 +1932,24 @@ dependencies = [ [[package]] name = "proc-macro-hack" -version = "0.5.19" +version = "0.5.20+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" +checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" -version = "1.0.47" +version = "1.0.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725" +checksum = "57a8eca9f9c4ffde41714334dee777596264c7825420f521abc92b5b5deb63a5" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.21" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179" +checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" dependencies = [ "proc-macro2", ] @@ -2116,20 +2136,20 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.14", + "semver 1.0.16", ] [[package]] name = "rustversion" -version = "1.0.9" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97477e48b4cf8603ad5f7aaf897467cf42ab4218a38ef76fb14c2d6773a6d6a8" +checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70" [[package]] name = "ryu" -version = "1.0.11" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09" +checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" [[package]] name = "safemem" @@ -2195,9 +2215,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.14" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e25dfac463d778e353db5be2449d1cce89bd6fd23c9f1ea21310ce6e5a1b29c4" +checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" dependencies = [ "serde", ] @@ -2213,18 +2233,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.150" +version = "1.0.152" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e326c9ec8042f1b5da33252c8a37e9ffbd2c9bef0155215b6e6c80c790e05f91" +checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.150" +version = "1.0.152" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42a3df25b0713732468deadad63ab9da1f1fd75a48a15024b50363f128db627e" +checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" dependencies = [ "proc-macro2", "quote", @@ -2233,20 +2253,20 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.89" +version = "1.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "020ff22c755c2ed3f8cf162dbb41a7268d934702f3ed3631656ea597e08fc3db" +checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" dependencies = [ - "itoa 1.0.4", + "itoa 1.0.5", "ryu", "serde", ] [[package]] name = "serde_repr" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fe39d9fbb0ebf5eb2c7cb7e2a47e4f462fad1379f1166b8ae49ad9eae89a7ca" +checksum = "9a5ec9fa74a20ebbe5d9ac23dac1fc96ba0ecfe9f50f2843b52e537b10fbcb4e" dependencies = [ "proc-macro2", "quote", @@ -2434,9 +2454,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "syn" -version = "1.0.105" +version = "1.0.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b9b43d45702de4c839cb9b51d9f529c5dd26a4aff255b42b1ebc03e88ee908" +checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" dependencies = [ "proc-macro2", "quote", @@ -2471,9 +2491,9 @@ dependencies = [ [[package]] name = "tao" -version = "0.15.7" +version = "0.15.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1fa15735311b4816d030ff54da58560b047daca0970e1031aed5502e84231a8" +checksum = "ac8e6399427c8494f9849b58694754d7cc741293348a6836b6c8d2c5aa82d8e6" dependencies = [ "bitflags", "cairo-rs", @@ -2510,7 +2530,7 @@ dependencies = [ "serde", "unicode-segmentation", "uuid 1.2.2", - "windows", + "windows 0.39.0", "windows-implement", "x11-dl", ] @@ -2528,9 +2548,9 @@ dependencies = [ [[package]] name = "tauri" -version = "1.2.2" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8ea1d785ab2164373703817bff144c4610a69ad3f659becaca0e1ea004b98d8" +checksum = "5b48820ee3bb6a5031a83b2b6e11f8630bdc5a2f68cb841ab8ebc7a15a916679" dependencies = [ "anyhow", "cocoa", @@ -2550,7 +2570,7 @@ dependencies = [ "percent-encoding", "rand 0.8.5", "raw-window-handle", - "semver 1.0.14", + "semver 1.0.16", "serde", "serde_json", "serde_repr", @@ -2568,7 +2588,7 @@ dependencies = [ "uuid 1.2.2", "webkit2gtk", "webview2-com", - "windows", + "windows 0.39.0", ] [[package]] @@ -2581,7 +2601,7 @@ dependencies = [ "cargo_toml", "heck 0.4.0", "json-patch", - "semver 1.0.14", + "semver 1.0.16", "serde_json", "tauri-utils", "winres", @@ -2601,7 +2621,7 @@ dependencies = [ "png", "proc-macro2", "quote", - "semver 1.0.14", + "semver 1.0.16", "serde", "serde_json", "sha2", @@ -2643,7 +2663,7 @@ dependencies = [ "thiserror", "uuid 1.2.2", "webview2-com", - "windows", + "windows 0.39.0", ] [[package]] @@ -2662,7 +2682,7 @@ dependencies = [ "uuid 1.2.2", "webkit2gtk", "webview2-com", - "windows", + "windows 0.39.0", "wry", ] @@ -2684,14 +2704,14 @@ dependencies = [ "phf 0.10.1", "proc-macro2", "quote", - "semver 1.0.14", + "semver 1.0.16", "serde", "serde_json", "serde_with", "thiserror", "url", "walkdir", - "windows", + "windows 0.39.0", ] [[package]] @@ -2727,18 +2747,18 @@ checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c" [[package]] name = "thiserror" -version = "1.0.37" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10deb33631e3c9018b9baf9dcbbc4f737320d2b576bac10f6aefa048fa407e3e" +checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.37" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb" +checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" dependencies = [ "proc-macro2", "quote", @@ -2780,7 +2800,7 @@ version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a561bf4617eebd33bca6434b988f39ed798e527f51a1e797d0ee4f61c0a38376" dependencies = [ - "itoa 1.0.4", + "itoa 1.0.5", "serde", "time-core", "time-macros", @@ -2818,9 +2838,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.23.0" +version = "1.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eab6d665857cc6ca78d6e80303a02cea7a7851e85dfbd77cbdc09bd129f1ef46" +checksum = "1d9f76183f91ecfb55e1d7d5602bd1d979e38a3a522fe900241cf195624d67ae" dependencies = [ "autocfg", "bytes", @@ -2832,9 +2852,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.5.9" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" +checksum = "1333c76748e868a4d9d1017b5ab53171dfd095f70c712fdb4653a406547f598f" dependencies = [ "serde", ] @@ -2930,9 +2950,9 @@ checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992" [[package]] name = "unicode-ident" -version = "1.0.5" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3" +checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" [[package]] name = "unicode-normalization" @@ -3095,18 +3115,20 @@ dependencies = [ [[package]] name = "webbrowser" -version = "0.8.2" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a0cc7962b5aaa0dfcebaeef0161eec6edf5f4606c12e6777fd7d392f52033a5" +checksum = "e74f5ff7786c4c21f61ba8e30ea29c9745f06fca0a4a02d083b3c662583399e8" dependencies = [ + "core-foundation", + "dirs", "jni", + "log", "ndk-context", "objc", "raw-window-handle", "url", "web-sys", - "widestring", - "winapi", + "windows 0.43.0", ] [[package]] @@ -3164,7 +3186,7 @@ checksum = "b4a769c9f1a64a8734bde70caafac2b96cada12cd4aefa49196b3a386b8b4178" dependencies = [ "webview2-com-macros", "webview2-com-sys", - "windows", + "windows 0.39.0", "windows-implement", ] @@ -3189,7 +3211,7 @@ dependencies = [ "serde", "serde_json", "thiserror", - "windows", + "windows 0.39.0", "windows-bindgen", "windows-metadata", ] @@ -3200,12 +3222,6 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb" -[[package]] -name = "widestring" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" - [[package]] name = "winapi" version = "0.3.9" @@ -3251,6 +3267,21 @@ dependencies = [ "windows_x86_64_msvc 0.39.0", ] +[[package]] +name = "windows" +version = "0.43.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04662ed0e3e5630dfa9b26e4cb823b817f1a9addda855d973a9458c236556244" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc 0.42.0", + "windows_i686_gnu 0.42.0", + "windows_i686_msvc 0.42.0", + "windows_x86_64_gnu 0.42.0", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc 0.42.0", +] + [[package]] name = "windows-bindgen" version = "0.39.0" @@ -3413,7 +3444,7 @@ dependencies = [ "webkit2gtk", "webkit2gtk-sys", "webview2-com", - "windows", + "windows 0.39.0", "windows-implement", ] From 444e798bfe0b189fec181a24a655c72aaa09ddfd Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 21:25:58 +0800 Subject: [PATCH 12/18] :bug: update name --- .github/workflows/{main.yml => contribute_list.yml} | 1 + 1 file changed, 1 insertion(+) rename .github/workflows/{main.yml => contribute_list.yml} (92%) diff --git a/.github/workflows/main.yml b/.github/workflows/contribute_list.yml similarity index 92% rename from .github/workflows/main.yml rename to .github/workflows/contribute_list.yml index 7693d6f..5ba5239 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/contribute_list.yml @@ -1,3 +1,4 @@ +name: Build Contribute List on: push: branches: From 8f29aaade533be4a0dbb8f4838333e9ef6cd5696 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 21:46:52 +0800 Subject: [PATCH 13/18] :fire: remove check --- .github/workflows/rust-code-quality-check.yml | 27 ------------------- 1 file changed, 27 deletions(-) diff --git a/.github/workflows/rust-code-quality-check.yml b/.github/workflows/rust-code-quality-check.yml index 35e1799..98a2118 100644 --- a/.github/workflows/rust-code-quality-check.yml +++ b/.github/workflows/rust-code-quality-check.yml @@ -47,33 +47,6 @@ jobs: # - name: Run documentation tests with cargo test # run: cargo hack --feature-powerset test --doc - cargo-clippy: - name: Check codebase quality (cargo clippy) - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: - - windows-latest - - ubuntu-latest - - macos-latest - fail-fast: false - steps: - - uses: actions/checkout@v3 - - uses: actions-rust-lang/setup-rust-toolchain@v1 - with: - components: clippy - - uses: taiki-e/install-action@cargo-hack - - name: Install dependencies for Ubuntu - if: matrix.os == 'ubuntu-latest' - uses: awalsh128/cache-apt-pkgs-action@latest - with: - packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev - version: 1.0 - - name: Run all-features code quality checks - run: cargo hack --feature-powerset --no-dev-deps clippy - - name: Run normal code quality check - run: cargo clippy - cargo-fmt: name: Enforce codebase style (cargo fmt) runs-on: ubuntu-latest From ebec2b67824e4fc9a979f4e97451c37fd7aa4625 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 21:53:28 +0800 Subject: [PATCH 14/18] =?UTF-8?q?:bug:=20=E6=9B=B4=E6=96=B0=E5=8C=85?= =?UTF-8?q?=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/pake_build.yaml | 2 +- .github/workflows/rust-code-quality-check.yml | 29 ++++++++++++++++++- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pake_build.yaml b/.github/workflows/pake_build.yaml index 354de02..5dff046 100644 --- a/.github/workflows/pake_build.yaml +++ b/.github/workflows/pake_build.yaml @@ -1,4 +1,4 @@ -name: Build +name: Build App on: push: # Sequence of patterns matched against refs/tags diff --git a/.github/workflows/rust-code-quality-check.yml b/.github/workflows/rust-code-quality-check.yml index 98a2118..eac394d 100644 --- a/.github/workflows/rust-code-quality-check.yml +++ b/.github/workflows/rust-code-quality-check.yml @@ -40,13 +40,40 @@ jobs: if: matrix.os == 'ubuntu-latest' uses: awalsh128/cache-apt-pkgs-action@latest with: - packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev + packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev gdk-sys version: 1.0 - name: Run unit & integration tests with nextest run: cargo hack --feature-powerset nextest run # - name: Run documentation tests with cargo test # run: cargo hack --feature-powerset test --doc + cargo-clippy: + name: Check codebase quality (cargo clippy) + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: + - windows-latest + - ubuntu-latest + - macos-latest + fail-fast: false + steps: + - uses: actions/checkout@v3 + - uses: actions-rust-lang/setup-rust-toolchain@v1 + with: + components: clippy + - uses: taiki-e/install-action@cargo-hack + - name: Install dependencies for Ubuntu + if: matrix.os == 'ubuntu-latest' + uses: awalsh128/cache-apt-pkgs-action@latest + with: + packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev gdk-sys + version: 1.0 + - name: Run all-features code quality checks + run: cargo hack --feature-powerset --no-dev-deps clippy + - name: Run normal code quality check + run: cargo clippy + cargo-fmt: name: Enforce codebase style (cargo fmt) runs-on: ubuntu-latest From 811e9694aa417b5eba70f7afa7a74c5f456bb998 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 21:56:35 +0800 Subject: [PATCH 15/18] :sparkles: addpackage --- .github/workflows/rust-code-quality-check.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rust-code-quality-check.yml b/.github/workflows/rust-code-quality-check.yml index eac394d..0236cf7 100644 --- a/.github/workflows/rust-code-quality-check.yml +++ b/.github/workflows/rust-code-quality-check.yml @@ -40,7 +40,7 @@ jobs: if: matrix.os == 'ubuntu-latest' uses: awalsh128/cache-apt-pkgs-action@latest with: - packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev gdk-sys + packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev gnome-video-effects gnome-video-effects-extra version: 1.0 - name: Run unit & integration tests with nextest run: cargo hack --feature-powerset nextest run @@ -67,7 +67,7 @@ jobs: if: matrix.os == 'ubuntu-latest' uses: awalsh128/cache-apt-pkgs-action@latest with: - packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev gdk-sys + packages: libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev gnome-video-effects gnome-video-effects-extra version: 1.0 - name: Run all-features code quality checks run: cargo hack --feature-powerset --no-dev-deps clippy From 9b2c85f147f6d7b4131aaa08ccbcc4a4b4158ba6 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 22:04:26 +0800 Subject: [PATCH 16/18] :bug: tostring --- src-tauri/src/main.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index f8c4cba..a9004d9 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -99,7 +99,7 @@ fn main() -> wry::Result<()> { let icon_path = format!("png/{}_32.ico", package_name); // 假如没有设置,就使用默认的即可 if !std::path::Path::new(&icon_path).exists() { - icon_path = "png/icon_32.ico"; + icon_path = "png/icon_32.ico".to_string(); } let icon = load_icon(std::path::Path::new(&icon_path)); common_window From f360f76510be9ec1b882c06d47a2d756d0295f4f Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 22:11:48 +0800 Subject: [PATCH 17/18] =?UTF-8?q?:bug:=20=E4=BF=AE=E6=AD=A3=E8=AF=AD?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src-tauri/src/main.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index a9004d9..b626ec7 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -96,12 +96,12 @@ fn main() -> wry::Result<()> { #[cfg(target_os = "windows")] let window = { - let icon_path = format!("png/{}_32.ico", package_name); + let mut icon_path = format!("png/{}_32.ico", package_name); // 假如没有设置,就使用默认的即可 if !std::path::Path::new(&icon_path).exists() { icon_path = "png/icon_32.ico".to_string(); } - let icon = load_icon(std::path::Path::new(&icon_path)); + let icon = load_icon(std::path::Path::new(&mut icon_path)); common_window .with_decorations(true) .with_window_icon(Some(icon)) From 1f54645469ba6ae4cde32210ff49a204cb5a0b0e Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 7 Jan 2023 22:19:45 +0800 Subject: [PATCH 18/18] =?UTF-8?q?:bug:=20=E6=9B=B4=E6=96=B0=E4=B8=80?= =?UTF-8?q?=E4=B8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src-tauri/src/main.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index b626ec7..d029c0d 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -101,7 +101,7 @@ fn main() -> wry::Result<()> { if !std::path::Path::new(&icon_path).exists() { icon_path = "png/icon_32.ico".to_string(); } - let icon = load_icon(std::path::Path::new(&mut icon_path)); + let icon = load_icon(std::path::Path::new(&icon_path)); common_window .with_decorations(true) .with_window_icon(Some(icon))