DrizzleORM v0.30.0 릴리스
Mar 7, 2024

주요 변경 사항

모든 드라이버의 동작을 일관되게 맞추기 위해 Postgres 타임스탬프 매핑이 변경되었습니다.

postgres.js 드라이버 인스턴스가 날짜를 항상 문자열로 반환하도록 수정했으며, Drizzle은 선택한 mode에 따라 문자열 또는 매핑된 날짜를 제공합니다. 발생할 수 있는 유일한 문제는 Drizzle 내부에 postgres.js 드라이버 인스턴스를 제공하면 해당 객체의 날짜 동작이 변경되어 항상 문자열이 된다는 점입니다.

이 변경 사항을 마이너 릴리스로 적용하면서 다음 사항을 알려드립니다:

postgres.js에서 변경된 파서입니다.

const transparentParser = (val: any) => val;

// Override postgres.js default date parsers: https://github.com/porsager/postgres/discussions/761
for (const type of ['1184', '1082', '1083', '1114']) {
	client.options.parsers[type as any] = transparentParser;
	client.options.serializers[type as any] = transparentParser;
}

이상적으로는 거의 모든 다른 드라이버와 마찬가지로 쿼리별로 매핑을 변경할 수 있어야 하며, 이는 드라이버 클라이언트가 변경되지 않음을 의미합니다. postgres.js 라이브러리 제작자에게 쿼리별 매핑 인터셉터 지정 가능성에 대해 문의하여 모든 사용자를 위해 이 흐름을 더욱 개선할 예정입니다.

이 기능을 놓쳤고 이미 postgres.js에서 사용 가능한 경우 Discord에서 알려주세요!

타임존이 있는 타임스탬프와 없는 타임스탬프에 대한 추가 참조는 문서에서 확인할 수 있습니다.

postgres.js 드라이버와 Drizzle 시작하기 문서는 여기에서 확인하세요.

버그 수정