计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
gamma-upgrade-migration【效率与协作】Upgrade Gamma SDK versions and migrate between API versions. Use when upgrading SDK packages, handling deprecations, or migrating to new API versions. Trigger with phrases like "gamma upgrade", "gamma migration", "gamma new version", "gamma deprecated", "gamma SDK update".
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Guide for upgrading Gamma SDK versions and migrating between API versions safely.
# Node.js
npm list @gamma/sdk
# Python
pip show gamma-sdk
# Check for available updates
npm outdated @gamma/sdk
# View changelog
npm info @gamma/sdk changelog
# Or visit
# https://gamma.app/docs/changelog
# Create upgrade branch
git checkout -b feat/gamma-sdk-upgrade
# Node.js - upgrade to latest
npm install @gamma/sdk@latest
# Python - upgrade to latest
pip install --upgrade gamma-sdk
# Or specific version
npm install @gamma/sdk@2.0.0
Common Migration Patterns:
// v1.x -> v2.x: Client initialization change
// Before (v1)
import Gamma from '@gamma/sdk';
const gamma = new Gamma(apiKey);
// After (v2)
import { GammaClient } from '@gamma/sdk';
const gamma = new GammaClient({ apiKey });
// v1.x -> v2.x: Response format change
// Before (v1)
const result = await gamma.createPresentation({ title: 'Test' });
console.log(result.id);
// After (v2)
const result = await gamma.presentations.create({ title: 'Test' });
console.log(result.data.id);
// v1.x -> v2.x: Error handling change
// Before (v1)
try {
await gamma.create({ ... });
} catch (e) {
if (e.code === 'RATE_LIMIT') { ... }
}
// After (v2)
import { RateLimitError } from '@gamma/sdk';
try {
await gamma.presentations.create({ ... });
} catch (e) {
if (e instanceof RateLimitError) { ... }
}
// Check for type changes
// tsconfig.json - ensure strict mode catches issues
{
"compilerOptions": {
"strict": true,
"noImplicitAny": true
}
}
// Run type check
npx tsc --noEmit
# Run unit tests
npm test
# Run integration tests
npm run test:integration
# Manual smoke test
node -e "
const { GammaClient } = require('@gamma/sdk');
const g = new GammaClient({ apiKey: process.env.GAMMA_API_KEY });
g.ping().then(() => console.log('OK')).catch(console.error);
"
// Enable deprecation warnings
const gamma = new GammaClient({
apiKey: process.env.GAMMA_API_KEY,
showDeprecationWarnings: true,
});
// Migrate deprecated methods
// Deprecated
await gamma.getPresentations();
// New
await gamma.presentations.list();
# If issues occur after upgrade
git checkout main
npm install # Restores previous version from lock file
# Or explicitly downgrade
npm install @gamma/sdk@1.x.x
Proceed to gamma-ci-integration for CI/CD setup.