diff --git a/CHANGELOG.md b/CHANGELOG.md index ae7918fc..f939fc10 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ All notable changes to this project will be documented in this file. +## [0.8.1] - 2025-05-29 + +Fixed error with buffer files. + ## [0.8.0] - 2025-05-29 ### Added diff --git a/package.json b/package.json index 4a23ba81..eee45596 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "Tact", "Smart contract" ], - "version": "0.8.0", + "version": "0.8.1", "engines": { "vscode": "^1.63.0" }, diff --git a/package.server.json b/package.server.json index d3af8e80..60f2eda3 100644 --- a/package.server.json +++ b/package.server.json @@ -1,6 +1,6 @@ { "name": "@tact-lang/tact-language-server", - "version": "0.8.0", + "version": "0.8.1", "description": "Language Server for Tact", "main": "server.js", "keywords": ["TON", "The Open Network", "Tact", "Smart contract", "language server"], diff --git a/server/src/files.ts b/server/src/files.ts index c5a2432c..3348f1b6 100644 --- a/server/src/files.ts +++ b/server/src/files.ts @@ -1,11 +1,12 @@ import * as lsp from "vscode-languageserver" import {TextDocument} from "vscode-languageserver-textdocument" import {TactFile} from "@server/languages/tact/psi/TactFile" -import {fileURLToPath, pathToFileURL} from "node:url" +import {pathToFileURL} from "node:url" import {createFiftParser, createTactParser, createTlbParser} from "@server/parser" import * as fs from "node:fs" import {FiftFile} from "@server/languages/fift/psi/FiftFile" import {TlbFile} from "@server/languages/tlb/psi/TlbFile" +import {URI} from "vscode-uri" export const PARSED_FILES_CACHE: Map = new Map() export const FIFT_PARSED_FILES_CACHE: Map = new Map() @@ -38,11 +39,6 @@ export function reparseTactFile(uri: string, content: string): TactFile { return file } -export const filePathToUri = (filePath: string): string => { - const url = pathToFileURL(filePath).toString() - return url.replace(/c:/g, "c%3A").replace(/d:/g, "d%3A") -} - export function findFiftFile(uri: string): FiftFile { const cached = FIFT_PARSED_FILES_CACHE.get(uri) if (cached !== undefined) { @@ -119,3 +115,13 @@ export const isTlbFile = ( uri: string, event?: lsp.TextDocumentChangeEvent, ): boolean => event?.document.languageId === "tlb" || uri.endsWith(".tlb") + +export const filePathToUri = (filePath: string): string => { + const url = pathToFileURL(filePath).toString() + return url.replace(/c:/g, "c%3A").replace(/d:/g, "d%3A") +} + +function fileURLToPath(uri: string): string { + const normalizedUri = uri.replace(/\\/g, "/") + return URI.parse(normalizedUri).fsPath +}