Skip to content

Commit 9c3d9f7

Browse files
authored
Release 0.9.1 (#458)
* Conditionally import `reflect-metadata` (fixes #432) * Once within the extension * Once within the debugger * Once within the unittests * Fully qualify the `path` module (fixes #454) * Update change log for release (#457)
1 parent 08008f3 commit 9c3d9f7

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+18
-62
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions

pythonFiles/PythonTools/visualstudio_py_launcher_nodebug.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ def handle_exception(exc_type, exc_value, exc_tb):
114114
tb = traceback.extract_tb(exc_tb)
115115
for i in [0, -1]:
116116
while tb:
117-
frame_file = path.normcase(tb[i][0])
117+
frame_file = os.path.normcase(tb[i][0])
118118
if not any(is_same_py_file(frame_file, f) for f in do_not_debug):
119119
break
120120
del tb[i]

src/client/common/envFileParser.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import * as fs from 'fs-extra';
2-
import 'reflect-metadata';
32
import { PathUtils } from './platform/pathUtils';
43
import { EnvironmentVariablesService } from './variables/environment';
54
import { EnvironmentVariables } from './variables/types';

src/client/common/installer/condaInstaller.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33

44
import { inject, injectable } from 'inversify';
55
import * as path from 'path';
6-
import 'reflect-metadata';
76
import { Uri } from 'vscode';
87
import { ICondaLocatorService, IInterpreterLocatorService, INTERPRETER_LOCATOR_SERVICE, InterpreterType } from '../../interpreter/contracts';
98
import { CONDA_RELATIVE_PY_PATH } from '../../interpreter/locators/services/conda';

src/client/common/installer/installer.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { inject, injectable, named } from 'inversify';
22
import * as os from 'os';
33
import * as path from 'path';
4-
import 'reflect-metadata';
54
import { ConfigurationTarget, QuickPickItem, Uri, window, workspace } from 'vscode';
65
import * as vscode from 'vscode';
76
import { IFormatterHelper } from '../../formatters/types';

src/client/common/installer/moduleInstaller.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// Licensed under the MIT License.
33

44
import { injectable } from 'inversify';
5-
import 'reflect-metadata';
65
import { Uri } from 'vscode';
76
import { IServiceContainer } from '../../ioc/types';
87
import { PythonSettings } from '../configSettings';

src/client/common/installer/pipInstaller.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// Licensed under the MIT License.
33

44
import { inject, injectable } from 'inversify';
5-
import 'reflect-metadata';
65
import { Uri, workspace } from 'vscode';
76
import { IServiceContainer } from '../../ioc/types';
87
import { IPythonExecutionFactory } from '../process/types';

src/client/common/logger.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { injectable } from 'inversify';
2-
import 'reflect-metadata';
32
import { ILogger } from './types';
43

54
const PREFIX = 'Python Extension: ';

src/client/common/persistentState.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
'use strict';
55

66
import { inject, injectable, named } from 'inversify';
7-
import 'reflect-metadata';
87
import { Memento } from 'vscode';
98
import { GLOBAL_MEMENTO, IMemento, IPersistentState, IPersistentStateFactory, WORKSPACE_MEMENTO } from './types';
109

src/client/common/platform/pathUtils.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { inject, injectable } from 'inversify';
2-
import 'reflect-metadata';
32
import { IPathUtils, IsWindows } from '../types';
43
import { NON_WINDOWS_PATH_VARIABLE_NAME, WINDOWS_PATH_VARIABLE_NAME } from './constants';
54

src/client/common/platform/registry.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { injectable } from 'inversify';
2-
import 'reflect-metadata';
32
import * as Registry from 'winreg';
43
import { Architecture, IRegistry, RegistryHive } from './types';
54

src/client/common/process/decoder.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33

44
import * as iconv from 'iconv-lite';
55
import { injectable } from 'inversify';
6-
import 'reflect-metadata';
76
import { DEFAULT_ENCODING } from './constants';
87
import { IBufferDecoder } from './types';
98

src/client/common/process/proc.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33

44
import { spawn } from 'child_process';
55
import { inject, injectable } from 'inversify';
6-
import 'reflect-metadata';
76
import * as Rx from 'rxjs';
87
import { Disposable } from 'vscode';
98
import { createDeferred } from '../helpers';

src/client/common/process/pythonExecutionFactory.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// Licensed under the MIT License.
33

44
import { inject, injectable } from 'inversify';
5-
import 'reflect-metadata';
65
import { Uri } from 'vscode';
76
import { PythonSettings } from '../configSettings';
87
import { IEnvironmentVariablesProvider } from '../variables/types';

src/client/common/process/pythonProcess.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// Licensed under the MIT License.
33

44
import { injectable } from 'inversify';
5-
import 'reflect-metadata';
65
import { ErrorUtils } from '../errors/errorUtils';
76
import { ModuleNotInstalledError } from '../errors/moduleNotInstalledError';
87
import { EnvironmentVariables } from '../variables/types';

src/client/common/process/serviceRegistry.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
// Copyright (c) Microsoft Corporation. All rights reserved.
22
// Licensed under the MIT License.
33

4-
// tslint:disable-next-line:no-import-side-effect
5-
import 'reflect-metadata';
64
import { IServiceManager } from '../../ioc/types';
75
import { BufferDecoder } from './decoder';
86
import { ProcessService } from './proc';

src/client/common/serviceRegistry.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
// Copyright (c) Microsoft Corporation. All rights reserved.
22
// Licensed under the MIT License.
33

4-
import 'reflect-metadata';
54
import { IServiceManager } from '../ioc/types';
65
import { CondaInstaller } from './installer/condaInstaller';
76
import { Installer } from './installer/installer';

src/client/common/terminal/service.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// Licensed under the MIT License.
33

44
import { inject, injectable } from 'inversify';
5-
import 'reflect-metadata';
65
import { Disposable, Terminal, Uri, window, workspace } from 'vscode';
76
import { IServiceContainer } from '../../ioc/types';
87
import { IDisposableRegistry, IsWindows } from '../types';

src/client/common/variables/environment.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import * as fs from 'fs-extra';
55
import { inject, injectable } from 'inversify';
66
import * as path from 'path';
7-
import 'reflect-metadata';
87
import { IPathUtils } from '../types';
98
import { EnvironmentVariables, IEnvironmentVariablesService } from './types';
109

src/client/common/variables/environmentVariablesProvider.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// Licensed under the MIT License.
33

44
import { inject, injectable } from 'inversify';
5-
import 'reflect-metadata';
65
import { Disposable, FileSystemWatcher, Uri, workspace } from 'vscode';
76
import { PythonSettings } from '../configSettings';
87
import { NON_WINDOWS_PATH_VARIABLE_NAME, WINDOWS_PATH_VARIABLE_NAME } from '../platform/constants';

src/client/common/variables/serviceRegistry.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
// Copyright (c) Microsoft Corporation. All rights reserved.
22
// Licensed under the MIT License.
33

4-
// tslint:disable-next-line:no-import-side-effect
5-
import 'reflect-metadata';
64
import { IServiceManager } from '../../ioc/types';
75
import { EnvironmentVariablesService } from './environment';
86
import { EnvironmentVariablesProvider } from './environmentVariablesProvider';

src/client/debugger/Main.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
"use strict";
22

3+
// This line should always be right on top.
4+
if (Reflect.metadata === undefined) {
5+
// tslint:disable-next-line:no-require-imports no-var-requires
6+
require('reflect-metadata');
7+
}
38
import * as fs from "fs";
49
import * as path from "path";
5-
import 'reflect-metadata';
610
import { DebugSession, Handles, InitializedEvent, OutputEvent, Scope, Source, StackFrame, StoppedEvent, TerminatedEvent, Thread } from "vscode-debugadapter";
711
import { ThreadEvent } from "vscode-debugadapter";
812
import { DebugProtocol } from "vscode-debugprotocol";

src/client/extension.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
'use strict';
2+
// This line should always be right on top.
3+
if (Reflect.metadata === undefined) {
4+
// tslint:disable-next-line:no-require-imports no-var-requires
5+
require('reflect-metadata');
6+
}
27
import { Container } from 'inversify';
38
import * as os from 'os';
49
import * as vscode from 'vscode';

src/client/formatters/helper.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33

44
import { injectable } from 'inversify';
55
import * as path from 'path';
6-
import 'reflect-metadata';
76
import { Uri } from 'vscode';
87
import { IFormattingSettings, PythonSettings } from '../common/configSettings';
98
import { ExecutionInfo, Product } from '../common/types';

src/client/formatters/serviceRegistry.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
// Copyright (c) Microsoft Corporation. All rights reserved.
22
// Licensed under the MIT License.
33

4-
import 'reflect-metadata';
54
import { IServiceManager } from '../ioc/types';
65
import { FormatterHelper } from './helper';
76
import { IFormatterHelper } from './types';

src/client/interpreter/interpreterVersion.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import * as child_process from 'child_process';
22
import { injectable } from 'inversify';
3-
import 'reflect-metadata';
43
import { getInterpreterVersion } from '../common/utils';
54
import { IInterpreterVersionService } from './contracts';
65

src/client/interpreter/locators/services/KnownPathsService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { inject, injectable } from 'inversify';
22
import * as _ from 'lodash';
33
import * as path from 'path';
4-
import 'reflect-metadata';
54
import { Uri } from 'vscode';
65
import { fsExistsAsync, IS_WINDOWS } from '../../../common/utils';
76
import { IInterpreterLocatorService, IInterpreterVersionService, IKnownSearchPathsForInterpreters, InterpreterType } from '../../contracts';

src/client/interpreter/locators/services/condaEnvFileService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import * as fs from 'fs-extra';
22
import { inject, injectable } from 'inversify';
33
import * as path from 'path';
4-
import 'reflect-metadata';
54
import { Uri } from 'vscode';
65
import { IS_WINDOWS } from '../../../common/configSettings';
76
import {

src/client/interpreter/locators/services/condaEnvService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import * as child_process from 'child_process';
22
import * as fs from 'fs-extra';
33
import { inject, injectable } from 'inversify';
44
import * as path from 'path';
5-
import 'reflect-metadata';
65
import { Uri } from 'vscode';
76
import { VersionUtils } from '../../../common/versionUtils';
87
import { ICondaLocatorService, IInterpreterLocatorService, IInterpreterVersionService, InterpreterType, PythonInterpreter } from '../../contracts';

src/client/interpreter/locators/services/condaLocator.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import * as child_process from 'child_process';
22
import * as fs from 'fs-extra';
33
import { inject, injectable, named, optional } from 'inversify';
44
import * as path from 'path';
5-
import 'reflect-metadata';
65
import { IProcessService } from '../../../common/process/types';
76
import { IsWindows } from '../../../common/types';
87
import { VersionUtils } from '../../../common/versionUtils';

src/client/interpreter/locators/services/currentPathService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import * as child_process from 'child_process';
22
import { inject, injectable } from 'inversify';
33
import * as _ from 'lodash';
44
import * as path from 'path';
5-
import 'reflect-metadata';
65
import { Uri } from 'vscode';
76
import { PythonSettings } from '../../../common/configSettings';
87
import { IInterpreterLocatorService, IInterpreterVersionService, InterpreterType } from '../../contracts';

src/client/interpreter/locators/services/virtualEnvService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { inject, injectable } from 'inversify';
22
import * as _ from 'lodash';
33
import * as path from 'path';
4-
import 'reflect-metadata';
54
import { Uri, workspace } from 'vscode';
65
import { fsReaddirAsync, IS_WINDOWS } from '../../../common/utils';
76
import { IInterpreterLocatorService, IInterpreterVersionService, IKnownSearchPathsForVirtualEnvironments, InterpreterType, PythonInterpreter } from '../../contracts';

src/client/interpreter/serviceRegistry.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
// Copyright (c) Microsoft Corporation. All rights reserved.
22
// Licensed under the MIT License.
33

4-
import 'reflect-metadata';
54
import { IsWindows } from '../common/types';
65
import { IServiceManager } from '../ioc/types';
76
import {

src/client/interpreter/virtualEnvs/venv.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { injectable } from 'inversify';
22
import * as path from 'path';
3-
import 'reflect-metadata';
43
import { fsExistsAsync } from '../../common/utils';
54
import { InterpreterType } from '../contracts';
65
import { IVirtualEnvironmentIdentifier } from './types';

src/client/interpreter/virtualEnvs/virtualEnv.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { injectable } from 'inversify';
22
import * as path from 'path';
3-
import 'reflect-metadata';
43
import { fsExistsAsync } from '../../common/utils';
54
import { InterpreterType } from '../contracts';
65
import { IVirtualEnvironmentIdentifier } from './types';

src/client/linters/helper.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { injectable } from 'inversify';
22
import * as path from 'path';
3-
import 'reflect-metadata';
43
import { Uri } from 'vscode';
54
import { ILintingSettings, PythonSettings } from '../common/configSettings';
65
import { ExecutionInfo, Product } from '../common/types';

src/client/linters/serviceRegistry.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
// Copyright (c) Microsoft Corporation. All rights reserved.
22
// Licensed under the MIT License.
33

4-
import 'reflect-metadata';
54
import { IServiceManager } from '../ioc/types';
65
import { LinterHelper } from './helper';
76
import { ILinterHelper } from './types';

src/client/unittests/common/debugLauncher.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import * as getFreePort from 'get-port';
22
import { inject, injectable } from 'inversify';
33
import * as os from 'os';
4-
import 'reflect-metadata';
54
import { debug, Uri, workspace } from 'vscode';
65
import { PythonSettings } from '../../common/configSettings';
76
import { IPythonExecutionFactory } from '../../common/process/types';

src/client/unittests/common/services/storageService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { inject, injectable } from 'inversify';
2-
import 'reflect-metadata';
32
import { Disposable, Uri, workspace } from 'vscode';
43
import { IDisposableRegistry } from '../../../common/types';
54
import { ITestCollectionStorageService, Tests } from './../types';

src/client/unittests/common/services/testResultsService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { inject, injectable, named } from 'inversify';
2-
import 'reflect-metadata';
32
import { TestResultResetVisitor } from './../testVisitors/resultResetVisitor';
43
import { ITestResultsService, ITestVisitor, TestFile, TestFolder, Tests, TestStatus, TestSuite } from './../types';
54

src/client/unittests/common/services/workspaceTestManagerService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { inject, injectable, named } from 'inversify';
2-
import 'reflect-metadata';
32
import { Disposable, OutputChannel, Uri, workspace } from 'vscode';
43
import { IDisposableRegistry, IOutputChannel } from '../../../common/types';
54
import { TEST_OUTPUT_CHANNEL } from './../constants';

src/client/unittests/common/testUtils.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { inject, injectable, named } from 'inversify';
22
import * as path from 'path';
3-
import 'reflect-metadata';
43
import * as vscode from 'vscode';
54
import { Uri, workspace } from 'vscode';
65
import { window } from 'vscode';

src/client/unittests/common/testVisitors/flatteningVisitor.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { injectable } from 'inversify';
2-
import 'reflect-metadata';
32
import { convertFileToPackage } from '../testUtils';
43
import {
54
FlattenedTestFunction,

src/client/unittests/common/testVisitors/folderGenerationVisitor.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { injectable } from 'inversify';
22
import * as path from 'path';
3-
import 'reflect-metadata';
43
import { ITestVisitor, TestFile, TestFolder, TestFunction, TestSuite } from '../types';
54

65
@injectable()

src/client/unittests/common/testVisitors/resultResetVisitor.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { injectable } from 'inversify';
2-
import 'reflect-metadata';
32
import { ITestVisitor, TestFile, TestFolder, TestFunction, TestStatus, TestSuite } from '../types';
43

54
@injectable()

src/client/unittests/nosetest/main.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { inject, injectable } from 'inversify';
2-
import 'reflect-metadata';
32
import { Uri } from 'vscode';
43
import { PythonSettings } from '../../common/configSettings';
54
import { Product } from '../../common/types';

src/client/unittests/nosetest/services/discoveryService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// Licensed under the MIT License.
33

44
import { inject, injectable, named } from 'inversify';
5-
import 'reflect-metadata';
65
import { CancellationTokenSource } from 'vscode';
76
import { IServiceContainer } from '../../../ioc/types';
87
import { NOSETEST_PROVIDER } from '../../common/constants';

src/client/unittests/nosetest/services/parserService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import { inject, injectable } from 'inversify';
55
import * as os from 'os';
66
import * as path from 'path';
7-
import 'reflect-metadata';
87
import { convertFileToPackage, extractBetweenDelimiters } from '../../common/testUtils';
98
import { ITestsHelper, ITestsParser, ParserOptions, TestDiscoveryOptions, TestFile, TestFunction, Tests, TestStatus, TestSuite } from '../../common/types';
109

src/client/unittests/pytest/services/discoveryService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// Licensed under the MIT License.
33

44
import { inject, injectable, named } from 'inversify';
5-
import 'reflect-metadata';
65
import { CancellationTokenSource } from 'vscode';
76
import { IServiceContainer } from '../../../ioc/types';
87
import { PYTEST_PROVIDER, UNITTEST_PROVIDER } from '../../common/constants';

src/client/unittests/pytest/services/parserService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import { inject, injectable } from 'inversify';
55
import * as os from 'os';
66
import * as path from 'path';
7-
import 'reflect-metadata';
87
import { convertFileToPackage, extractBetweenDelimiters } from '../../common/testUtils';
98
import { ITestsHelper, ITestsParser, ParserOptions, TestDiscoveryOptions, TestFile, TestFunction, Tests, TestStatus, TestSuite } from '../../common/types';
109

src/client/unittests/serviceRegistry.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
// Copyright (c) Microsoft Corporation. All rights reserved.
22
// Licensed under the MIT License.
33

4-
import 'reflect-metadata';
54
import { Uri } from 'vscode';
65
import { IServiceContainer, IServiceManager } from '../ioc/types';
76
import { NOSETEST_PROVIDER, PYTEST_PROVIDER, UNITTEST_PROVIDER } from './common/constants';

0 commit comments

Comments
 (0)