Vigia

Memperbarui postgres dari 3.x ke 4.x

Perbandingan API publik postgres 3.4.9 dan 4.0.0, dihitung otomatis dari tipe TypeScript-nya. Tanda tangan yang berubah adalah kemungkinan perubahan tidak kompatibel, bukan kepastian.

Ringkasan

Jalur impor yang dihapus0
Ekspor yang dihapus45
Tanda tangan yang berubah14
Anggota kelas atau antarmuka yang dihapus0
Anggota kelas atau antarmuka yang berubah0
Baru ditandai usang0
Perubahan persyaratan (engines, dependensi peer)1
Ekspor baru6

Ekspor yang dihapus

importexportkindSebelum
postgresStateinterfaceinterface
postgrescamelnamespacenamespace
postgreskebabnamespacenamespace
postgresBigIntvariablePostgresType<bigint>
postgresColumninterfaceinterface
postgrespascalnamespacenamespace
postgrestoCamelfunction(str: string): string
postgrestoKebabfunction(str: string): string
postgresMaybeRowtypeRow | undefined
postgrestoPascalfunction(str: string): string
postgresJSONValuetypestring | number | boolean | Date | readonly JSONValue[] | { toJSON(): any; } | { readonly [prop: string]: JSONValue | ((...args: any) => any) | undefined; readonly [prop: number]: JSONValue | ((...args: any) => any) | undefined; } | null
postgresStatementinterfaceinterface
postgresTransforminterfaceinterface
postgresfromCamelfunction(str: string): string
postgresfromKebabfunction(str: string): string
postgresColumnInfointerfaceinterface
postgresColumnListtype(T extends string ? Column<T> : never)[]
postgresListenMetainterfaceinterface
postgresRawRowListtypeBuffer[][] & Iterable<Buffer[][]> & ResultQueryMeta<T["length"], keyof T[number]>
postgresResultMetainterfaceinterface
postgresfromPascalfunction(str: string): string
postgresLargeObjectinterfaceinterface
postgresGenericErrorinterfaceinterface
postgresRelationInfointerfaceinterface
postgresSerializabletypestring | number | boolean | Date | Uint8Array<ArrayBufferLike> | null
postgresListenRequestinterfaceinterface
postgresValuesRowListtypeT[number][keyof T[number]][][] & ResultQueryMeta<T["length"], keyof T[number]>
postgresArrayParameterinterfaceinterface
postgresEscapableArraytype(string | number)[]
postgresPendingRequestinterfaceinterface
postgresConnectionErrorinterfaceinterface
postgresExecutionResulttype[] & ResultQueryMeta<number, keyof NonNullable<T>>
postgresParameterOrJSONtypestring | 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
postgresPendingRawQueryinterfaceinterface
postgresResultQueryMetainterfaceinterface
postgresNotSupportedErrorinterfaceinterface
postgresPendingValuesQueryinterfaceinterface
postgresSubscriptionHandleinterfaceinterface
postgresUnsafeQueryOptionsinterfaceinterface
postgresParameterOrFragmenttypeFragment | SerializableParameter<T> | Fragment[]
postgresConnectionParametersinterfaceinterface
postgresPendingDescribeQueryinterfaceinterface
postgresPendingQueryModifiersinterfaceinterface
postgresSerializableParametertypeSerializable | T | Helper<any, any[]> | Parameter<any> | ArrayParameter<readonly any[]> | readonly SerializableParameter<T>[]
postgresAuthNotImplementedErrorinterfaceinterface

Tanda tangan yang berubah

exportSebelumSesudah
postgres · RowinterfaceRow
postgres · SqlinterfaceSql<TTypes>
postgres · ISqlinterfaceISql<TTypes>
postgres · HelperinterfaceHelper<T, U>
postgres · NoticeinterfaceNotice
postgres · OptionsinterfaceOptions<T>
postgres · ParameterinterfaceParameter<T>
postgres · ReservedSqlinterfaceReservedSql<TTypes>
postgres · PendingQueryinterfacePendingQuery<T>
postgres · PostgresTypeinterfacePostgresType<T>
postgres · ParsedOptionsinterfaceParsedOptions<T>
postgres · PostgresErrorclassPostgresError
postgres · TransactionSqlinterfaceTransactionSql<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; })

Anggota kelas atau antarmuka yang dihapus

Tidak ada yang terdeteksi.

Anggota kelas atau antarmuka yang berubah

Tidak ada yang terdeteksi.

Baru ditandai usang

Tidak ada yang terdeteksi.

Perubahan persyaratan (engines, dependensi peer)

SebelumSesudah
engines.node>=12>=20
Ekspor baru (6)
importexportkind
postgresdefaultfunction
postgresPoolEventtype
postgresQueryTracetype
postgresNoticeEventtype
postgresConnectTracetype
postgresTransactionTracetype

Berikan fakta ini ke agen AI Anda

Vigia adalah server MCP gratis: agen coding Anda memeriksa versi, perubahan yang merusak kompatibilitas, dan kerentanan sebelum menulis kode. Tanpa pendaftaran, tanpa kunci API.

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

Tambahkan ke CursorTambahkan ke VS Code★ Bintang di GitHub

Klien MCP lainnya
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Skill agen (SKILL.md): memberi tahu agen kapan memakai Vigia · GitHub Action untuk pull request

Pertanyaan umum

Apa saja perubahan tidak kompatibel saat memperbarui postgres dari 3 ke 4?

Antara postgres 3.4.9 dan 4.0.0, Vigia menemukan 45 ekspor yang dihapus, 14 tanda tangan yang berubah, dan 0 anggota kelas atau antarmuka yang dihapus atau berubah.

Apa yang ditandai usang di postgres 4?

0 ekspor atau anggota baru ditandai usang di postgres 4.0.0.

Untuk agen

GET https://vigia.coredls.cloud/v1/packages/npm/postgres/upgrade?from=3.4.9&to=4.0.0