Skip to content

Commit

Permalink
Revert "[@osd/cross-platform] Adds cross-platform helpers (opensearch…
Browse files Browse the repository at this point in the history
…-project#2681)" (opensearch-project#2694)

This reverts commit 887093d.

Now that downstream plugins and projects are unblocked from builds, we want to make these changes following our standard processes and automated checks

Signed-off-by: Josh Romero <rmerqg@amazon.com>

Signed-off-by: Josh Romero <rmerqg@amazon.com>
Signed-off-by: Ajay Gupta <ajyg@amazon.com>
  • Loading branch information
joshuarrrr authored and Ajay Gupta committed Nov 25, 2022
1 parent ee3b32a commit b775a24
Show file tree
Hide file tree
Showing 22 changed files with 48 additions and 119 deletions.
1 change: 0 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- [Vis Builder] Change classname prefix wiz to vb ([#2581](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2581/files))
- [Vis Builder] Change wizard to vis_builder in file names and paths ([#2587](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2587))
- [Windows] Facilitate building and running OSD and plugins on Windows platforms ([#2601](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2601))
- [Windows] Add helper functions to work around the differences of platforms ([#2681](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2681))
- [Multi DataSource] Address UX comments on Data source list and create page ([#2625](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2625))
- [Vis Builder] Rename wizard to visBuilder in i18n id and formatted message id ([#2635](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2635))
- [Vis Builder] Rename wizard to visBuilder in class name, type name and function name ([#2639](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2639))
Expand Down
1 change: 0 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,6 @@
"@osd/apm-config-loader": "1.0.0",
"@osd/config": "1.0.0",
"@osd/config-schema": "1.0.0",
"@osd/cross-platform": "1.0.0",
"@osd/i18n": "1.0.0",
"@osd/interpreter": "1.0.0",
"@osd/logging": "1.0.0",
Expand Down
5 changes: 2 additions & 3 deletions packages/osd-config-schema/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,8 @@
"osd:bootstrap": "yarn build"
},
"devDependencies": {
"@osd/cross-platform": "1.0.0",
"tsd": "^0.21.0",
"typescript": "4.0.2"
"typescript": "4.0.2",
"tsd": "^0.21.0"
},
"peerDependencies": {
"lodash": "^4.17.21",
Expand Down
6 changes: 3 additions & 3 deletions packages/osd-config-schema/src/errors/schema_error.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,6 @@
import { relative, sep } from 'path';
import { SchemaError } from '.';

import { standardize, PROCESS_WORKING_DIR } from '@osd/cross-platform';

/**
* Make all paths in stacktrace relative.
*/
Expand All @@ -48,7 +46,9 @@ export const cleanStack = (stack: string) =>
}

const path = parts[1];
const relativePath = standardize(relative(PROCESS_WORKING_DIR, path));
// Cannot use `standardize` from `@osd/utils
let relativePath = relative(process.cwd(), path);
if (process.platform === 'win32') relativePath = relativePath.replace(/\\/g, '/');

return line.replace(path, relativePath);
})
Expand Down
3 changes: 0 additions & 3 deletions packages/osd-cross-platform/README.md

This file was deleted.

15 changes: 0 additions & 15 deletions packages/osd-cross-platform/package.json

This file was deleted.

7 changes: 0 additions & 7 deletions packages/osd-cross-platform/src/index.ts

This file was deleted.

30 changes: 0 additions & 30 deletions packages/osd-cross-platform/src/path.ts

This file was deleted.

22 changes: 0 additions & 22 deletions packages/osd-cross-platform/src/process.ts

This file was deleted.

11 changes: 0 additions & 11 deletions packages/osd-cross-platform/tsconfig.json

This file was deleted.

1 change: 0 additions & 1 deletion packages/osd-optimizer/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
"@babel/cli": "^7.16.0",
"@babel/core": "^7.16.5",
"@osd/babel-preset": "1.0.0",
"@osd/cross-platform": "1.0.0",
"@osd/dev-utils": "1.0.0",
"@osd/std": "1.0.0",
"@osd/ui-shared-deps": "1.0.0",
Expand Down
2 changes: 1 addition & 1 deletion packages/osd-optimizer/src/optimizer/get_changes.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ import path from 'path';
jest.mock('execa');

import { getChanges } from './get_changes';
import { standardize } from '@osd/cross-platform';
import { standardize } from '@osd/dev-utils';

const execa: jest.Mock = jest.requireMock('execa');

Expand Down
1 change: 0 additions & 1 deletion packages/osd-plugin-generator/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
"osd:watch": "node scripts/build --watch"
},
"dependencies": {
"@osd/cross-platform": "1.0.0",
"@osd/dev-utils": "1.0.0",
"ejs": "^3.1.7",
"execa": "^4.0.2",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,7 @@ import Path from 'path';

import del from 'del';
import execa from 'execa';
import { standardize } from '@osd/cross-platform';
import { REPO_ROOT, createAbsolutePathSerializer } from '@osd/dev-utils';
import { REPO_ROOT, standardize, createAbsolutePathSerializer } from '@osd/dev-utils';
import globby from 'globby';

// Has to be a posix reference because it is used to generate glob patterns
Expand Down
1 change: 0 additions & 1 deletion packages/osd-plugin-helpers/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
"osd:watch": "tsc --watch"
},
"dependencies": {
"@osd/cross-platform": "1.0.0",
"@osd/dev-utils": "1.0.0",
"@osd/optimizer": "1.0.0",
"del": "^5.1.0",
Expand Down
17 changes: 8 additions & 9 deletions packages/osd-plugin-helpers/src/cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@

import Path from 'path';

import { PROCESS_WORKING_DIR } from '@osd/cross-platform';
import { RunWithCommands, createFlagError, createFailError } from '@osd/dev-utils';

import { findOpenSearchDashboardsJson } from './find_opensearch_dashboards_json';
Expand Down Expand Up @@ -80,10 +79,10 @@ export function runCli() {
throw createFlagError('expected a single --skip-archive flag');
}

const pluginDir = await findOpenSearchDashboardsJson(PROCESS_WORKING_DIR);
const pluginDir = await findOpenSearchDashboardsJson(process.cwd());
if (!pluginDir) {
throw createFailError(
`Unable to find OpenSearch Dashboards Platform plugin in [${PROCESS_WORKING_DIR}] or any of its parent directories. Has it been migrated properly? Does it have a opensearch_dashboards.json file?`
`Unable to find OpenSearch Dashboards Platform plugin in [${process.cwd()}] or any of its parent directories. Has it been migrated properly? Does it have a opensearch_dashboards.json file?`
);
}

Expand Down Expand Up @@ -149,30 +148,30 @@ export function runCli() {
allowUnexpected: true,
},
async run({ log, flags }) {
const pluginDir = await findOpenSearchDashboardsJson(PROCESS_WORKING_DIR);
const pluginDir = await findOpenSearchDashboardsJson(process.cwd());
if (!pluginDir) {
throw createFailError(
`Unable to find OpenSearch Dashboards Platform plugin in [${PROCESS_WORKING_DIR}] or any of its parent directories. Has it been migrated properly? Does it have a opensearch_dashboards.json file?`
`Unable to find OpenSearch Dashboards Platform plugin in [${process.cwd()}] or any of its parent directories. Has it been migrated properly? Does it have a opensearch_dashboards.json file?`
);
}

let dashboardsPackage;
try {
dashboardsPackage = await import(Path.join(PROCESS_WORKING_DIR, '../../package.json'));
dashboardsPackage = await import(Path.join(process.cwd(), '../../package.json'));
} catch (ex) {
throw createFailError(`Unable to parse the OpenSearch Dashboards' package.json file`);
}

let pluginPackage;
try {
pluginPackage = await import(Path.join(PROCESS_WORKING_DIR, 'package.json'));
pluginPackage = await import(Path.join(process.cwd(), 'package.json'));
} catch (ex) {
throw createFailError(`Unable to parse the plugin's package.json file`);
}

let manifestFile;
try {
manifestFile = await import(Path.join(PROCESS_WORKING_DIR, 'opensearch_dashboards.json'));
manifestFile = await import(Path.join(process.cwd(), 'opensearch_dashboards.json'));
} catch (ex) {
throw createFailError(`Unable to parse the plugin's opensearch_dashboards.json file`);
}
Expand Down Expand Up @@ -241,7 +240,7 @@ export function runCli() {

const context: VersionContext = {
log,
sourceDir: PROCESS_WORKING_DIR,
sourceDir: process.cwd(),
pluginVersion: updatedPluginVersion,
compatibilityVersion: updatedCompatibilityVersion,
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,12 @@ import Path from 'path';
import Fs from 'fs';

import execa from 'execa';
import { standardize } from '@osd/cross-platform';
import { REPO_ROOT, createStripAnsiSerializer, createReplaceSerializer } from '@osd/dev-utils';
import {
REPO_ROOT,
standardize,
createStripAnsiSerializer,
createReplaceSerializer,
} from '@osd/dev-utils';
import extract from 'extract-zip';
import del from 'del';
import globby from 'globby';
Expand Down
1 change: 0 additions & 1 deletion packages/osd-pm/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,6 @@
"write-pkg": "^4.0.0"
},
"dependencies": {
"@osd/cross-platform": "1.0.0",
"@osd/utils": "1.0.0",
"tslib": "^2.0.0"
}
Expand Down
2 changes: 1 addition & 1 deletion packages/osd-pm/src/utils/projects_tree.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
import chalk from 'chalk';
import path from 'path';

import { standardize } from '@osd/cross-platform';
import { standardize } from '@osd/utils';
import { Project } from './project';

const projectKey = Symbol('__project');
Expand Down
1 change: 0 additions & 1 deletion packages/osd-utils/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
},
"dependencies": {
"@osd/config-schema": "1.0.0",
"@osd/cross-platform": "1.0.0",
"load-json-file": "^6.2.0"
},
"devDependencies": {
Expand Down
26 changes: 25 additions & 1 deletion packages/osd-utils/src/path/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
* under the License.
*/

import { join } from 'path';
import { join, normalize } from 'path';
import { accessSync, constants } from 'fs';
import { TypeOf, schema } from '@osd/config-schema';
import { REPO_ROOT } from '../repo_root';
Expand Down Expand Up @@ -94,3 +94,27 @@ export const config = {
data: schema.string({ defaultValue: () => getDataPath() }),
}),
};

/**
* Get a standardized reference to a path
* @param {string} path - the path to standardize
* @param {boolean} [usePosix=true] - produce a posix reference
* @param {boolean} [escapedBackslashes=true] - on Windows, double-backslash the reference
* @internal
*/
export const standardize = (
path: string,
usePosix: boolean = true,
escapedBackslashes: boolean = true
) => {
/* Force os-dependant separators
* path.posix.normalize doesn't convert backslashes to slashes on Windows so we manually force it afterwards
*/
const normal = normalize(path);

// Filter out in-browser executions as well as non-windows ones
if (process?.platform !== 'win32') return normal;

if (usePosix) return normal.replace(/\\/g, '/');
return escapedBackslashes ? normal.replace(/\\/g, '\\\\') : normal;
};
3 changes: 1 addition & 2 deletions src/dev/build/lib/config.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,7 @@

import { resolve } from 'path';

import { standardize } from '@osd/cross-platform';
import { REPO_ROOT } from '@osd/utils';
import { REPO_ROOT, standardize } from '@osd/utils';
import { createAbsolutePathSerializer } from '@osd/dev-utils';

import pkg from '../../../../package.json';
Expand Down

0 comments on commit b775a24

Please sign in to comment.