Vigia

Nâng cấp ajv từ 7.x lên 8.x

So sánh API công khai của ajv 7.2.4 và 8.20.0, được tính tự động từ kiểu TypeScript. Chữ ký thay đổi là thay đổi có thể không tương thích, không phải điều chắc chắn.

Tóm tắt

Đường dẫn import bị xóa0
Export bị xóa0
Chữ ký thay đổi4
Thành viên lớp hoặc interface bị xóa1
Thành viên lớp hoặc interface thay đổi16
Mới bị ngừng hỗ trợ0
Thay đổi yêu cầu (engines, phụ thuộc peer)0
Export mới3

Export bị xóa

Không phát hiện.

Chữ ký thay đổi

exportTrướcSau
ajv · JSONType"string" | "number" | "boolean" | "object" | "integer" | "null" | "array""string" | "number" | "boolean" | "object" | "integer" | "array" | "null"
ajv · DefinedErrorTypeError | ApplicatorKeywordError | ValidationKeywordError | FormatError | UnevaluatedPropertiesError | UnevaluatedItemsError | DependentRequiredErrorTypeError | ApplicatorKeywordError | ValidationKeywordError | FormatError | UnevaluatedPropertiesError | UnevaluatedItemsError | DependentRequiredError | DiscriminatorError
ajv · JSONSchemaType(T extends number ? { type: JSONType<"number" | "integer", _partial>; minimum?: number | undefined; maximum?: number | undefined; exclusiveMinimum?: number | undefined; exclusiveMaximum?: number | undefined; multipleOf?: number | undefined; format?: string | undefined; } : T extends string ? { type: JSONType<"string", _partial>; minLength?: number | undefined; maxLength?: number | undefined; pattern?: string | undefined; format?: string | undefined; } : T extends boolean ? { type: "boolean"; } : T extends [any, ...any[]] ? { type: JSONType<"array", _partial>; items: { readonly [K in keyof T]-?…({ anyOf: readonly UncheckedJSONSchemaType<T, false>[]; } | { oneOf: readonly UncheckedJSONSchemaType<T, false>[]; } | ({ type: readonly (T extends number ? "number" | "integer" : T extends string ? "string" : T extends boolean ? "boolean" : never)[]; } & UnionToIntersection<T extends number ? NumberKeywords : T extends string ? StringKeywords : T extends boolean ? {} : never>) | ((T extends number ? { type: "number" | "integer"; } & NumberKeywords : T extends string ? { type: "string"; } & StringKeywords : T extends boolean ? { type: "boolean"; } : T extends readonly [any, ...any[]] ? { type:…
ajv · InstanceOptionsCurrentOptions & DeprecatedOptions & { strict: NonNullable<boolean | "log" | undefined>; strictTypes: NonNullable<boolean | "log" | undefined>; strictTuples: NonNullable<boolean | "log" | undefined>; inlineRefs: NonNullable<number | boolean | undefined>; loopRequired: number; loopEnum: number; meta: NonNullable<boolean | SchemaObject | undefined>; messages: NonNullable<boolean | undefined>; addUsedSchema: NonNullable<boolean | undefined>; validateSchema: NonNullable<boolean | "log" | undefined>; validateFormats: NonNullable<boolean | undefined>; } & { code: InstanceCodeOptions; }CurrentOptions & DeprecatedOptions & { strictSchema: NonNullable<boolean | "log" | undefined>; strictNumbers: NonNullable<boolean | "log" | undefined>; strictTypes: NonNullable<boolean | "log" | undefined>; strictTuples: NonNullable<boolean | "log" | undefined>; strictRequired: NonNullable<boolean | "log" | undefined>; inlineRefs: NonNullable<number | boolean | undefined>; loopRequired: number; loopEnum: number; meta: NonNullable<boolean | SchemaObject | undefined>; messages: NonNullable<boolean | undefined>; schemaId: NonNullable<"id" | "$id" | undefined>; addUsedSchema: NonNullable<boolean |…

Thành viên lớp hoặc interface bị xóa

memberimportTrước
ErrorObject.dataPathajvstring

Thành viên lớp hoặc interface thay đổi

memberTrướcSau
default.compile<T = unknown>(schema: Schema | JSONSchemaType<T>, _meta?: boolean | undefined): ValidateFunction<T> | <T = unknown>(schema: JTDSchemaType<T>, _meta?: boolean | undefined): ValidateFunction<T> | <T = unknown>(schema: AsyncSchema, _meta?: boolean | undefined): AsyncValidateFunction<T> | <T = unknown>(…<T = unknown>(schema: Schema | JSONSchemaType<T>, _meta?: boolean | undefined): ValidateFunction<T> | <T = unknown>(schema: JTDSchemaType<T>, _meta?: boolean | undefined): ValidateFunction<T> | <N extends never, T extends SomeJTDSchemaType>(schema: T, _meta?: boolean | undefined): ValidateFunction<J…
default.validate(schema: string | Schema, data: unknown): boolean | (schemaKeyRef: string | AnySchema, data: unknown): boolean | Promise<unknown> | <T>(schema: string | Schema | JSONSchemaType<T>, data: unknown): data is T | <T>(schema: JTDSchemaType<T>, data: unknown): data is T | <T>(schema: AsyncSchema, data: un…(schema: string | Schema, data: unknown): boolean | (schemaKeyRef: string | AnySchema, data: unknown): boolean | Promise<unknown> | <T>(schema: string | Schema | JSONSchemaType<T>, data: unknown): data is T | <T>(schema: JTDSchemaType<T>, data: unknown): data is T | <N extends never, T extends SomeJ…
default._addSchema(schema: AnySchema, meta?: boolean | undefined, validateSchema?: boolean | "log" | undefined, addSchema?: boolean | undefined): SchemaEnv(schema: AnySchema, meta?: boolean | undefined, baseId?: string | undefined, validateSchema?: boolean | "log" | undefined, addSchema?: boolean | undefined): SchemaEnv
SchemaCxt.dataTypes("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[]("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[]
KeywordCxt.error(append?: true | undefined): void(append?: boolean | undefined, errorParams?: KeywordCxtParams | undefined, errorPaths?: ErrorPaths | undefined): void
KeywordCxt.subschema(appl: Partial<{ keyword: string; schemaProp: string | number; schema: AnySchema; schemaPath: Code; errSchemaPath: string; topSchemaRef: Code; data: Code; dataProp: string | number | Code; dataTypes: ("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[]; definedProperties: Se…(appl: Partial<{ keyword: string; schemaProp: string | number; schema: AnySchema; schemaPath: Code; errSchemaPath: string; topSchemaRef: Code; data: Code; dataProp: string | number | Code; dataTypes: ("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[]; definedProperties: Se…
KeywordCxt.schemaType("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[]("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[]
ErrorObject.instancePathstring | undefinedstring
SchemaObjCxt.dataTypes("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[]("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[]
CodeKeywordDefinition.type"string" | "number" | "boolean" | "object" | "integer" | "null" | "array" | ("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[] | undefined"string" | "number" | "boolean" | "object" | "integer" | "array" | "null" | ("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[] | undefined
CodeKeywordDefinition.schemaType"string" | "number" | "boolean" | "object" | "integer" | "null" | "array" | ("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[] | undefined"string" | "number" | "boolean" | "object" | "integer" | "array" | "null" | ("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[] | undefined
FuncKeywordDefinition.type"string" | "number" | "boolean" | "object" | "integer" | "null" | "array" | ("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[] | undefined"string" | "number" | "boolean" | "object" | "integer" | "array" | "null" | ("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[] | undefined
FuncKeywordDefinition.schemaType"string" | "number" | "boolean" | "object" | "integer" | "null" | "array" | ("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[] | undefined"string" | "number" | "boolean" | "object" | "integer" | "array" | "null" | ("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[] | undefined
KeywordErrorDefinition.messagestring | Code | ((cxt: KeywordErrorCxt) => Code)string | Code | ((cxt: KeywordErrorCxt) => string | Code)
MacroKeywordDefinition.type"string" | "number" | "boolean" | "object" | "integer" | "null" | "array" | ("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[] | undefined"string" | "number" | "boolean" | "object" | "integer" | "array" | "null" | ("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[] | undefined
MacroKeywordDefinition.schemaType"string" | "number" | "boolean" | "object" | "integer" | "null" | "array" | ("string" | "number" | "boolean" | "object" | "integer" | "null" | "array")[] | undefined"string" | "number" | "boolean" | "object" | "integer" | "array" | "null" | ("string" | "number" | "boolean" | "object" | "integer" | "array" | "null")[] | undefined

Mới bị ngừng hỗ trợ

Không phát hiện.

Thay đổi yêu cầu (engines, phụ thuộc peer)

Không phát hiện.

Export mới (3)
importexportkind
ajvAjvclass
ajvMissingRefErrorclass
ajvValidationErrorclass

Câu hỏi thường gặp

Nâng cấp ajv từ 7 lên 8 có những thay đổi không tương thích nào?

Giữa ajv 7.2.4 và 8.20.0, Vigia tìm thấy 0 export bị xóa, 4 chữ ký thay đổi và 17 thành viên lớp hoặc interface bị xóa hay thay đổi.

Những gì bị ngừng hỗ trợ trong ajv 8?

0 export hoặc thành viên mới bị đánh dấu ngừng hỗ trợ trong ajv 8.20.0.

Dành cho tác tử

GET https://vigia.coredls.cloud/v1/packages/npm/ajv/upgrade?from=7.2.4&to=8.20.0