From b10e2e313fec27e04151e5724df8606ef4a1a65a Mon Sep 17 00:00:00 2001 From: premtsd Date: Thu, 5 Mar 2026 09:42:43 +0000 Subject: [PATCH] fix: pass encrypt parameter for varchar, text, mediumtext, and longtext string types in push command --- lib/commands/run.ts | 6 +++--- lib/commands/update.ts | 3 ++- lib/commands/utils/attributes.ts | 4 ++++ lib/commands/utils/deployment.ts | 6 +++--- package.json | 4 ++-- 5 files changed, 14 insertions(+), 9 deletions(-) diff --git a/lib/commands/run.ts b/lib/commands/run.ts index d7da653..bfc566d 100644 --- a/lib/commands/run.ts +++ b/lib/commands/run.ts @@ -5,7 +5,7 @@ import ignoreModule from "ignore"; const ignore: typeof ignoreModule = (ignoreModule as unknown as { default?: typeof ignoreModule }).default ?? ignoreModule; -import tar from "tar"; +import { create, extract } from "tar"; import fs from "fs"; import chokidar from "chokidar"; import inquirer from "inquirer"; @@ -323,7 +323,7 @@ const runFunction = async ({ fs.mkdirSync(hotSwapPath, { recursive: true }); } - await tar.extract({ + await extract({ keep: true, sync: true, cwd: hotSwapPath, @@ -358,7 +358,7 @@ const runFunction = async ({ fs.copyFileSync(sourcePath, filePath); } - await tar.create( + await create( { gzip: true, sync: true, diff --git a/lib/commands/update.ts b/lib/commands/update.ts index c874b11..1f6080e 100644 --- a/lib/commands/update.ts +++ b/lib/commands/update.ts @@ -36,7 +36,8 @@ const isInstalledViaNpm = (): boolean => { scriptPath.includes("/usr/local/lib/node_modules/") || scriptPath.includes("/opt/homebrew/lib/node_modules/") || scriptPath.includes("/.npm-global/") || - scriptPath.includes("/node_modules/.bin/") + scriptPath.includes("/node_modules/.bin/") || + scriptPath.includes("/.nvm/versions/node/") ) { return true; } diff --git a/lib/commands/utils/attributes.ts b/lib/commands/utils/attributes.ts index f33e773..279c28f 100644 --- a/lib/commands/utils/attributes.ts +++ b/lib/commands/utils/attributes.ts @@ -262,6 +262,7 @@ export class Attributes { required: attribute.required, xdefault: attribute.default, array: attribute.array, + encrypt: attribute.encrypt, }); case "text": return databasesService.createTextAttribute({ @@ -271,6 +272,7 @@ export class Attributes { required: attribute.required, xdefault: attribute.default, array: attribute.array, + encrypt: attribute.encrypt, }); case "mediumtext": return databasesService.createMediumtextAttribute({ @@ -280,6 +282,7 @@ export class Attributes { required: attribute.required, xdefault: attribute.default, array: attribute.array, + encrypt: attribute.encrypt, }); case "longtext": return databasesService.createLongtextAttribute({ @@ -289,6 +292,7 @@ export class Attributes { required: attribute.required, xdefault: attribute.default, array: attribute.array, + encrypt: attribute.encrypt, }); case "integer": return databasesService.createIntegerAttribute({ diff --git a/lib/commands/utils/deployment.ts b/lib/commands/utils/deployment.ts index ec0cf20..15ca90b 100644 --- a/lib/commands/utils/deployment.ts +++ b/lib/commands/utils/deployment.ts @@ -1,6 +1,6 @@ import fs from "fs"; import path from "path"; -import tar from "tar"; +import { create, extract } from "tar"; import { Client, AppwriteException } from "@appwrite.io/console"; import { error } from "../../parser.js"; @@ -26,7 +26,7 @@ interface DeploymentDetails { async function packageDirectory(dirPath: string): Promise { const tempFile = `${dirPath.replace(/[^a-zA-Z0-9]/g, "_")}-${Date.now()}.tar.gz`; - await tar.create( + await create( { gzip: true, file: tempFile, @@ -111,7 +111,7 @@ export async function downloadDeploymentCode(params: { ); } - tar.extract({ + extract({ sync: true, cwd: resourcePath, file: compressedFileName, diff --git a/package.json b/package.json index e299040..91f9af9 100644 --- a/package.json +++ b/package.json @@ -61,7 +61,7 @@ "inquirer-search-list": "^1.2.6", "json-bigint": "^1.0.0", "tail": "^2.2.6", - "tar": "^6.1.11", + "tar": "^7.4.3", "undici": "^5.28.2", "zod": "^4.3.5" }, @@ -76,7 +76,7 @@ "@types/inquirer": "^8.2.10", "@types/json-bigint": "^1.0.4", "@types/node": "^18.19.0", - "@types/tar": "^6.1.11", + "@types/tar": "^6.1.13", "@yao-pkg/pkg": "^6.11.0", "esbuild": "^0.27.2", "prettier": "^3.7.4",