将 postgres 从 3.x 升级到 4.x
根据 TypeScript 类型自动比较 postgres 3.4.9 与 4.0.0 的公开 API。签名变化表示可能存在不兼容变更,并非确定结论。
概要
| 已删除的导入路径 | 0 |
|---|---|
| 已删除的导出 | 45 |
| 已修改的签名 | 14 |
| 已删除的类或接口成员 | 0 |
| 已修改的类或接口成员 | 0 |
| 新增弃用 | 0 |
| 要求变化(engines、peer 依赖) | 1 |
| 新增导出 | 6 |
已删除的导出
| import | export | kind | 之前 |
|---|---|---|---|
postgres | State | interface | interface |
postgres | camel | namespace | namespace |
postgres | kebab | namespace | namespace |
postgres | BigInt | variable | PostgresType<bigint> |
postgres | Column | interface | interface |
postgres | pascal | namespace | namespace |
postgres | toCamel | function | (str: string): string |
postgres | toKebab | function | (str: string): string |
postgres | MaybeRow | type | Row | undefined |
postgres | toPascal | function | (str: string): string |
postgres | JSONValue | type | string | number | boolean | Date | readonly JSONValue[] | { toJSON(): any; } | { readonly [prop: string]: JSONValue | ((...args: any) => any) | undefined; readonly [prop: number]: JSONValue | ((...args: any) => any) | undefined; } | null |
postgres | Statement | interface | interface |
postgres | Transform | interface | interface |
postgres | fromCamel | function | (str: string): string |
postgres | fromKebab | function | (str: string): string |
postgres | ColumnInfo | interface | interface |
postgres | ColumnList | type | (T extends string ? Column<T> : never)[] |
postgres | ListenMeta | interface | interface |
postgres | RawRowList | type | Buffer[][] & Iterable<Buffer[][]> & ResultQueryMeta<T["length"], keyof T[number]> |
postgres | ResultMeta | interface | interface |
postgres | fromPascal | function | (str: string): string |
postgres | LargeObject | interface | interface |
postgres | GenericError | interface | interface |
postgres | RelationInfo | interface | interface |
postgres | Serializable | type | string | number | boolean | Date | Uint8Array<ArrayBufferLike> | null |
postgres | ListenRequest | interface | interface |
postgres | ValuesRowList | type | T[number][keyof T[number]][][] & ResultQueryMeta<T["length"], keyof T[number]> |
postgres | ArrayParameter | interface | interface |
postgres | EscapableArray | type | (string | number)[] |
postgres | PendingRequest | interface | interface |
postgres | ConnectionError | interface | interface |
postgres | ExecutionResult | type | [] & ResultQueryMeta<number, keyof NonNullable<T>> |
postgres | ParameterOrJSON | type | string | number | boolean | Date | Uint8Array<ArrayBufferLike> | Helper<any, any[]> | Parameter<any> | ArrayParameter<readonly any[]> | readonly JSONValue[] | { toJSON(): any; } | { readonly [prop: string]: JSONValue | ((...args: any) => any) | undefined; readonly [prop: number]: JSONValue | ((...args: any) => any) | undefined; } | T | readonly SerializableParameter<T>[] | null |
postgres | PendingRawQuery | interface | interface |
postgres | ResultQueryMeta | interface | interface |
postgres | NotSupportedError | interface | interface |
postgres | PendingValuesQuery | interface | interface |
postgres | SubscriptionHandle | interface | interface |
postgres | UnsafeQueryOptions | interface | interface |
postgres | ParameterOrFragment | type | Fragment | SerializableParameter<T> | Fragment[] |
postgres | ConnectionParameters | interface | interface |
postgres | PendingDescribeQuery | interface | interface |
postgres | PendingQueryModifiers | interface | interface |
postgres | SerializableParameter | type | Serializable | T | Helper<any, any[]> | Parameter<any> | ArrayParameter<readonly any[]> | readonly SerializableParameter<T>[] |
postgres | AuthNotImplementedError | interface | interface |
已修改的签名
| export | 之前 | 之后 |
|---|---|---|
postgres · Row | interface | Row |
postgres · Sql | interface | Sql<TTypes> |
postgres · ISql | interface | ISql<TTypes> |
postgres · Helper | interface | Helper<T, U> |
postgres · Notice | interface | Notice |
postgres · Options | interface | Options<T> |
postgres · Parameter | interface | Parameter<T> |
postgres · ReservedSql | interface | ReservedSql<TTypes> |
postgres · PendingQuery | interface | PendingQuery<T> |
postgres · PostgresType | interface | PostgresType<T> |
postgres · ParsedOptions | interface | ParsedOptions<T> |
postgres · PostgresError | class | PostgresError |
postgres · TransactionSql | interface | TransactionSql<TTypes> |
postgres · ReplicationEvent | { command: "insert"; relation: RelationInfo; } | { command: "delete"; relation: RelationInfo; key: boolean; } | { command: "update"; relation: RelationInfo; key: boolean; old: Row | null; } | TransactionInfo & ({ command: "insert"; relation: RelationInfo; } | { command: "update"; relation: RelationInfo; key: boolean; old: Row | null; } | { command: "delete"; relation: RelationInfo; key: boolean; } | { command: "truncate"; relation: RelationInfo; cascade: boolean; restartIdentity: boolean; }) |
已删除的类或接口成员
未发现。
已修改的类或接口成员
未发现。
新增弃用
未发现。
要求变化(engines、peer 依赖)
| 之前 | 之后 | |
|---|---|---|
engines.node | >=12 | >=20 |
新增导出 (6)
| import | export | kind |
|---|---|---|
postgres | default | function |
postgres | PoolEvent | type |
postgres | QueryTrace | type |
postgres | NoticeEvent | type |
postgres | ConnectTrace | type |
postgres | TransactionTrace | type |
把这些数据交给你的 AI 智能体
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" } } }常见问题
将 postgres 从 3 升级到 4 有哪些不兼容变更?
在 postgres 3.4.9 与 4.0.0 之间,Vigia 发现 45 个已删除的导出、14 个已修改的签名,以及 0 个已删除或修改的类或接口成员。
postgres 4 中弃用了哪些内容?
postgres 4.0.0 中有 0 个导出或成员新被标记为弃用。
供智能体使用
GET https://vigia.coredls.cloud/v1/packages/npm/postgres/upgrade?from=3.4.9&to=4.0.0