Skip to content

release: v1.0.2#4

Merged
Deskri merged 19 commits intomainfrom
dev
Apr 16, 2026
Merged

release: v1.0.2#4
Deskri merged 19 commits intomainfrom
dev

Conversation

@Deskri
Copy link
Copy Markdown
Owner

@Deskri Deskri commented Apr 16, 2026

No description provided.

Deskri and others added 19 commits February 19, 2026 23:32
(cherry picked from commit 0b563a3e2d0fb7cc5d6c371a237a424d95825c0a)
(cherry picked from commit d62a02073f75e8507d571347f39735b795915c37)
(cherry picked from commit e3b9bba727ff2616257766f5dc1bce764b562c00)
(cherry picked from commit 97b457ab009ba4dc68154f4135fe0820a7a72a36)
Register IBotClient via AddMaxBotClient() extension on IServiceCollection.
Uses IHttpClientFactory and conditional compilation (#if NET10_0_OR_GREATER).
DI packages referenced only for net10.0 target.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Publishes package to NuGet on every push to main.
Requires NUGET_API_KEY secret in repository settings.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Run xUnit tests on net8.0 before building and packing.
Publish is blocked if tests fail.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- build-and-test runs on push to main and dev
- publish runs only on main, requires build-and-test to pass
- publish uses 'main' environment for NUGET_API_KEY secret

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… polling

Separate HttpClient with Timeout.InfiniteTimeSpan prevents TaskCanceledException
during long polling when server holds connection up to 90 seconds.

- Add internal IBotClientInternal interface with PollingSendRequest (explicit impl)
- Add PollingProcessApi/GetUpdatesFromPolling parallel to existing ProcessApi/GetUpdates
- Lazy-create polling HttpClient on first use
- Implement IDisposable with _ownsHttpClient tracking for safe cleanup

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: различаем отмену пользователя и HTTP-таймаут в polling loop

* fix: защита errorHandler от выброса исключений в polling loop

* fix: добавлен backoff (5 сек) между ошибками в polling loop

* fix: установлен бесконечный таймаут HttpClient для long polling

* fix: StartReceiving возвращает Task вместо void

* fix: не переопределяем глобальный Timeout
@Deskri Deskri merged commit f5af8ee into main Apr 16, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants