We value your privacy

This site uses cookies to improve your browsing experience, analyze site traffic, and show personalized content. See our Privacy Policy.

  1. MooseStack
  2. Release Notes
  3. November 7, 2025

November 7, 2025

Highlights
  • New: Environment file support with proper precedence (.env < .env.dev < .env.local)
  • New: FixedString(N) data type support for optimized storage
  • New: Ignore partition changes during migrations to prevent unnecessary table recreations
  • New: Precise numeric types for Python (Int8, UInt32, Float64, etc.)

Environment file support

Configure your Moose projects using .env files with proper precedence (.env < .env.dev < .env.local). This makes it easier to manage different configurations across environments without hardcoding values.

# Create .env files in your Moose project root
# Base configuration (lowest precedence)
echo "MOOSE_HTTP_SERVER_CONFIG__PORT=3000
MOOSE_CLICKHOUSE_CONFIG__HOST=localhost
MOOSE_CLICKHOUSE_CONFIG__PORT=9000" > .env
 
# Development-specific overrides
echo "MOOSE_HTTP_SERVER_CONFIG__PORT=3001
MOOSE_LOGGER__LEVEL=debug
MOOSE_CLICKHOUSE_CONFIG__DB_NAME=myproject_dev" > .env.dev
 
# Local overrides (highest precedence, gitignored)
echo "MOOSE_HTTP_SERVER_CONFIG__PORT=3002
MOOSE_CLICKHOUSE_CONFIG__HOST=127.0.0.1
MOOSE_REDIS_CONFIG__URL=redis://localhost:6380" > .env.local
 
# Start development server - automatically loads .env files
# Precedence: .env < .env.dev < .env.local
moose dev
 
# For production deployment, only .env is loaded
moose prod

PR: #2936 | Docs: Environment variables

FixedString(N) data type support

Support for FixedString(N) data type in data models, allowing you to define fixed-length string columns for optimized storage of data like hashes, IP addresses, and MAC addresses.

datamodels/NetworkEvent.ts
export interface NetworkEvent {  id: string;  timestamp: Date;   // Fixed-length string for MD5 hash (32 hex chars = 16 bytes)  md5_hash: string & FixedString<16>;   // Fixed-length string for IPv6 address (16 bytes)  ipv6_address: string & FixedString<16>;   // Fixed-length string for MAC address (17 chars: XX:XX:XX:XX:XX:XX)  mac_address: string & FixedString<17>;   // Array of MAC addresses for network devices  connected_devices: (string & FixedString<17>)[];   // Regular string for variable-length data  user_agent: string;   // Other fields  bytes_transferred: number;  is_encrypted: boolean;}

PR: #2939 | Docs: FixedString type | ClickHouse FixedString

Ignore partition changes during migrations

Configure the migration system to ignore PARTITION BY changes when comparing database schemas. This prevents unnecessary table recreations when partition changes are intentionally ignored.

moose.config.toml
[migration_config]ignore_operations = ["ModifyPartitionBy"]

PR: #2928 | Docs: Ignoring operations

Precise numeric types for Python

New type aliases for ClickHouse numeric types in Python: Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Float32, and Float64. These provide better type safety and clearer intent when defining data models.

datamodels/UserActivity.py
from moose_lib import (    Key, IngestPipeline, IngestPipelineConfig,    Int8, Int16, Int32, Int64,    UInt8, UInt16, UInt32, UInt64,    Float32, Float64)from pydantic import BaseModelfrom datetime import datetimefrom typing import Optional class UserActivity(BaseModel):    user_id: Key[UInt64]  # User IDs are always positive, use UInt64 for large scale    event_time: datetime    page_views: UInt32      # Daily page views (0 to 4 billion)    session_duration: UInt16  # Session length in seconds (0 to 65K seconds)    score_delta: Int32      # Score changes can be positive or negative    latitude: Float64       # GPS coordinates need high precision    longitude: Float64      # GPS coordinates need high precision    confidence: Float32     # ML confidence scores (lower precision acceptable)

PR: #2945 | Docs: Numeric types

Other MooseStack Features and Improvements

  • Real-time Docker logs – Build commands now stream progress in real-time for better debugging. PR #2958
  • ClickHouse cluster configuration – Define clusters for ON CLUSTER operations in distributed environments. PR #2931
  • TypeScript MCP template – Create AI assistants that can query your ClickHouse data via Model Context Protocol. Docs: MCP template | PR #2953
  • BYOF documentation – Integration guides for Express, Fastify, Koa, and FastAPI with MooseStack. Docs: BYOF guide | PR #2935

MooseStack Bug Fixes

  • Bug fixes: (db-pull defaults) #2956, (FastAPI OpenAPI paths) #2957, (custom database names) #2955, (table diffing compatibility) #2918

Other Fiveonefour Features and Improvements

  • Added Nix syntax highlighting support for code blocks in the dashboard
  • Added branch delete button in branch settings with improved loading states

Fiveonefour Bug Fixes

  • Bug fixes: (Google Tag Manager) #2940, (CORS issues) #2941

On this page

Environment file supportFixedString(N) data type supportIgnore partition changes during migrationsPrecise numeric types for PythonOther MooseStack Features and ImprovementsMooseStack Bug FixesOther Fiveonefour Features and ImprovementsFiveonefour Bug Fixes
Edit this page
FiveonefourFiveonefour
Fiveonefour Docs
MooseStackHostingTemplatesGuides
Release Notes
Source531
  • Overview
Build a New App
  • 5 Minute Quickstart
  • Browse Templates
  • Existing ClickHouse
Add to Existing App
  • Next.js
  • Fastify
Fundamentals
  • Moose Runtime
  • MooseDev MCP
  • Language Server
  • Data Modeling
Moose Modules
  • Moose OLAP
  • Moose Streaming
  • Moose Workflows
  • Moose APIs & Web Apps
Deployment & Lifecycle
  • Moose Dev
  • Moose Migrate
  • Moose Deploy
Reference
  • API Reference
  • Query Layer
  • Data Types
  • Table Engines
  • CLI
  • Configuration
  • Observability Metrics
  • Help
  • Release Notes
    • February 19, 2026
    • February 12, 2026
    • February 6, 2026
    • January 30, 2026
    • January 23, 2026
    • January 16, 2026
    • January 9, 2026
    • December 22, 2025
    • December 15, 2025
    • December 5, 2025
    • November 22, 2025
    • November 14, 2025
    • November 7, 2025
    • November 1, 2025
    • October 24, 2025
Contribution
  • Documentation
  • Framework