v0.4.0
What's new
⚠️ [BREAKING] Support telegram bot API v7.3 🎉⚠️ [BREAKING] Parameters and members in all the API types were sorted: first required and then optional. This change was needed because telegram started introducing not really useful parameters likebusiness_connection_id
(as well asmessage_thread_id
earlier) before all the others. This doesn't prevent from breakingbanana
compatibility on each API update, unfortunately, but greatly reduces chances that your code breaks in an unpredictable manner.- ⚡ Fix deserialization of variant-like types, i.e.
chat_boost_source_t
. Nowbanana
respects "always XXX" comment of types leading to correct distinguish between deserialization of types with identical layout (i.e.chat_boost_source_premium_t
andchat_boost_source_gift_code_t
). - ⚡ Add cpp-httplib-based agent (see docs), #20
- 🔨 Add basic unit tests in addition to examples
Docs are available here.
Commits
- f964d53: Dummy commit to trigger documentation rebuild (Smertig)
- d13da8b: Rename example -> examples (Smertig)
- 279078c: Cleanup errors building (Smertig)
- 716de5a: Add tests infra (Smertig)
- 5e0d161: Add basic serialization test (Smertig)
- bb1ea6e: Add test that serialization somehow works (Smertig)
- 8b95604: Add api::deserialize_response, add simple test (Smertig)
- b631fff: Store 'default' value for each API type (Smertig)
- 5dc2281: Preparations for refactoring: replace lambdas with named types (Smertig)
- b05117d: Support "must be" values in API. This commit fixes parsing of variants of types with similar layout. (Smertig)
- 1ecb3da: Relax tests requirements (Smertig)
- 518610c: Add comparison operators to dynamic_optional, add tests (Smertig)
- bf01005: Switch tests to C++17 (Smertig)
- 32f64c3: Add tests to CI (Smertig)
- 9325729: Refactor examples: allow setting values through env (Smertig)
- 5560fb0: Rework CI for examples (Smertig)
- fix "Too Many Requests" (Smertig)
- b1524bb: Add cpp-httplib-based agent (fix #10) (Smertig) #20
- 5b4bcb9: Add docs for cpp-httplib-based agent (Smertig) #20
- 44b1326: Fixup file name typo (Alexander Karaev) #21
- 0a02842: Add missing requirement (Alexander Karaev) #21
- move optional parameters/fields after required #21 (Alexander Karaev)
- 1bc000b: Update to Bot API 7.3 (Alexander Karaev) #21
- 9975ff8: Update supported API in docs to 7.3 (Smertig) #21
- 8fc1414: Simplify examples after reordering
send_message
parameters (Smertig) #21 - a8c6999: Increase delay in examples to avoid failures on CI (Smertig) #21
- 56a1220: Bump version -> 0.4.0 (Smertig)