Releases: Smertig/banana
Releases Β· Smertig/banana
v0.5.0
What's new
β οΈ [BREAKING] Support telegram bot API v7.4 π (why it's breaking change?)
Docs are available here.
Commits
- 8a47e7b: Run documentation update on tag push (Smertig)
- 402faa6: Dummy commit to rebuild docs (Smertig)
- 2128c3b: Minor API doc update (Smertig)
- 4790c01: Update to Bot API 7.4 (Smertig)
- b86e023: [CI] Increase delay in examples (Smertig)
- fd113d4: Update API version in docs (Smertig)
- ae27342: Add section about breaking changes to README (Smertig)
- 287344c: Bump version -> 0.5.0 (Smertig)
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)
v0.3.0
What's new
β οΈ [BREAKING] Support telegram bot API v7.1- β‘ Update documentation engine, switch theme to furo
- β‘
beast_async_monadic
agent now supports callback-base API (#18, #19, thanks @UltraCoderRU):
banana::api::send_message(agent, { .chat_id = "@username", .text = "Hello, world!" }, [](banana::expected<banana::api::message_t> msg) {
std::cout << "message sent: " << msg.value().message_id << "\n";
});
- π¨ Update API parser & improve code generation
- π¨ CMake: don't set C++17 globally
- π¨ Switch examples to use C++20 and vcpkg for dependencies
Docs are available here.
Commits
- c8a41c5: Update README (Smertig)
- 9fa4efb: Add Boost.Beast agent with callback interface. (#18) (Kirill Kirilenko) #18
- 51ba66c: Fix beast agent test name (Smertig)
- c1e4b1d: Fix docs dependencies (pin jinja version) (Smertig)
- 500761a: Bump conan.cmake version (0.16.1 -> 0.18.1) (Smertig)
- e8cf5d3: Fix read and async_read timeout in Boost.Beast agent. (#19) (Kirill Kirilenko) #19
- 374806e: Fix typo in README (Alexander)
- a06eb07: Fix conan-center URL (Smertig)
- 3794c5b: Switch all examples to C++20 and use designated initialization everywhere (Smertig)
- 92160dd: Use utf8 for FS interactions in python (Smertig)
- 0762ef2: Move type aliases closer to forward declarations, simplify dependencies chain (Smertig)
- 1edfa9a: Update to Bot API 7.1 (Smertig)
- 41c675e: Build docs only from master branch (Smertig)
- 957362e: Fix conan version in CI (Smertig)
- ec29e50: Update python on CI (Smertig)
- abd3fdf: Move /bigobj from examples to library (Smertig)
- 03d175b: Don't specify C++ standard globally (Smertig)
- 520833e: Turn examples into standalone project (Smertig)
- 6d41058: Try switching to vcpkg for examples (Smertig)
- 720f6cc: Fix python version for documentation update (Smertig)
- 54c1b39: Update supported API in docs to 7.1 (Smertig)
- 9ac3b0c: Update docs dependencies (Smertig)
- 3e3844d: Switch doc theme to furo (Smertig)
- 1ffda88: Fix missing template parameter in docs (Smertig)
- dada8a6: Add requirements.txt (Smertig)
- 697f609: Switch from custom.json to custom_v2.json (Smertig)
- 996f828: Update docs for 7.1 API (Smertig)
- da86038: Bump version -> 0.3.0 (Smertig)
v0.2.0
What's new
β οΈ [BREAKING] Renameconnector
->agent
- β‘ Add
boost::future
-based asynchronous agent (#2) (non-blocking, doesn't require C++20) - β‘ Support telegram bot API v5.3 (#13)
- β‘ Update API parser & improve code generation
- π¨ Add more reflection utils (
meta::api_traits
,api::method
) - π¨ Rework serialization stuff, use extern templates to speed up compilation
- π¨ Rework
dynamic_optional<T>
to make it more likestd::optional<T>
- π¨ Close #1 (thanks @gabrielepongelli for PR)
Docs are available here.
Commits
- 3ffd77c: Fix typo in connector docs (Smertig)
- 5bc773c: Improve generated API docs and types (Smertig)
- 66c9762: Refactor connector helpers (Smertig)
- f33ae84: Refactor
dynamic_optional
(Smertig) - 88c8981: Fixed a bug that desn't permit to send or receive a callback_game_t structure even if it must be empty as specified by the official telegram api site. (Gabriele Pongelli) #1
- b1884b5: Bump cpr version to 1.6.2 (bundled & conan examples) (Smertig)
- fad74a1: Docs: fix dependencies version (Smertig)
- 5d31c7f: Fix examples build (Smertig)
- 8d7ba1b: Move
CallbackGame
/InputFile
types directly to codegen (Smertig) - 8b2b233: Update README (Smertig)
- cdbea62: Remove unused serializer specializations (Smertig)
- 4ea6954: Make
banana::expected
default-constructible (Smertig) - e299019: Add experimental future-based connector over boost::beast (Smertig)
- 5cbbd26: Fix CI (
/bigobj
) (Smertig) - 582541a: Update API parser, update to 5.3 Tg Bot API (Smertig)
- 73afd78: Simplify
api.hpp
, addresponse_handler
instead of raw callback (Smertig) - 41cbb07: Remove deserializer from public interface (Smertig)
- b36ab21: Rework serialization (Smertig)
- 0f3da81: Fix typo (Smertig)
- 03db79c: Make API more generic, add
meta::api_traits
(Smertig) - 31baf11: Refactor file tree (Smertig)
- 79ff0bd: Small fix (Smertig)
- 5290aed: Remove
banana::api::call
from docs (Smertig) - b3c542a: Add docs for
beast_future{_monadic}
connectors (Smertig) - 00c25a9: Fix docs (Smertig)
- 3a569c7: Small fix (Smertig)
- b6b41ec: Simplify connector interface using method traits (Smertig)
- 1e79665: Simplify connector interface (empty string instead of nullopt) (Smertig)
- c8dbf05: Fix build (Smertig)
- 5178e11: BREAKING: rename
connector
->agent
(Smertig) - add2e80: Bump version -> 0.2.0 (Smertig)