Ruby general availability
The Ruby SDK generator is now generally available, with modern type system support and a minimal-dependency design that feels right at home in the Ruby ecosystem.
- Sorbet: Each SDK includes comprehensive RBI annotations, including enums and aliases, without a dependency on sorbet-runtime.
- RBS: Each SDK also includes Ruby 3’s RBS type annotations, compatible with the steep typechecker.
- YARD: Full YARD docs support for methods and types, with navigable links between related objects, published to Gemdocs automatically.
- Tooling support: Great auto-completion for ecosystem tool chains, including generics for pagination & streaming for all supported language services.
- File uploads & downloads: Full lazy upload and download support with conveniences like Pathname support.
- Type conversions: Automatic conversions to Time, Integer and so on as appropriate.
- Pattern matching: All data containers support Ruby 3 pattern matching.
- Minimal dependencies: The SDKs use stdlib net/http for requests, relying only on connection_pool.
- Introspection: Pretty printing is supported for all internal types, for both classes and instances.
- Streaming: Support for SSE & JSON-L streams as ruby Enumerators, allowing for convenient .map, .filter, and so on, with automatic closing during GC.
- Advanced use cases: Raw and undocumented request support.
We plan to add support for middleware soon, along with other conveniences; if there’s more you’d like to see, please share: hello@stainless.com.