Skip to content
Merged
Show file tree
Hide file tree
Changes from all 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
2 changes: 1 addition & 1 deletion packages/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"private": true,
"name": "@ag-grid-devtools/cli",
"version": "33.0.1",
"version": "33.3.0",
"license": "MIT",
"description": "AG Grid developer toolkit",
"author": "AG Grid <info@ag-grid.com>",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ export const combinedTransform: JSCodeShiftTransformer = (root) => {
packageLicenseManager(root);
} else {
// already using modules
registerModule(root), updateStyles(root);
registerModule(root);
updateStyles(root);
addAllCommunityModule(root);
chartImports(root);
updateImportPaths(root);
Expand Down
35 changes: 35 additions & 0 deletions packages/cli/src/codemods/versions/33.1.0/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# 33.1.0

Codemod for upgrading to [AG Grid v33.1.0](https://github.com/ag-grid/ag-grid/releases/tag/v33.1.0)

## Usage

```
npx @ag-grid-devtools/cli migrate --to 33.1.0
```

Source code transformations applied by this codemod are specified in [`transforms.ts`](./transforms.ts).

## Common tasks

### Add a transform

Option 1: Create a new source code transformation to add to this codemod release version:

```
pnpm run task:create-transform --release 33.1.0
```

Option 2: Add an existing source code transformation to this codemod release version:

```
pnpm run task:include-transform --version 33.1.0
```

### Add a test case

Create a new unit test scenario for this version:

```
pnpm run task:create-test --type version --target 33.1.0
```
16 changes: 16 additions & 0 deletions packages/cli/src/codemods/versions/33.1.0/codemod.test.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { dirname, join } from 'node:path';
import { fileURLToPath } from 'node:url';
import { describe, expect, onTestFinished, test } from 'vitest';
import { loadCodemodExampleScenarios } from '../../test/runners/codemod';

import codemod from './codemod';

const __dirname = dirname(fileURLToPath(import.meta.url));

describe(codemod, () => {
const scenariosPath = join(__dirname, './__fixtures__/scenarios');
loadCodemodExampleScenarios(scenariosPath, {
codemod,
vitest: { describe, expect, test, onTestFinished },
});
});
24 changes: 24 additions & 0 deletions packages/cli/src/codemods/versions/33.1.0/codemod.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import { transformFileAst } from '@ag-grid-devtools/codemod-utils';
import {
type Codemod,
type CodemodInput,
type CodemodOptions,
type CodemodResult,
} from '@ag-grid-devtools/types';

import transforms from './transforms';

const codemod: Codemod = function codemodV33_1_0(
file: CodemodInput,
options: CodemodOptions,
): CodemodResult {
const { path, source } = file;
const { fs, userConfig } = options;
return transformFileAst(source, transforms, {
filename: path,
fs,
userConfig,
});
};

export default codemod;
11 changes: 11 additions & 0 deletions packages/cli/src/codemods/versions/33.1.0/manifest.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { type TransformManifest, type VersionManifest } from '@ag-grid-devtools/types';

const transforms: Array<TransformManifest> = [];

const manifest: VersionManifest = {
version: '33.1.0',
codemodPath: 'versions/33.1.0',
transforms,
};

export default manifest;
5 changes: 5 additions & 0 deletions packages/cli/src/codemods/versions/33.1.0/transforms.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import { type AstCliContext, type AstTransform } from '@ag-grid-devtools/ast';

const transforms: Array<AstTransform<AstCliContext>> = [];

export default transforms;
35 changes: 35 additions & 0 deletions packages/cli/src/codemods/versions/33.2.0/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# 33.2.0

Codemod for upgrading to [AG Grid v33.2.0](https://github.com/ag-grid/ag-grid/releases/tag/v33.2.0)

## Usage

```
npx @ag-grid-devtools/cli migrate --to 33.2.0
```

Source code transformations applied by this codemod are specified in [`transforms.ts`](./transforms.ts).

## Common tasks

### Add a transform

Option 1: Create a new source code transformation to add to this codemod release version:

```
pnpm run task:create-transform --release 33.2.0
```

Option 2: Add an existing source code transformation to this codemod release version:

```
pnpm run task:include-transform --version 33.2.0
```

### Add a test case

Create a new unit test scenario for this version:

```
pnpm run task:create-test --type version --target 33.2.0
```
16 changes: 16 additions & 0 deletions packages/cli/src/codemods/versions/33.2.0/codemod.test.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { dirname, join } from 'node:path';
import { fileURLToPath } from 'node:url';
import { describe, expect, onTestFinished, test } from 'vitest';
import { loadCodemodExampleScenarios } from '../../test/runners/codemod';

import codemod from './codemod';

const __dirname = dirname(fileURLToPath(import.meta.url));

describe(codemod, () => {
const scenariosPath = join(__dirname, './__fixtures__/scenarios');
loadCodemodExampleScenarios(scenariosPath, {
codemod,
vitest: { describe, expect, test, onTestFinished },
});
});
24 changes: 24 additions & 0 deletions packages/cli/src/codemods/versions/33.2.0/codemod.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import { transformFileAst } from '@ag-grid-devtools/codemod-utils';
import {
type Codemod,
type CodemodInput,
type CodemodOptions,
type CodemodResult,
} from '@ag-grid-devtools/types';

import transforms from './transforms';

const codemod: Codemod = function codemodV33_2_0(
file: CodemodInput,
options: CodemodOptions,
): CodemodResult {
const { path, source } = file;
const { fs, userConfig } = options;
return transformFileAst(source, transforms, {
filename: path,
fs,
userConfig,
});
};

export default codemod;
11 changes: 11 additions & 0 deletions packages/cli/src/codemods/versions/33.2.0/manifest.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { type TransformManifest, type VersionManifest } from '@ag-grid-devtools/types';

const transforms: Array<TransformManifest> = [];

const manifest: VersionManifest = {
version: '33.2.0',
codemodPath: 'versions/33.2.0',
transforms,
};

export default manifest;
5 changes: 5 additions & 0 deletions packages/cli/src/codemods/versions/33.2.0/transforms.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import { type AstCliContext, type AstTransform } from '@ag-grid-devtools/ast';

const transforms: Array<AstTransform<AstCliContext>> = [];

export default transforms;
35 changes: 35 additions & 0 deletions packages/cli/src/codemods/versions/33.3.0/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# 33.3.0

Codemod for upgrading to [AG Grid v33.3.0](https://github.com/ag-grid/ag-grid/releases/tag/v33.3.0)

## Usage

```
npx @ag-grid-devtools/cli migrate --to 33.3.0
```

Source code transformations applied by this codemod are specified in [`transforms.ts`](./transforms.ts).

## Common tasks

### Add a transform

Option 1: Create a new source code transformation to add to this codemod release version:

```
pnpm run task:create-transform --release 33.3.0
```

Option 2: Add an existing source code transformation to this codemod release version:

```
pnpm run task:include-transform --version 33.3.0
```

### Add a test case

Create a new unit test scenario for this version:

```
pnpm run task:create-test --type version --target 33.3.0
```
16 changes: 16 additions & 0 deletions packages/cli/src/codemods/versions/33.3.0/codemod.test.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { dirname, join } from 'node:path';
import { fileURLToPath } from 'node:url';
import { describe, expect, onTestFinished, test } from 'vitest';
import { loadCodemodExampleScenarios } from '../../test/runners/codemod';

import codemod from './codemod';

const __dirname = dirname(fileURLToPath(import.meta.url));

describe(codemod, () => {
const scenariosPath = join(__dirname, './__fixtures__/scenarios');
loadCodemodExampleScenarios(scenariosPath, {
codemod,
vitest: { describe, expect, test, onTestFinished },
});
});
24 changes: 24 additions & 0 deletions packages/cli/src/codemods/versions/33.3.0/codemod.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import { transformFileAst } from '@ag-grid-devtools/codemod-utils';
import {
type Codemod,
type CodemodInput,
type CodemodOptions,
type CodemodResult,
} from '@ag-grid-devtools/types';

import transforms from './transforms';

const codemod: Codemod = function codemodV33_3_0(
file: CodemodInput,
options: CodemodOptions,
): CodemodResult {
const { path, source } = file;
const { fs, userConfig } = options;
return transformFileAst(source, transforms, {
filename: path,
fs,
userConfig,
});
};

export default codemod;
11 changes: 11 additions & 0 deletions packages/cli/src/codemods/versions/33.3.0/manifest.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { type TransformManifest, type VersionManifest } from '@ag-grid-devtools/types';

const transforms: Array<TransformManifest> = [];

const manifest: VersionManifest = {
version: '33.3.0',
codemodPath: 'versions/33.3.0',
transforms,
};

export default manifest;
5 changes: 5 additions & 0 deletions packages/cli/src/codemods/versions/33.3.0/transforms.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import { type AstCliContext, type AstTransform } from '@ag-grid-devtools/ast';

const transforms: Array<AstTransform<AstCliContext>> = [];

export default transforms;
9 changes: 9 additions & 0 deletions packages/cli/src/codemods/versions/manifest.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ import v32_2_0 from './32.2.0/manifest';

import v33_0_0 from './33.0.0/manifest';

import v33_1_0 from './33.1.0/manifest';

import v33_2_0 from './33.2.0/manifest';

import v33_3_0 from './33.3.0/manifest';

const versions: Array<VersionManifest> = [
v31_0_0,
v31_1_0,
Expand All @@ -22,6 +28,9 @@ const versions: Array<VersionManifest> = [
v32_0_0,
v32_2_0,
v33_0_0,
v33_1_0,
v33_2_0,
v33_3_0,
];

export default versions;
9 changes: 8 additions & 1 deletion packages/cli/src/commands/migrate.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ import { CliArgsError, CliError } from '../utils/cli';
import { findGitRoot, findSourceFiles } from '../utils/fs';
import { findInGitRepository, getUncommittedGitFiles } from '../utils/git';
import { getCliCommand, getCliPackageVersion } from '../utils/pkg';
import { green, indentErrorMessage, log } from '../utils/stdio';
import { green, indentErrorMessage, log, red } from '../utils/stdio';
import { Worker, WorkerTaskQueue, type WorkerOptions } from '../utils/worker';

const { versions } = codemods;
Expand Down Expand Up @@ -335,6 +335,13 @@ async function migrate(
);
}

if (from && semver.lt(from, '30.0.0')) {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

await log(
stderr,
`\nCodemods are only supported from v30. You have specified from version ${red(from, env)}.\nThe codemods will still run but we recommend that you manually check the migration guide for any breaking changes up until v30.\n`,
);
}

const gitSourceFilePaths = gitRoot
? (await getGitSourceFiles(gitRoot)).map((path) => resolve(gitRoot, path))
: null;
Expand Down
4 changes: 2 additions & 2 deletions packages/codemods-tasks/tasks/create-version.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ const CODEMOD_TEMPLATE_DIR = join(TEMPLATE_DIR, 'codemod');

const PROJECT_VERSIONS_DIR = './versions';
const MANIFEST_FILENAME = 'manifest.ts';
const MANIFEST_TEST_PATH = './lib.test.ts';
const MANIFEST_TEST_PATH = './lib.ts';

const VARIABLES = [
{
Expand Down Expand Up @@ -115,7 +115,7 @@ export default async function task(...args) {
versionManifestPath: stripFileExtension(versionManifestPath),
versionIdentifier: `v${versionIdentifier}`,
});
await addReleaseToVersionsManifestTests({ manifestTestPath: versionsManifestTestPath, version });
// await addReleaseToVersionsManifestTests({ manifestTestPath: versionsManifestTestPath, version });
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like this file has been updated but the task was not.

process.stderr.write(`\nCreated codemod version ${green(version)} in ${outputPath}\n`);
}

Expand Down