From 2afb3f8ad577ea41371d5ba2bebed577b2f04eff Mon Sep 17 00:00:00 2001 From: Lucas Fernandes Nogueira Date: Mon, 22 Mar 2021 21:05:37 -0300 Subject: [PATCH] fix(tauri.js): init command properly building with manifests (#1374) * fix(tauri.js): init command properly building with manifests * fix: tests --- cli/tauri.js/jest.config.js | 1 + cli/tauri.js/package.json | 1 + cli/tauri.js/src/template/index.ts | 15 ++++++++------- cli/tauri.js/yarn.lock | 9 ++++++++- 4 files changed, 18 insertions(+), 8 deletions(-) diff --git a/cli/tauri.js/jest.config.js b/cli/tauri.js/jest.config.js index d1605802e..b105a56ad 100644 --- a/cli/tauri.js/jest.config.js +++ b/cli/tauri.js/jest.config.js @@ -41,6 +41,7 @@ module.exports = { }, transform: { 'templates[\\\\/]tauri.js': './test/jest/raw-loader-transformer.js', + '\\.toml$': 'jest-transform-toml', '\\.(js|ts)$': 'babel-jest' } } diff --git a/cli/tauri.js/package.json b/cli/tauri.js/package.json index 3e23c2f54..62f93a7c8 100644 --- a/cli/tauri.js/package.json +++ b/cli/tauri.js/package.json @@ -93,6 +93,7 @@ "eslint-plugin-security": "1.4.0", "is-running": "2.1.0", "jest": "26.6.3", + "jest-transform-toml": "^1.0.0", "lint-staged": "10.5.4", "lockfile-lint": "4.6.2", "prettier": "2.2.1", diff --git a/cli/tauri.js/src/template/index.ts b/cli/tauri.js/src/template/index.ts index 9e424ba44..a6e8d1cc5 100644 --- a/cli/tauri.js/src/template/index.ts +++ b/cli/tauri.js/src/template/index.ts @@ -84,20 +84,21 @@ Run \`tauri init --force template\` to overwrite.`) return resolvedPath.replace(/\\/g, '/') } - const resolveCurrentTauriVersion = (crate: string): string => { - const manifestPath = `../../../../${crate}/Cargo.toml` - // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires, @typescript-eslint/no-unsafe-member-access, security/detect-non-literal-require - const tauriManifest = require(manifestPath) as CargoManifest - const version = tauriManifest.package.version + const resolveCurrentTauriVersion = (manifest: CargoManifest): string => { + const version = manifest.package.version return version.substring(0, version.lastIndexOf('.')) } + // eslint-disable-next-line @typescript-eslint/no-var-requires + const tauriManifest = require('../../../../tauri/Cargo.toml') as CargoManifest + // eslint-disable-next-line @typescript-eslint/no-var-requires + const tauriBuildManifest = require('../../../../core/tauri-build/Cargo.toml') as CargoManifest const tauriDep = tauriPath ? `{ path = "${resolveTauriPath(tauriPath, 'tauri')}" }` - : `{ version = "${resolveCurrentTauriVersion('tauri')}" }` + : `{ version = "${resolveCurrentTauriVersion(tauriManifest)}" }` const tauriBuildDep = tauriPath ? `{ path = "${resolveTauriPath(tauriPath, 'core/tauri-build')}" }` - : `{ version = "${resolveCurrentTauriVersion('core/tauri-build')}" }` + : `{ version = "${resolveCurrentTauriVersion(tauriBuildManifest)}" }` removeSync(dir) copyTemplates({ diff --git a/cli/tauri.js/yarn.lock b/cli/tauri.js/yarn.lock index f1a144a70..a0823d68f 100644 --- a/cli/tauri.js/yarn.lock +++ b/cli/tauri.js/yarn.lock @@ -4891,6 +4891,13 @@ jest-snapshot@^26.6.2: pretty-format "^26.6.2" semver "^7.3.2" +jest-transform-toml@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/jest-transform-toml/-/jest-transform-toml-1.0.0.tgz#0a255066d4e59620ec3c3cc5a555321bb05f153d" + integrity sha1-CiVQZtTlliDsPDzFpVUyG7BfFT0= + dependencies: + toml-loader "^1.0.0" + jest-util@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" @@ -7392,7 +7399,7 @@ to-regex@^3.0.1, to-regex@^3.0.2: regex-not "^1.0.2" safe-regex "^1.1.0" -toml-loader@1.0.0: +toml-loader@1.0.0, toml-loader@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/toml-loader/-/toml-loader-1.0.0.tgz#05249b9294b623601148260caa480b22a653a19a" integrity sha1-BSSbkpS2I2ARSCYMqkgLIqZToZo=