Обновление @growthbook/growthbook с 1.x до 2.x
Сравнение публичного API @growthbook/growthbook 1.8.0 и 2.0.0, вычисленное автоматически по их типам TypeScript. Изменённая сигнатура — возможное несовместимое изменение, а не гарантия.
Сводка
| Удалённые пути импорта | 0 |
|---|---|
| Удалённые экспорты | 0 |
| Изменённые сигнатуры | 8 |
| Удалённые члены классов или интерфейсов | 0 |
| Изменённые члены классов или интерфейсов | 1 |
| Новые устаревания | 0 |
| Изменения требований (engines, peer-зависимости) | 0 |
| Новые экспорты | 26 |
Удалённые экспорты
Не обнаружено.
Изменённые сигнатуры
| export | Было | Стало |
|---|---|---|
@growthbook/growthbook · Context | { enabled?: boolean | undefined; attributes?: Attributes | undefined; url?: string | undefined; features?: Record<string, FeatureDefinition<any>> | undefined; experiments?: AutoExperiment<AutoExperimentVariation>[] | undefined; forcedVariations?: Record<string, number> | undefined; forcedFeatureValues?: Map<string, any> | undefined; attributeOverrides?: Attributes | undefined; blockedChangeIds?: string[] | undefined; disableVisualExperiments?: boolean | undefined; disableJsInjection?: boolean | undefined; jsInjectionNonce?: string | undefined; disableUrlRedirectExperiments?: boolean | undefine… | { enabled?: boolean | undefined; attributes?: Attributes | undefined; remoteGroupIds?: string[] | undefined; url?: string | undefined; features?: Record<string, FeatureDefinition<any>> | undefined; experiments?: AutoExperiment<AutoExperimentVariation>[] | undefined; forcedVariations?: Record<string, number> | undefined; forcedFeatureValues?: Map<string, any> | undefined; attributeOverrides?: Attributes | undefined; blockedChangeIds?: string[] | undefined; disableVisualExperiments?: boolean | undefined; disableJsInjection?: boolean | undefined; jsInjectionNonce?: string | undefined; disableUrlR… |
@growthbook/growthbook · Options | { enabled?: boolean | undefined; attributes?: Attributes | undefined; url?: string | undefined; features?: Record<string, FeatureDefinition<any>> | undefined; experiments?: AutoExperiment<AutoExperimentVariation>[] | undefined; forcedVariations?: Record<string, number> | undefined; forcedFeatureValues?: Map<string, any> | undefined; attributeOverrides?: Attributes | undefined; blockedChangeIds?: string[] | undefined; disableVisualExperiments?: boolean | undefined; disableJsInjection?: boolean | undefined; jsInjectionNonce?: string | undefined; disableUrlRedirectExperiments?: boolean | undefine… | { enabled?: boolean | undefined; attributes?: Attributes | undefined; remoteGroupIds?: string[] | undefined; url?: string | undefined; features?: Record<string, FeatureDefinition<any>> | undefined; experiments?: AutoExperiment<AutoExperimentVariation>[] | undefined; forcedVariations?: Record<string, number> | undefined; forcedFeatureValues?: Map<string, any> | undefined; attributeOverrides?: Attributes | undefined; blockedChangeIds?: string[] | undefined; disableVisualExperiments?: boolean | undefined; disableJsInjection?: boolean | undefined; jsInjectionNonce?: string | undefined; disableUrlR… |
@growthbook/growthbook · UserContext | { enabled?: boolean | undefined; qaMode?: boolean | undefined; enableDevMode?: boolean | undefined; attributes?: Attributes | undefined; url?: string | undefined; blockedChangeIds?: string[] | undefined; stickyBucketAssignmentDocs?: Record<string, StickyAssignmentsDocument> | undefined; saveStickyBucketAssignmentDoc?: ((doc: StickyAssignmentsDocument) => Promise<unknown>) | undefined; forcedVariations?: Record<string, number> | undefined; forcedFeatureValues?: Map<string, any> | undefined; attributeOverrides?: Attributes | undefined; trackingCallback?: TrackingCallback | undefined; onFeatureUs… | { enabled?: boolean | undefined; qaMode?: boolean | undefined; enableDevMode?: boolean | undefined; attributes?: Attributes | undefined; remoteGroupIds?: string[] | undefined; url?: string | undefined; blockedChangeIds?: string[] | undefined; stickyBucketAssignmentDocs?: Record<string, StickyAssignmentsDocument> | undefined; saveStickyBucketAssignmentDoc?: ((doc: StickyAssignmentsDocument) => Promise<unknown>) | undefined; forcedVariations?: Record<string, number> | undefined; forcedFeatureValues?: Map<string, any> | undefined; attributeOverrides?: Attributes | undefined; trackingCallback?: Tr… |
@growthbook/growthbook · evalCondition | (obj: TestedObj, condition: ConditionInterface, savedGroups?: SavedGroupsPayload | undefined, visited?: Set<string> | undefined): boolean | (obj: TestedObj, condition: ConditionInterface, options?: EvalConditionOptions | undefined): boolean |
@growthbook/growthbook · AutoExperiment | Experiment<T> & { changeId?: string | undefined; manual?: boolean | undefined; } | Experiment<T> & { changeId?: string | undefined; manual?: boolean | undefined; metadata?: PayloadMetadata | undefined; contextualBanditRef?: string | undefined; } |
@growthbook/growthbook · GrowthBookPayload | { features?: FeatureDefinitions | undefined; dateUpdated?: string | undefined; encryptedFeatures?: string | undefined; experiments?: AutoExperiment<AutoExperimentVariation>[] | undefined; encryptedExperiments?: string | undefined; savedGroups?: SavedGroupsPayload | undefined; encryptedSavedGroups?: string | undefined; contextualBandits?: ContextualBanditDefinitions | undefined; encryptedContextualBandits?: string | undefined; } | { features?: FeatureDefinitions | undefined; dateUpdated?: string | undefined; encryptedFeatures?: string | undefined; experiments?: AutoExperiment<AutoExperimentVariation>[] | undefined; encryptedExperiments?: string | undefined; savedGroups?: SavedGroupsPayload | undefined; encryptedSavedGroups?: string | undefined; contextualBandits?: ContextualBanditDefinitions | undefined; encryptedContextualBandits?: string | undefined; interleavings?: InterleavingDefinitions | undefined; encryptedInterleavings?: string | undefined; } |
@growthbook/growthbook · FeatureApiResponse | { features?: FeatureDefinitions | undefined; dateUpdated?: string | undefined; encryptedFeatures?: string | undefined; experiments?: AutoExperiment<AutoExperimentVariation>[] | undefined; encryptedExperiments?: string | undefined; savedGroups?: SavedGroupsPayload | undefined; encryptedSavedGroups?: string | undefined; contextualBandits?: ContextualBanditDefinitions | undefined; encryptedContextualBandits?: string | undefined; } | { features?: FeatureDefinitions | undefined; dateUpdated?: string | undefined; encryptedFeatures?: string | undefined; experiments?: AutoExperiment<AutoExperimentVariation>[] | undefined; encryptedExperiments?: string | undefined; savedGroups?: SavedGroupsPayload | undefined; encryptedSavedGroups?: string | undefined; contextualBandits?: ContextualBanditDefinitions | undefined; encryptedContextualBandits?: string | undefined; interleavings?: InterleavingDefinitions | undefined; encryptedInterleavings?: string | undefined; } |
@growthbook/growthbook · SavedGroupPayloadEntry | { type: "list"; attributeKey: string; values: (string | number)[]; } | { type: "condition"; condition: ConditionInterface; } | { type: "list"; attributeKey: string; values: (string | number)[]; } | { type: "condition"; condition: ConditionInterface; } | { type: "remote"; attributeKey: string; valuesFrom?: string | undefined; } |
Удалённые члены классов или интерфейсов
Не обнаружено.
Изменённые члены классов или интерфейсов
| member | Было | Стало |
|---|---|---|
GrowthBook.getAttributes | (): { [x: string]: any; } | (): Attributes |
Новые устаревания
Не обнаружено.
Изменения требований (engines, peer-зависимости)
Не обнаружено.
Новые экспорты (26)
| import | export | kind |
|---|---|---|
@growthbook/growthbook | redisResolver | function |
@growthbook/growthbook | PayloadFilters | type |
@growthbook/growthbook | RedisSetClient | type |
@growthbook/growthbook | pruneCondition | function |
@growthbook/growthbook | PayloadMetadata | type |
@growthbook/growthbook | RemoteSavedGroup | type |
@growthbook/growthbook | SavedGroupResolver | type |
@growthbook/growthbook | EvalConditionOptions | type |
@growthbook/growthbook | ReducePayloadOptions | type |
@growthbook/growthbook | TypeMismatchCallback | type |
@growthbook/growthbook | getRemoteSavedGroups | function |
@growthbook/growthbook | ConditionTypeMismatch | type |
@growthbook/growthbook | resolveRemoteGroupIds | function |
@growthbook/growthbook | InterleavingDefinition | type |
@growthbook/growthbook | InterleavingDefinitions | type |
@growthbook/growthbook | REMOTE_GROUP_IDS_ATTRIBUTE | variable |
@growthbook/growthbook/plugins | interleave | function |
@growthbook/growthbook/plugins | InterleavedItem | type |
@growthbook/growthbook/plugins | InterleaveConfig | type |
@growthbook/growthbook/plugins | InterleaveResult | type |
@growthbook/growthbook/plugins | interleavePlugin | function |
@growthbook/growthbook/plugins | InterleaveOptions | type |
@growthbook/growthbook/plugins | InterleaveExposure | type |
@growthbook/growthbook/plugins | InterleavePluginOptions | type |
@growthbook/growthbook/plugins | InterleaveTrackingProps | type |
@growthbook/growthbook/plugins | EVENT_INTERLEAVE_EXPOSURE | variable |
Передайте эти данные своему ИИ-агенту
Vigia — бесплатный MCP-сервер: ваш агент для программирования проверяет версии, несовместимые изменения и уязвимости до того, как напишет код. Без регистрации и API-ключа.
claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp
Добавить в CursorДобавить в VS Code★ Звезда на GitHub
Любой другой MCP-клиент
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }Навык для агентов (SKILL.md): подсказывает агенту, когда использовать Vigia · GitHub Action для pull request
Часто задаваемые вопросы
Какие несовместимые изменения при обновлении @growthbook/growthbook с 1 до 2?
Между @growthbook/growthbook 1.8.0 и 2.0.0 Vigia нашла удалённых экспортов: 0, изменённых сигнатур: 8, удалённых или изменённых членов классов и интерфейсов: 1.
Что устарело в @growthbook/growthbook 2?
В @growthbook/growthbook 2.0.0 новыми устаревшими помечено экспортов или членов: 0.
Для агентов
GET https://vigia.coredls.cloud/v1/packages/npm/@growthbook/growthbook/upgrade?from=1.8.0&to=2.0.0