ESC
Type to search...

Changelog

All notable changes to Rapina.

March 6, 2026

v0.9.0

FeatureDocsFix
  • WebSocket support with raw message handling behind websocket feature flag
  • Relay system for real-time push over WebSocket with pub/sub, channel handlers, and presence tracking
  • Endpoint groups in route macros: #[get("/users", group = "/api")] for auto-discovery
  • Starter templates: rapina new --template crud and --template auth
  • rapina import openapi command for importing external API specs
  • HTTP upgrade support via auto::Builder
  • Windows-compatible graceful shutdown
  • Typed content-type constants replacing hardcoded strings
  • Interactive tutorial with 6 chapters covering the core framework
  • Redesigned landing page and getting started documentation
  • WebSocket/Relay, validation, testing, OpenAPI, migrations, and DI documentation pages
  • Updated all docs to use Deref pattern for extractors
  • Fixed syntax highlighting on documentation site
  • OpenAPI check now respects SERVER_PORT environment variable

Contributors: @Ismaellima4, @ShiraiEd, @uemuradevexe, @juv, @LevelUpExtreme — thank you all for making this release happen.

March 1, 2026

v0.8.0

FeatureFix
  • Built-in pagination with Paginate extractor
  • Response caching layer with in-memory and Redis backends
  • Deref implementation on all extractor newtypes
  • Fixed static routes shadowed by parameterized routes with discover()
  • Fixed schema! macro JsonSchema for Uuid and Decimal types
  • NaiveDateTime and composite primary key support in schema! macro

Contributors: @arferreira, @Ismaellima4

February 27, 2026

v0.7.0

FeatureFixDocs
  • rapina import database — reverse-engineer a live PostgreSQL, MySQL, or SQLite database into full feature modules with handlers, DTOs, entities, and migrations
  • Graceful shutdown with proper SIGTERM/SIGINT handling
  • Replaced println/eprintln with tracing across server code
  • rapina doctor and rapina routes now accept --port and --host params
  • AI assistant config files (AGENT.md, .claude/, .cursor/) in rapina new template
  • Catppuccin color palette extracted into shared CLI module
  • Unit tests for OpenAPI and introspection endpoint handlers
  • Fixed Cargo.toml parser error on rapina dev and rapina test
  • Middleware documentation page

Contributors: @arferreira, @ShiraiEd, @Ismaellima4, @uemuradevexe, @KelvinDiasMoreira, @LevelUpExtreme

February 22, 2026

v0.6.0

Feature
  • Route auto-discovery with .discover() — annotate handlers, call one method, routes are registered at startup via inventory
  • Prometheus metrics endpoint
  • Upgraded toml to 1.0 (TOML spec 1.1 support)
  • Upgraded jsonwebtoken to 10.3.0

Contributors: @arferreira, @Jamersom-silva, @lucaserm, @uemuradevexe, @sofia-araujo

February 18, 2026

v0.5.0

Feature
  • rapina add resource — scaffolds complete CRUD resource with handlers, DTOs, error types, schema! entity, and migrations from a single command
  • rapina migrate new for standalone database migrations
  • 12 supported field types with aliases for resource scaffolding
  • TraceIdMiddleware unit and integration tests

Contributors: @arferreira, @yan-pi, @ShiraiEd

February 12, 2026

v0.4.0

Feature
  • Database integration with SeaORM and schema! macro for declarative entity definition with automatic relationship inference
  • rapina test command with --coverage and --watch modes
  • Rate limiting middleware with token bucket algorithm
  • Response compression (gzip/brotli)
  • CORS middleware with configurable origins, methods, and headers
  • Cookie extractor for typed cookie access in handlers
  • Modular API grouping with Router::group()

Contributors: @arferreira, @juv, @ShiraiEd, @uemuradevexe

January 29, 2026

v0.2.1

Fix
  • Fixed infinite restart loop when server crashes in rapina dev
  • Fixed rapina new scaffolded projects failing to build
  • Made OpenAPI endpoint optional in rapina doctor
  • Extracted x-trace-id header and content-type strings into constants

Contributors: @arferreira, @uemuradevexe, @juv

January 25, 2026

v0.2.0

Feature
  • OpenAPI as a living contract — automatic spec generation, rapina openapi export, check, diff for breaking change detection
  • Domain errors as first-class citizens with typed error handling
  • JWT authentication with protected-by-default routes
  • Type-safe configuration with #[derive(Config)] and from_env()
  • rapina doctor introspection for catching misconfigurations
January 24, 2026

v0.1.0-alpha.4

Feature
  • Automatic OpenAPI 3.0 spec generation with response schemas
  • CLI tools: rapina openapi export, check, diff
  • Breaking change detection for API contracts
  • Re-exported schemars for easy JsonSchema derive
January 22, 2026

v0.1.0-alpha.3

Fix
  • Fixed missing hyper dependency in generated template
  • Changed "Next steps" from cargo run to rapina dev
  • Generated template now returns JSON responses with proper structs
  • Catppuccin Mocha color palette for CLI output
  • Tracing and request logging in generated template
January 22, 2026

v0.1.0-alpha.2

Feature
  • Rapina CLI with new, dev, routes, doctor commands
  • Built-in TestClient for integration testing
  • Route introspection endpoint at /__rapina/routes
  • Middleware system with timeout, body limit, and trace ID
  • Query, Headers, and Form extractors
  • Validated<T> extractor for request validation
  • Structured logging with tracing
  • State extractors for dependency injection
January 21, 2026

v0.1.0-alpha.1

Initial Release
  • Core routing with typed extractors
  • JSON request/response handling
  • Path and query parameter extraction
  • Basic error handling with typed responses