| ⇢ | A | InlineKeyboard added | |
| ⇢ | A | Keyboard added | |
| C | ↗ | B | SendtochannelCommand improved |
| A | ↛ | ForceReply removed | |
| A | ↛ | ReplyKeyboardHide removed | |
| A | ↛ | InlineKeyboardMarkup removed | |
| A | ↛ | ReplyKeyboardMarkup removed |
| ⇢ | D | Keyboard::createFromParams() added | |
| ⇢ | B | InlineKeyboard::validate() added | |
| ⇢ | B | InlineKeyboardButton::couldBe() added | |
| ⇢ | B | Keyboard::validate() added | |
| ⇢ | A | KeyboardButton::couldBe() added | |
| ⇢ | A | InlineKeyboard::__construct() added | |
| ⇢ | A | Keyboard::__construct() added | |
| ⇢ | A | Keyboard::addRow() added | |
| ⇢ | A | KeyboardButton::validate() added | |
| ⇢ | A | InlineKeyboardButton::__call() added | |
| ⋮ | view more | ||
| B | ↗ | A | KeyboardButton::__construct() improved |
| B | ↘ | C | Entity::__call() got worse |
| C | ↛ | ReplyKeyboardMarkup::__construct() removed | |
| B | ↛ | InlineKeyboardMarkup::__construct() removed | |
| A | ↛ | ForceReply::__construct() removed | |
| A | ↛ | ReplyKeyboardHide::__construct() removed | |
| A | ↛ | InlineEntity::__call() removed | |