Skip to content

TeleFlow 1.0.0-alpha.5

Pre-release
Pre-release

Choose a tag to compare

@iriswolf iriswolf released this 30 Jun 20:19
20c64fe

This alpha focuses on handler registration semantics, compile-time filter metadata, route dispatch indexing, and typed callback keyboard packing.

Added

  • Parameterized custom filter attributes with generated metadata, constructor arguments, and named arguments.
  • Generator diagnostics for handler methods that define state, role, chat member, or filter metadata without any route attribute.

Changed

  • Handler route candidates are pre-indexed once and reused during dispatch to reduce repeated per-update scans.
  • Generated assembly registration, explicit direct registration, and deprecated reflection assembly registration are now documented as separate contracts.
  • Explicit handler and module registration semantics are documented for manual registration without generated metadata.
  • Typed inline keyboard callback payloads now pack through [CallbackData] metadata with InlineKeyboardBuilder.Build(), while raw callback strings are preserved exactly.
  • Callback keyboard serialization ownership is explicit: custom ICallbackDataSerializer remains available for advanced callback serialization and route deserialization, while typed keyboard buttons use callback metadata directly.

Fixed

  • Filter-only handler methods are reported at build time instead of being silently ignored by generated registration.

Deprecated

  • Reflection-based assembly handler registration is deprecated in favor of generated registration or explicit direct registration.

Breaking Changes

  • InlineKeyboardBuilder.Build(ICallbackDataSerializer) was removed. Use InlineKeyboardBuilder.Build() and pass the resulting native InlineKeyboardMarkup to Telegram methods or message helpers.

NuGet

Published package version: 1.0.0-alpha.5.

Main package for long polling bots:

dotnet add package IWF.TeleFlow.Telegram.Framework.LongPolling --version 1.0.0-alpha.5 --prerelease

Validation

  • NuGet Publish workflow completed successfully on main at 20c64fe.
  • Release verification completed before publishing: restore, format, release build, strict analyzers, tests, and package validation.
  • NuGet flat-container API reports 1.0.0-alpha.5 for all 12 TeleFlow packages.