@mastra/codemod 0.0.0-allow-to-pass-a-mastra-url-instance-20251105224938 → 0.0.0-cloud-storage-adapter-20251106204059
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -1
- package/README.md +29 -11
- package/dist/codemods/v1/agent-generate-stream-v-next.js +83 -0
- package/dist/codemods/v1/agent-generate-stream-v-next.js.map +1 -0
- package/dist/codemods/v1/agent-get-agents.js +74 -0
- package/dist/codemods/v1/agent-get-agents.js.map +1 -0
- package/dist/codemods/v1/agent-processor-methods.js +85 -0
- package/dist/codemods/v1/agent-processor-methods.js.map +1 -0
- package/dist/codemods/v1/agent-property-access.js +81 -0
- package/dist/codemods/v1/agent-property-access.js.map +1 -0
- package/dist/codemods/v1/agent-voice.js +76 -0
- package/dist/codemods/v1/agent-voice.js.map +1 -0
- package/dist/codemods/v1/evals-get-scorers.js +74 -0
- package/dist/codemods/v1/evals-get-scorers.js.map +1 -0
- package/dist/codemods/v1/experimental-auth.js +63 -0
- package/dist/codemods/v1/experimental-auth.js.map +1 -0
- package/dist/codemods/v1/mastra-core-imports.js +1 -1
- package/dist/codemods/v1/mastra-core-imports.js.map +1 -1
- package/dist/codemods/v1/mcp-get-mcp-servers.js +74 -0
- package/dist/codemods/v1/mcp-get-mcp-servers.js.map +1 -0
- package/dist/codemods/v1/mcp-get-tools.js +74 -0
- package/dist/codemods/v1/mcp-get-tools.js.map +1 -0
- package/dist/codemods/v1/mcp-get-toolsets.js +74 -0
- package/dist/codemods/v1/mcp-get-toolsets.js.map +1 -0
- package/dist/codemods/v1/voice-property-names.js +78 -0
- package/dist/codemods/v1/voice-property-names.js.map +1 -0
- package/dist/codemods/v1/workflows-get-workflows.js +74 -0
- package/dist/codemods/v1/workflows-get-workflows.js.map +1 -0
- package/dist/index.js +69 -2
- package/dist/index.js.map +1 -1
- package/package.json +3 -2
package/dist/index.js
CHANGED
|
@@ -6,6 +6,7 @@ var debug = require('debug');
|
|
|
6
6
|
var child_process = require('child_process');
|
|
7
7
|
var fs = require('fs');
|
|
8
8
|
var path = require('path');
|
|
9
|
+
var prompts = require('@clack/prompts');
|
|
9
10
|
|
|
10
11
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
12
|
|
|
@@ -90,15 +91,81 @@ function transform(codemod, source, transformOptions, options = { logStatus: tru
|
|
|
90
91
|
return { errors, notImplementedErrors };
|
|
91
92
|
}
|
|
92
93
|
|
|
94
|
+
// src/lib/bundle.ts
|
|
95
|
+
var BUNDLE = [
|
|
96
|
+
"v1/mastra-core-imports",
|
|
97
|
+
"v1/runtime-context",
|
|
98
|
+
"v1/experimental-auth",
|
|
99
|
+
"v1/agent-property-access",
|
|
100
|
+
"v1/agent-voice",
|
|
101
|
+
"v1/agent-processor-methods",
|
|
102
|
+
"v1/agent-generate-stream-v-next",
|
|
103
|
+
"v1/voice-property-names",
|
|
104
|
+
"v1/agent-get-agents",
|
|
105
|
+
"v1/evals-get-scorers",
|
|
106
|
+
"v1/mcp-get-mcp-servers",
|
|
107
|
+
"v1/mcp-get-tools",
|
|
108
|
+
"v1/mcp-get-toolsets",
|
|
109
|
+
"v1/workflows-get-workflows"
|
|
110
|
+
];
|
|
111
|
+
|
|
112
|
+
// src/lib/upgrade.ts
|
|
113
|
+
var log2 = debug__default.default("codemod:upgrade");
|
|
114
|
+
var error2 = debug__default.default("codemod:upgrade:error");
|
|
115
|
+
var v1Bundle = BUNDLE.filter((codemod) => codemod.startsWith("v1/"));
|
|
116
|
+
function runCodemods(codemods, options, versionLabel) {
|
|
117
|
+
const cwd = process.cwd();
|
|
118
|
+
log2(`Starting ${versionLabel} codemods...`);
|
|
119
|
+
const modCount = codemods.length;
|
|
120
|
+
const p = prompts.progress({ size: modCount });
|
|
121
|
+
p.start("Starting...");
|
|
122
|
+
const allErrors = [];
|
|
123
|
+
let notImplementedAvailable = false;
|
|
124
|
+
for (const [_, codemod] of codemods.entries()) {
|
|
125
|
+
const { errors, notImplementedErrors } = transform(codemod, cwd, options, {
|
|
126
|
+
logStatus: false
|
|
127
|
+
});
|
|
128
|
+
allErrors.push(...errors);
|
|
129
|
+
if (notImplementedErrors.length > 0) {
|
|
130
|
+
notImplementedAvailable = true;
|
|
131
|
+
}
|
|
132
|
+
p.advance(1, `Codemod: ${codemod}`);
|
|
133
|
+
}
|
|
134
|
+
p.stop("Ran all codemods.");
|
|
135
|
+
if (allErrors.length > 0) {
|
|
136
|
+
log2(`Some ${versionLabel} codemods did not apply successfully to all files. Details:`);
|
|
137
|
+
allErrors.forEach(({ transform: transform2, filename, summary }) => {
|
|
138
|
+
error2(`codemod=${transform2}, path=${filename}, summary=${summary}`);
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
if (notImplementedAvailable) {
|
|
142
|
+
log2(
|
|
143
|
+
`Some ${versionLabel} codemods require manual changes. Please search your codebase for \`FIXME(mastra): \` comments and follow the instructions to complete the upgrade.`
|
|
144
|
+
);
|
|
145
|
+
}
|
|
146
|
+
log2(`${versionLabel} codemods complete.`);
|
|
147
|
+
}
|
|
148
|
+
function upgradeV1(options) {
|
|
149
|
+
runCodemods(v1Bundle, options, "v1");
|
|
150
|
+
}
|
|
151
|
+
|
|
93
152
|
// src/index.ts
|
|
94
|
-
var
|
|
153
|
+
var error3 = debug__default.default("codemod:error");
|
|
95
154
|
debug__default.default.enable("codemod:*");
|
|
96
155
|
var program = new commander.Command();
|
|
97
156
|
program.name("codemod").description("CLI for running Mastra codemods").argument("<codemod>", "Codemod to run").argument("<source>", "Path to source files or directory").option("-d, --dry", "Dry run (no changes are made to files)").option("-p, --print", "Print transformed files to stdout").option("--verbose", "Show more information about the transform process").option("-j, --jscodeshift <options>", "Pass options directly to jscodeshift").action((codemod, source, options) => {
|
|
98
157
|
try {
|
|
99
158
|
transform(codemod, source, options);
|
|
100
159
|
} catch (err) {
|
|
101
|
-
|
|
160
|
+
error3(`Error transforming: ${err}`);
|
|
161
|
+
process.exit(1);
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
program.command("v1").description("Apply all v1 codemods (v0.x to v1)").option("-d, --dry", "Dry run (no changes are made to files)").option("-p, --print", "Print transformed files to stdout").option("--verbose", "Show more information about the transform process").option("-j, --jscodeshift <options>", "Pass options directly to jscodeshift").action((options) => {
|
|
165
|
+
try {
|
|
166
|
+
upgradeV1(options);
|
|
167
|
+
} catch (err) {
|
|
168
|
+
error3(`Error transforming: ${err}`);
|
|
102
169
|
process.exit(1);
|
|
103
170
|
}
|
|
104
171
|
});
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/lib/transform.ts","../src/index.ts"],"names":["debug","path","fs","transform","execSync","error","Command"],"mappings":"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","file":"index.js","sourcesContent":["// Adjusted from https://github.com/vercel/ai/blob/main/packages/codemod/src/lib/transform.ts\n// License: Apache-2.0\n\nimport { execSync } from 'child_process';\nimport fs from 'fs';\nimport path from 'path';\nimport debug from 'debug';\n\ninterface TransformOptions {\n dry?: boolean;\n print?: boolean;\n verbose?: boolean;\n jscodeshift?: string;\n}\n\nconst log = debug('codemod:transform');\nconst error = debug('codemod:transform:error');\n\nfunction getJscodeshift(): string {\n const localJscodeshift = path.resolve(__dirname, '../node_modules/.bin/jscodeshift');\n return fs.existsSync(localJscodeshift) ? localJscodeshift : 'jscodeshift';\n}\n\nfunction buildCommand(codemodPath: string, targetPath: string, jscodeshift: string, options: TransformOptions): string {\n // Ignoring everything under `.*/` covers `.mastra/` along with any other\n // framework build related or otherwise intended-to-be-hidden directories.\n let command = `${jscodeshift} -t ${codemodPath} ${targetPath} \\\n --parser tsx \\\n --ignore-pattern=\"**/node_modules/**\" \\\n --ignore-pattern=\"**/.*/**\" \\\n --ignore-pattern=\"**/dist/**\" \\\n --ignore-pattern=\"**/build/**\" \\\n --ignore-pattern=\"**/*.min.js\" \\\n --ignore-pattern=\"**/*.bundle.js\"`;\n\n if (options.dry) {\n command += ' --dry';\n }\n\n if (options.print) {\n command += ' --print';\n }\n\n if (options.verbose) {\n command += ' --verbose';\n }\n\n if (options.jscodeshift) {\n command += ` ${options.jscodeshift}`;\n }\n\n return command;\n}\n\nexport type TransformErrors = {\n transform: string;\n filename: string;\n summary: string;\n}[];\n\nfunction parseErrors(transform: string, output: string): TransformErrors {\n const errors: TransformErrors = [];\n const errorRegex = /ERR (.+) Transformation error/g;\n const syntaxErrorRegex = /SyntaxError: .+/g;\n\n let match;\n while ((match = errorRegex.exec(output)) !== null) {\n const filename = match[1]!;\n const syntaxErrorMatch = syntaxErrorRegex.exec(output);\n if (syntaxErrorMatch) {\n const summary = syntaxErrorMatch[0];\n errors.push({ transform, filename, summary });\n }\n }\n\n return errors;\n}\n\nfunction parseNotImplementedErrors(transform: string, output: string): TransformErrors {\n const notImplementedErrors: TransformErrors = [];\n const notImplementedRegex = /Not Implemented (.+): (.+)/g;\n\n let match;\n while ((match = notImplementedRegex.exec(output)) !== null) {\n const filename = match[1]!;\n const summary = match[2]!;\n notImplementedErrors.push({ transform, filename, summary });\n }\n\n return notImplementedErrors;\n}\n\nexport function transform(\n codemod: string,\n source: string,\n transformOptions: TransformOptions,\n options: { logStatus: boolean } = { logStatus: true },\n): { errors: TransformErrors; notImplementedErrors: TransformErrors } {\n if (options.logStatus) {\n log(`Applying codemod '${codemod}': ${source}`);\n }\n const codemodPath = path.resolve(__dirname, `./codemods/${codemod}.js`);\n const targetPath = path.resolve(source);\n const jscodeshift = getJscodeshift();\n const command = buildCommand(codemodPath, targetPath, jscodeshift, transformOptions);\n const stdout = execSync(command, { encoding: 'utf8', stdio: 'pipe' });\n const errors = parseErrors(codemod, stdout);\n const notImplementedErrors = parseNotImplementedErrors(codemod, stdout);\n if (options.logStatus) {\n if (errors.length > 0) {\n errors.forEach(({ transform, filename, summary }) => {\n error(`Error applying codemod [codemod=${transform}, path=${filename}, summary=${summary}]`);\n });\n }\n\n if (notImplementedErrors.length > 0) {\n log(\n `Some files require manual changes. Please search your codebase for \\`FIXME(mastra): \\` comments and follow the instructions to complete the upgrade.`,\n );\n notImplementedErrors.forEach(({ transform, filename, summary }) => {\n log(`Not Implemented [codemod=${transform}, path=${filename}, summary=${summary}]`);\n });\n }\n }\n\n return { errors, notImplementedErrors };\n}\n","#! /usr/bin/env node\n\nimport { Command } from 'commander';\nimport debug from 'debug';\nimport { transform } from './lib/transform';\n\nconst error = debug('codemod:error');\ndebug.enable('codemod:*');\n\nconst program = new Command();\n\nprogram\n .name('codemod')\n .description('CLI for running Mastra codemods')\n .argument('<codemod>', 'Codemod to run')\n .argument('<source>', 'Path to source files or directory')\n .option('-d, --dry', 'Dry run (no changes are made to files)')\n .option('-p, --print', 'Print transformed files to stdout')\n .option('--verbose', 'Show more information about the transform process')\n .option('-j, --jscodeshift <options>', 'Pass options directly to jscodeshift')\n .action((codemod, source, options) => {\n try {\n transform(codemod, source, options);\n } catch (err: any) {\n error(`Error transforming: ${err}`);\n process.exit(1);\n }\n });\n\nprogram.parse(process.argv);\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/lib/transform.ts","../src/lib/bundle.ts","../src/lib/upgrade.ts","../src/index.ts"],"names":["debug","path","fs","transform","execSync","log","error","progress","Command"],"mappings":"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","file":"index.js","sourcesContent":["// Adjusted from https://github.com/vercel/ai/blob/main/packages/codemod/src/lib/transform.ts\n// License: Apache-2.0\n\nimport { execSync } from 'child_process';\nimport fs from 'fs';\nimport path from 'path';\nimport debug from 'debug';\n\ninterface TransformOptions {\n dry?: boolean;\n print?: boolean;\n verbose?: boolean;\n jscodeshift?: string;\n}\n\nconst log = debug('codemod:transform');\nconst error = debug('codemod:transform:error');\n\nfunction getJscodeshift(): string {\n const localJscodeshift = path.resolve(__dirname, '../node_modules/.bin/jscodeshift');\n return fs.existsSync(localJscodeshift) ? localJscodeshift : 'jscodeshift';\n}\n\nfunction buildCommand(codemodPath: string, targetPath: string, jscodeshift: string, options: TransformOptions): string {\n // Ignoring everything under `.*/` covers `.mastra/` along with any other\n // framework build related or otherwise intended-to-be-hidden directories.\n let command = `${jscodeshift} -t ${codemodPath} ${targetPath} \\\n --parser tsx \\\n --ignore-pattern=\"**/node_modules/**\" \\\n --ignore-pattern=\"**/.*/**\" \\\n --ignore-pattern=\"**/dist/**\" \\\n --ignore-pattern=\"**/build/**\" \\\n --ignore-pattern=\"**/*.min.js\" \\\n --ignore-pattern=\"**/*.bundle.js\"`;\n\n if (options.dry) {\n command += ' --dry';\n }\n\n if (options.print) {\n command += ' --print';\n }\n\n if (options.verbose) {\n command += ' --verbose';\n }\n\n if (options.jscodeshift) {\n command += ` ${options.jscodeshift}`;\n }\n\n return command;\n}\n\nexport type TransformErrors = {\n transform: string;\n filename: string;\n summary: string;\n}[];\n\nfunction parseErrors(transform: string, output: string): TransformErrors {\n const errors: TransformErrors = [];\n const errorRegex = /ERR (.+) Transformation error/g;\n const syntaxErrorRegex = /SyntaxError: .+/g;\n\n let match;\n while ((match = errorRegex.exec(output)) !== null) {\n const filename = match[1]!;\n const syntaxErrorMatch = syntaxErrorRegex.exec(output);\n if (syntaxErrorMatch) {\n const summary = syntaxErrorMatch[0];\n errors.push({ transform, filename, summary });\n }\n }\n\n return errors;\n}\n\nfunction parseNotImplementedErrors(transform: string, output: string): TransformErrors {\n const notImplementedErrors: TransformErrors = [];\n const notImplementedRegex = /Not Implemented (.+): (.+)/g;\n\n let match;\n while ((match = notImplementedRegex.exec(output)) !== null) {\n const filename = match[1]!;\n const summary = match[2]!;\n notImplementedErrors.push({ transform, filename, summary });\n }\n\n return notImplementedErrors;\n}\n\nexport function transform(\n codemod: string,\n source: string,\n transformOptions: TransformOptions,\n options: { logStatus: boolean } = { logStatus: true },\n): { errors: TransformErrors; notImplementedErrors: TransformErrors } {\n if (options.logStatus) {\n log(`Applying codemod '${codemod}': ${source}`);\n }\n const codemodPath = path.resolve(__dirname, `./codemods/${codemod}.js`);\n const targetPath = path.resolve(source);\n const jscodeshift = getJscodeshift();\n const command = buildCommand(codemodPath, targetPath, jscodeshift, transformOptions);\n const stdout = execSync(command, { encoding: 'utf8', stdio: 'pipe' });\n const errors = parseErrors(codemod, stdout);\n const notImplementedErrors = parseNotImplementedErrors(codemod, stdout);\n if (options.logStatus) {\n if (errors.length > 0) {\n errors.forEach(({ transform, filename, summary }) => {\n error(`Error applying codemod [codemod=${transform}, path=${filename}, summary=${summary}]`);\n });\n }\n\n if (notImplementedErrors.length > 0) {\n log(\n `Some files require manual changes. Please search your codebase for \\`FIXME(mastra): \\` comments and follow the instructions to complete the upgrade.`,\n );\n notImplementedErrors.forEach(({ transform, filename, summary }) => {\n log(`Not Implemented [codemod=${transform}, path=${filename}, summary=${summary}]`);\n });\n }\n }\n\n return { errors, notImplementedErrors };\n}\n","// List of all codemods\nexport const BUNDLE = [\n 'v1/mastra-core-imports',\n 'v1/runtime-context',\n 'v1/experimental-auth',\n 'v1/agent-property-access',\n 'v1/agent-voice',\n 'v1/agent-processor-methods',\n 'v1/agent-generate-stream-v-next',\n 'v1/voice-property-names',\n 'v1/agent-get-agents',\n 'v1/evals-get-scorers',\n 'v1/mcp-get-mcp-servers',\n 'v1/mcp-get-tools',\n 'v1/mcp-get-toolsets',\n 'v1/workflows-get-workflows',\n];\n","import { progress } from '@clack/prompts';\nimport debug from 'debug';\nimport { BUNDLE } from './bundle';\nimport type { TransformErrors } from './transform';\nimport { transform } from './transform';\n\ninterface TransformOptions {\n dry?: true;\n print?: true;\n verbose?: true;\n jscodeshift?: string;\n}\n\nconst log = debug('codemod:upgrade');\nconst error = debug('codemod:upgrade:error');\n\n// Extract v1 codemods from the bundle\nconst v1Bundle = BUNDLE.filter(codemod => codemod.startsWith('v1/'));\n\nfunction runCodemods(codemods: string[], options: TransformOptions, versionLabel: string) {\n const cwd = process.cwd();\n log(`Starting ${versionLabel} codemods...`);\n const modCount = codemods.length;\n const p = progress({ size: modCount });\n\n p.start('Starting...');\n\n const allErrors: TransformErrors = [];\n let notImplementedAvailable = false;\n for (const [_, codemod] of codemods.entries()) {\n const { errors, notImplementedErrors } = transform(codemod, cwd, options, {\n logStatus: false,\n });\n allErrors.push(...errors);\n if (notImplementedErrors.length > 0) {\n notImplementedAvailable = true;\n }\n p.advance(1, `Codemod: ${codemod}`);\n }\n p.stop('Ran all codemods.');\n\n if (allErrors.length > 0) {\n log(`Some ${versionLabel} codemods did not apply successfully to all files. Details:`);\n allErrors.forEach(({ transform, filename, summary }) => {\n error(`codemod=${transform}, path=${filename}, summary=${summary}`);\n });\n }\n\n if (notImplementedAvailable) {\n log(\n `Some ${versionLabel} codemods require manual changes. Please search your codebase for \\`FIXME(mastra): \\` comments and follow the instructions to complete the upgrade.`,\n );\n }\n\n log(`${versionLabel} codemods complete.`);\n}\n\nexport function upgradeV1(options: TransformOptions) {\n runCodemods(v1Bundle, options, 'v1');\n}\n","#! /usr/bin/env node\n\nimport { Command } from 'commander';\nimport debug from 'debug';\nimport { transform } from './lib/transform';\nimport { upgradeV1 } from './lib/upgrade';\n\nconst error = debug('codemod:error');\ndebug.enable('codemod:*');\n\nconst program = new Command();\n\nprogram\n .name('codemod')\n .description('CLI for running Mastra codemods')\n .argument('<codemod>', 'Codemod to run')\n .argument('<source>', 'Path to source files or directory')\n .option('-d, --dry', 'Dry run (no changes are made to files)')\n .option('-p, --print', 'Print transformed files to stdout')\n .option('--verbose', 'Show more information about the transform process')\n .option('-j, --jscodeshift <options>', 'Pass options directly to jscodeshift')\n .action((codemod, source, options) => {\n try {\n transform(codemod, source, options);\n } catch (err: any) {\n error(`Error transforming: ${err}`);\n process.exit(1);\n }\n });\n\nprogram\n .command('v1')\n .description('Apply all v1 codemods (v0.x to v1)')\n .option('-d, --dry', 'Dry run (no changes are made to files)')\n .option('-p, --print', 'Print transformed files to stdout')\n .option('--verbose', 'Show more information about the transform process')\n .option('-j, --jscodeshift <options>', 'Pass options directly to jscodeshift')\n .action(options => {\n try {\n upgradeV1(options);\n } catch (err: any) {\n error(`Error transforming: ${err}`);\n process.exit(1);\n }\n });\n\nprogram.parse(process.argv);\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/codemod",
|
|
3
|
-
"version": "0.0.0-
|
|
3
|
+
"version": "0.0.0-cloud-storage-adapter-20251106204059",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"description": "Codemod CLI for Mastra",
|
|
6
6
|
"bin": {
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
"codemod"
|
|
18
18
|
],
|
|
19
19
|
"dependencies": {
|
|
20
|
+
"@clack/prompts": "1.0.0-alpha.6",
|
|
20
21
|
"commander": "^14.0.2",
|
|
21
22
|
"debug": "^4.4.3",
|
|
22
23
|
"jscodeshift": "^17.3.0"
|
|
@@ -30,7 +31,7 @@
|
|
|
30
31
|
"tsup": "^8.5.0",
|
|
31
32
|
"typescript": "^5.8.3",
|
|
32
33
|
"vitest": "^3.2.4",
|
|
33
|
-
"@internal/lint": "0.0.0-
|
|
34
|
+
"@internal/lint": "0.0.0-cloud-storage-adapter-20251106204059"
|
|
34
35
|
},
|
|
35
36
|
"homepage": "https://mastra.ai",
|
|
36
37
|
"repository": {
|