diff --git a/packages/cli/package.json b/packages/cli/package.json index af461308..f27d2602 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@ag-grid-devtools/cli", - "version": "33.3.0", + "version": "34.0.0", "license": "MIT", "description": "AG Grid developer toolkit", "author": "AG Grid ", diff --git a/packages/cli/src/codemods/versions/34.0.0/README.md b/packages/cli/src/codemods/versions/34.0.0/README.md new file mode 100644 index 00000000..4b1cd281 --- /dev/null +++ b/packages/cli/src/codemods/versions/34.0.0/README.md @@ -0,0 +1,35 @@ +# 34.0.0 + +Codemod for upgrading to [AG Grid v34.0.0](https://github.com/ag-grid/ag-grid/releases/tag/v34.0.0) + +## Usage + +``` +npx @ag-grid-devtools/cli migrate --to 34.0.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 34.0.0 +``` + +Option 2: Add an existing source code transformation to this codemod release version: + +``` +pnpm run task:include-transform --version 34.0.0 +``` + +### Add a test case + +Create a new unit test scenario for this version: + +``` +pnpm run task:create-test --type version --target 34.0.0 +``` diff --git a/packages/cli/src/codemods/versions/34.0.0/__fixtures__/scenarios/.gitignore b/packages/cli/src/codemods/versions/34.0.0/__fixtures__/scenarios/.gitignore new file mode 100644 index 00000000..e69de29b diff --git a/packages/cli/src/codemods/versions/34.0.0/codemod.test.ts b/packages/cli/src/codemods/versions/34.0.0/codemod.test.ts new file mode 100644 index 00000000..35a622d1 --- /dev/null +++ b/packages/cli/src/codemods/versions/34.0.0/codemod.test.ts @@ -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 }, + }); +}); diff --git a/packages/cli/src/codemods/versions/34.0.0/codemod.ts b/packages/cli/src/codemods/versions/34.0.0/codemod.ts new file mode 100644 index 00000000..01835f7e --- /dev/null +++ b/packages/cli/src/codemods/versions/34.0.0/codemod.ts @@ -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 codemodV34_0_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; diff --git a/packages/cli/src/codemods/versions/34.0.0/manifest.ts b/packages/cli/src/codemods/versions/34.0.0/manifest.ts new file mode 100644 index 00000000..37ec4f23 --- /dev/null +++ b/packages/cli/src/codemods/versions/34.0.0/manifest.ts @@ -0,0 +1,11 @@ +import { type TransformManifest, type VersionManifest } from '@ag-grid-devtools/types'; + +const transforms: Array = []; + +const manifest: VersionManifest = { + version: '34.0.0', + codemodPath: 'versions/34.0.0', + transforms, +}; + +export default manifest; diff --git a/packages/cli/src/codemods/versions/34.0.0/transforms.ts b/packages/cli/src/codemods/versions/34.0.0/transforms.ts new file mode 100644 index 00000000..f7779321 --- /dev/null +++ b/packages/cli/src/codemods/versions/34.0.0/transforms.ts @@ -0,0 +1,5 @@ +import { type AstCliContext, type AstTransform } from '@ag-grid-devtools/ast'; + +const transforms: Array> = []; + +export default transforms; diff --git a/packages/cli/src/codemods/versions/manifest.ts b/packages/cli/src/codemods/versions/manifest.ts index 94aeb7cc..dfc38993 100644 --- a/packages/cli/src/codemods/versions/manifest.ts +++ b/packages/cli/src/codemods/versions/manifest.ts @@ -20,6 +20,8 @@ import v33_2_0 from './33.2.0/manifest'; import v33_3_0 from './33.3.0/manifest'; +import v34_0_0 from './34.0.0/manifest'; + const versions: Array = [ v31_0_0, v31_1_0, @@ -31,6 +33,7 @@ const versions: Array = [ v33_1_0, v33_2_0, v33_3_0, + v34_0_0, ]; export default versions; diff --git a/packages/cli/src/test/e2e/gitignore-simple/gitignore-simple.test.ts b/packages/cli/src/test/e2e/gitignore-simple/gitignore-simple.test.ts index 677838c8..ec657dd5 100644 --- a/packages/cli/src/test/e2e/gitignore-simple/gitignore-simple.test.ts +++ b/packages/cli/src/test/e2e/gitignore-simple/gitignore-simple.test.ts @@ -9,7 +9,7 @@ test( async () => { await env.init(); await cli( - ['migrate', '--allow-untracked', '--from=30.0.0', '--to=33', '--non-interactive'], + ['migrate', '--allow-untracked', '--from=30.0.0', '--to=34', '--non-interactive'], env.cliOptions, );