Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,10 @@ module.exports = {
message:
'Avoid fs-extra, use shared/fs/fs.ts. Notify the Toolkit team if your required functionality is not available.',
},
{
name: 'fs',
message: 'Avoid fs and use shared/fs/fs.ts when possible.',
},
],
},
],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import {
import assert from 'assert'
import sinon from 'sinon'
import * as vscode from 'vscode'
import fs from 'fs'
import fs from 'fs' // eslint-disable-line no-restricted-imports

const mockCodeScanFindings = JSON.stringify([
{
Expand Down
2 changes: 1 addition & 1 deletion packages/core/scripts/build/generateServiceClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/

import * as proc from 'child_process'
import * as nodefs from 'fs'
import * as nodefs from 'fs' // eslint-disable-line no-restricted-imports
import * as path from 'path'

const repoRoot = path.join(process.cwd(), '../../') // root/packages/toolkit -> root/
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/amazonq/lsp/lspController.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import * as vscode from 'vscode'
import * as path from 'path'
import * as crypto from 'crypto'
import { createWriteStream } from 'fs'
import { createWriteStream } from 'fs' // eslint-disable-line no-restricted-imports
import { getLogger } from '../../shared/logger/logger'
import { CurrentWsFolders, collectFilesForIndex } from '../../shared/utilities/workspaceUtils'
import fetch from 'node-fetch'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* This class is responsible for responding to UI events by calling
* the Gumby extension.
*/
import nodefs from 'fs'
import nodefs from 'fs' // eslint-disable-line no-restricted-imports
import path from 'path'
import * as vscode from 'vscode'
import { GumbyNamedMessages, Messenger } from './messenger/messenger'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/

import * as vscode from 'vscode'
import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import * as path from 'path'
import { getLogger, Logger } from '../../../shared/logger'
import { localize } from '../../../shared/utilities/vsCodeUtils'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/awsService/s3/commands/uploadFile.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import * as path from 'path'
import * as mime from 'mime-types'
import * as vscode from 'vscode'
import { statSync } from 'fs'
import { statSync } from 'fs' // eslint-disable-line no-restricted-imports
import { S3 } from 'aws-sdk'
import { getLogger } from '../../../shared/logger'
import { S3Node } from '../explorer/s3Nodes'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/

import * as vscode from 'vscode'
import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import * as os from 'os'
import path from 'path'
import { getLogger } from '../../shared/logger'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import {
import { sleep } from '../../shared/utilities/timeoutUtils'
import * as codewhispererClient from '../client/codewhisperer'
import * as CodeWhispererConstants from '../models/constants'
import { existsSync, statSync, readFileSync } from 'fs'
import { existsSync, statSync, readFileSync } from 'fs' // eslint-disable-line no-restricted-imports
import { RawCodeScanIssue } from '../models/model'
import * as crypto from 'crypto'
import path = require('path')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import * as vscode from 'vscode'
import * as nodefs from 'fs'
import * as nodefs from 'fs' // eslint-disable-line no-restricted-imports
import * as path from 'path'
import * as os from 'os'
import * as codeWhisperer from '../../client/codewhisperer'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import * as path from 'path'
import * as os from 'os'
import xml2js = require('xml2js')
import * as CodeWhispererConstants from '../../models/constants'
import { existsSync, writeFileSync } from 'fs'
import { existsSync, writeFileSync } from 'fs' // eslint-disable-line no-restricted-imports
import { BuildSystem, FolderInfo, transformByQState } from '../../models/model'
import { IManifestFile } from '../../../amazonqFeatureDev/models'
import fs from '../../../shared/fs/fs'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

import AdmZip from 'adm-zip'
import os from 'os'
import fs from 'fs'
import fs from 'fs' // eslint-disable-line no-restricted-imports
import { parsePatch, applyPatches, ParsedDiff } from 'diff'
import path from 'path'
import vscode from 'vscode'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/dynamicResources/awsResourceManager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

import { writeFileSync } from 'fs'
import { writeFileSync } from 'fs' // eslint-disable-line no-restricted-imports
import * as path from 'path'
import * as vscode from 'vscode'
import { CloudFormationClient } from '../shared/clients/cloudFormationClient'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/

import { _Blob } from 'aws-sdk/clients/lambda'
import { readFileSync } from 'fs'
import { readFileSync } from 'fs' // eslint-disable-line no-restricted-imports
import * as _ from 'lodash'
import * as vscode from 'vscode'
import { DefaultLambdaClient, LambdaClient } from '../../../shared/clients/lambdaClient'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

import { promises as nodefs } from 'fs'
import { promises as nodefs } from 'fs' // eslint-disable-line no-restricted-imports
import * as vscode from 'vscode'
import { schema } from 'yaml-cfn'
import * as yaml from 'js-yaml'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/shared/errors.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import { isThrottlingError, isTransientError } from '@smithy/service-error-class
import { Result } from './telemetry/telemetry'
import { CancellationError } from './utilities/timeoutUtils'
import { hasKey, isNonNullable } from './utilities/tsUtils'
import type * as nodefs from 'fs'
import type * as nodefs from 'fs' // eslint-disable-line no-restricted-imports
import type * as os from 'os'
import { CodeWhispererStreamingServiceException } from '@amzn/codewhisperer-streaming'
import { driveLetterRegex } from './utilities/pathUtils'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/shared/extensions/yaml.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import { getLogger } from '../logger/logger'
import { getIdeProperties } from '../extensionUtilities'
import { activateExtension } from '../utilities/vsCodeUtils'
import { AWS_SCHEME } from '../constants'
import * as nodefs from 'fs'
import * as nodefs from 'fs' // eslint-disable-line no-restricted-imports

// sourced from https://github.com/redhat-developer/vscode-yaml/blob/3d82d61ea63d3e3a9848fe6b432f8f1f452c1bec/src/schema-extension-api.ts
// removed everything that is not currently being used
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/shared/fs/fs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/
import vscode from 'vscode'
import os from 'os'
import { promises as nodefs, constants as nodeConstants, WriteFileOptions } from 'fs'
import { promises as nodefs, constants as nodeConstants, WriteFileOptions } from 'fs' // eslint-disable-line no-restricted-imports
import { chmod } from 'fs/promises'
import { isCloud9 } from '../extensionUtilities'
import _path from 'path'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/shared/fs/templateRegistry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/

import * as vscode from 'vscode'
import { readFileSync } from 'fs'
import { readFileSync } from 'fs' // eslint-disable-line no-restricted-imports
import * as CloudFormation from '../cloudformation/cloudformation'
import * as pathutils from '../utilities/pathUtils'
import * as path from 'path'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/shared/handleUninstall.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
// Implementation inspired by https://github.com/sourcegraph/sourcegraph-public-snapshot/blob/c864f15af264f0f456a6d8a83290b5c940715349/client/vscode/src/settings/uninstall.ts#L2

import * as vscode from 'vscode'
import { existsSync } from 'fs'
import { existsSync } from 'fs' // eslint-disable-line no-restricted-imports
import * as semver from 'semver'
import { join } from 'path'
import { getLogger } from './logger/logger'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/shared/icons.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import globals, { isWeb } from './extensionGlobals'

import type * as packageJson from '../../package.json'
import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import * as path from 'path'
import { Uri, ThemeIcon, ThemeColor } from 'vscode'
import { isCloud9 } from './extensionUtilities'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import * as http from 'http'
import * as https from 'https'
import * as stream from 'stream'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/

import * as vscode from 'vscode'
import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import * as path from 'path'
import { samImageLambdaRuntimes, samZipLambdaRuntimes } from '../../../lambda/models/samLambdaRuntime'
import * as CloudFormation from '../../cloudformation/cloudformation'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

import { existsSync, PathLike, readFileSync } from 'fs'
import { existsSync, PathLike, readFileSync } from 'fs' // eslint-disable-line no-restricted-imports
import * as path from 'path'
import * as vscode from 'vscode'
import { isImageLambdaConfig, NodejsDebugConfiguration } from '../../../lambda/local/debugConfiguration'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/shared/sshConfig.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import { CancellationError } from './utilities/timeoutUtils'
import { getSshConfigPath } from './extensions/ssh'
import globals from './extensionGlobals'
import { fileExists, readFileAsString } from './filesystemUtilities'
import { chmodSync } from 'fs'
import { chmodSync } from 'fs' // eslint-disable-line no-restricted-imports
import fs from './fs/fs'

const localize = nls.loadMessageBundle()
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/shared/utilities/streamUtilities.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import { Readable, Writable, pipeline } from 'stream'
import * as vscode from 'vscode'

Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/shared/utilities/textUtilities.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/

import * as crypto from 'crypto'
import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import { default as stripAnsi } from 'strip-ansi'
import { isCloud9 } from '../extensionUtilities'
import { getLogger } from '../logger'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import { getLogger, Logger } from '../../../shared/logger'

/**
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/test/awsService/ec2/sshKeyPair.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/
import * as vscode from 'vscode'
import assert from 'assert'
import nodefs from 'fs'
import nodefs from 'fs' // eslint-disable-line no-restricted-imports
import * as sinon from 'sinon'
import * as path from 'path'
import * as os from 'os'
Expand Down
6 changes: 3 additions & 3 deletions packages/core/src/test/codewhisperer/testUtil.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@ import { getLogger } from '../../shared/logger'
import { CodeWhispererCodeCoverageTracker } from '../../codewhisperer/tracker/codewhispererCodeCoverageTracker'
import globals from '../../shared/extensionGlobals'
import { session } from '../../codewhisperer/util/codeWhispererSession'
import fs from 'fs'
import { DefaultAWSClientBuilder, ServiceOptions } from '../../shared/awsClientBuilder'
import { FakeAwsContext } from '../utilities/fakeAwsContext'
import { Service } from 'aws-sdk'
import userApiConfig = require('./../../codewhisperer/client/user-service-2.json')
import CodeWhispererUserClient = require('../../codewhisperer/client/codewhispereruserclient')
import { codeWhispererClient } from '../../codewhisperer/client/codewhisperer'
import { RecommendationHandler } from '../../codewhisperer/service/recommendationHandler'
import { Dirent } from 'fs' // eslint-disable-line no-restricted-imports

export async function resetCodeWhispererGlobalVariables() {
vsCodeState.isIntelliSenseActive = false
Expand Down Expand Up @@ -201,8 +201,8 @@ export function createCodeActionContext(): vscode.CodeActionContext {
}
}

export function createMockDirentFile(fileName: string): fs.Dirent {
const dirent = new fs.Dirent()
export function createMockDirentFile(fileName: string): Dirent {
const dirent = new Dirent()
dirent.isFile = () => true
dirent.name = fileName
return dirent
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import { getOpenExternalStub } from '../../globalSetup.test'
import { getTestWindow } from '../../shared/vscode/window'
import { SeverityLevel } from '../../shared/vscode/message'
import { ToolkitError } from '../../../shared/errors'
import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import * as path from 'path'
import { Stub, stub } from '../../utilities/stubber'

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import { CloudControlClient, DefaultCloudControlClient } from '../../shared/clie
import { CloudFormationClient, DefaultCloudFormationClient } from '../../shared/clients/cloudFormationClient'
import { makeTemporaryToolkitFolder, readFileAsString } from '../../shared/filesystemUtilities'
import { FakeExtensionContext } from '../fakeExtensionContext'
import { existsSync } from 'fs'
import { existsSync } from 'fs' // eslint-disable-line no-restricted-imports
import { ResourceTypeMetadata } from '../../dynamicResources/model/resources'
import globals from '../../shared/extensionGlobals'
import { Stub, stub } from '../utilities/stubber'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import admZip from 'adm-zip'
import { makeTemporaryToolkitFolder } from '../../../shared/filesystemUtilities'
import { DefaultSchemaClient } from '../../../shared/clients/schemaClient'
import { fs } from '../../../shared'
import * as nodefs from 'fs'
import * as nodefs from 'fs' // eslint-disable-line no-restricted-imports

describe('CodeDownloader', function () {
let tempFolder: string
Expand Down
4 changes: 2 additions & 2 deletions packages/core/src/test/shared/fs/fs.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ import assert from 'assert'
import vscode from 'vscode'
import * as path from 'path'
import * as utils from 'util'
import { existsSync, mkdirSync, promises as nodefs, readFileSync } from 'fs'
import { existsSync, mkdirSync, promises as nodefs, readFileSync } from 'fs' // eslint-disable-line no-restricted-imports
import { stat } from 'fs/promises'
import nodeFs from 'fs'
import nodeFs from 'fs' // eslint-disable-line no-restricted-imports
import fs, { FileSystem } from '../../../shared/fs/fs'
import * as os from 'os'
import { isMinVscode, isWin } from '../../../shared/vscode/env'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import fs from '../../../shared/fs/fs'
import { stub, SinonStub } from 'sinon'
import { MESSAGE } from '../../../shared/logger/consoleLogTransport'
import { createTestFile } from '../../testUtil'
import { readFileSync } from 'fs'
import { readFileSync } from 'fs' // eslint-disable-line no-restricted-imports
import { sleep } from '../../../shared/utilities/timeoutUtils'

describe('SharedFileTransport', function () {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/

import assert from 'assert'
import * as fs from 'fs'
import * as fs from 'fs' // eslint-disable-line no-restricted-imports
import * as filesystemUtilities from '../../../shared/filesystemUtilities'
import * as vscode from 'vscode'
import { ToolkitLogger } from '../../../shared/logger/toolkitLogger'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/test/shared/vscode/runCommand.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import globals from '../../../shared/extensionGlobals'

import os from 'os'
import { promises as fsPromises } from 'fs'
import { promises as fsPromises } from 'fs' // eslint-disable-line no-restricted-imports
import fs from '../../../shared/fs/fs'
import * as sinon from 'sinon'
import assert from 'assert'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/test/testUtil.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import { MetricName, MetricShapes } from '../shared/telemetry/telemetry'
import { keys, selectFrom } from '../shared/utilities/tsUtils'
import fs from '../shared/fs/fs'
import { DeclaredCommand } from '../shared/vscode/commands2'
import { mkdirSync, existsSync } from 'fs'
import { mkdirSync, existsSync } from 'fs' // eslint-disable-line no-restricted-imports
import { randomBytes } from 'crypto'
import request from '../shared/request'
import { stub } from 'sinon'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/testInteg/sam.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

import assert from 'assert'
import { Runtime } from 'aws-sdk/clients/lambda'
import { mkdtempSync } from 'fs'
import { mkdtempSync } from 'fs' // eslint-disable-line no-restricted-imports
import * as path from 'path'
import * as semver from 'semver'
import * as vscode from 'vscode'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import vscode from 'vscode'
import * as GitTypes from '../../../../types/git'
import { GitExtension, Repository } from '../../../shared/extensions/git'
import { makeTemporaryToolkitFolder } from '../../../shared/filesystemUtilities'
import { realpathSync } from 'fs'
import { realpathSync } from 'fs' // eslint-disable-line no-restricted-imports
import { execFileSync } from 'child_process'
import { sleep } from '../../../shared/utilities/timeoutUtils'
import { getLogger } from '../../../shared/logger/logger'
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/testLint/gitSecrets.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import { describe } from 'mocha'
import assert from 'assert'
import * as path from 'path'
import { platform } from 'os'
import { existsSync, mkdirSync, unlinkSync, writeFileSync } from 'fs'
import { existsSync, mkdirSync, unlinkSync, writeFileSync } from 'fs' // eslint-disable-line no-restricted-imports
import { runCmd } from './testUtils'

/**
Expand Down
Loading
Loading