Moose Changelog
What is this page?
This changelog tracks all meaningful changes to Moose. Each entry includes the PR link and contributor credit, organized by date (newest first). Use this page to stay informed about new features, fixes, and breaking changes that might affect your projects.
How to read this changelog
Release highlights
Key features, enhancements, or fixes for each release.
Added
New features or capabilities.
Changed
Updates to existing functionality or improvements.
Deprecated
Features that are no longer recommended for use and may be removed in the future.
Fixed
Bug fixes and reliability improvements.
Security
Security-related updates or vulnerability fixes.
Breaking changes
Changes that require user action or may break existing usage.
2025-05-23
Release Highlights
- TypeScript
DeadLetterQueue<T>
support — Handle failed streaming function messages with type-safe dead letter queues in TypeScript. - Improved Python
DeadLetterModel
API — Renamedas_t
toas_typed
for better clarity.
2025-05-22
Release Highlights
- Refactored CLI ‘peek’ command — Now supports peeking into both tables and streams with unified parameters.
- Simplified CLI experience — Removed unused commands and routines for a cleaner interface.
Breaking Changes
None
2025-05-21
Release Highlights
- Infrastructure state sync — Auto-syncs DB state before changes, handling manual modifications and failed DDL runs.
- Fixed nested data type support — Use objects and arrays in your Moose models.
Fixed
- Handling of nested data structures in Moose models for correct support of complex objects and arrays.
#2357 by georgevanderson
Breaking Changes
None
2025-05-20
Release Highlights
- ClickHouse
Date
type support — Store and query native date values in your schemas.
Breaking Changes
None
2025-05-19
Release Highlights
- Metadata map propagation — Metadata is now tracked and available in the infra map for both Python and TypeScript. Improves LLM accuracy and reliability when working with Moose objects.
Added
- Metadata map propagation to infra map for consistent tracking and availability in both Python and TypeScript.
#2326 by georgevanderson
Breaking Changes
None
2025-05-16
Release Highlights
- New
list[str]
support to PythonAggregateFunction
— Enables more flexible aggregation logic in Materialized Views. - Python
DeadLetterQueue[T]
alpha release — Automatically route exceptions to a dead letter queue in streaming functions.
Breaking Changes
None
2025-05-15
Release Highlights
- **Hotfix — casing fix for
JSON
columns in TypeScript.
Breaking Changes
None
2025-05-14
Release Highlights
- Introduced TypeScript JSON columns — Use
Record<string, any>
for type-safe JSON fields. - Ingestion config simplified — Less config needed for ingestion setup.
- Python
enum
support improved — More robust data models.
Deprecated
IngestionFormat
fromIngestApi
config for simpler ingestion setup.
#2306 by georgevanderson
Breaking Changes
None
2025-05-13
Release Highlights
- New
refresh
CLI command — Quickly reload data and schema changes from changes applied directly to your database outside of Moose. - Python:
LowCardinality
type support — Better performance for categorical data.
Breaking Changes
None
2025-05-10
Release Highlights
- Dependency-based execution order for Materialized Views — Reduces migration errors and improves reliability.
Breaking Changes
None
2025-05-07
Release Highlights
- Python
datetime64
support - Enables more precise datetime handling in Python data models. - Type mapping in Python
QueryClient
- Automatically maps ClickHouse query result rows to the correct Pydantic model types.
Breaking Changes
None
2025-05-06
Release Highlights
uint
type support in TypeScript — Enables type safety for unsigned integer fields in Typescript data models.
Breaking Changes
None
2025-05-01
Release Highlights
- Explicit dependency tracking for materialized views — Improves data lineage, migration reliability, and documentation.
2025-04-30
Release Highlights
- More flexible
JSON_ARRAY
configuration forIngestApi
— Now accepts both arrays and single elements. Default config is nowJSON_ARRAY
. - Python rich ClickHouse type support — Added support for advanced types in Python models:
Decimal
:clickhouse_decimal(precision, scale)
datetime
with precision:clickhouse_datetime64(precision)
date
:date
int
with size annotations:Annotated[int, 'int8']
,Annotated[int, 'int32']
, etc.UUID
:UUID
Added
Breaking Changes
None