Skip to content

Releases: Smertig/banana

v0.5.0

01 Jun 11:02
Compare
Choose a tag to compare

What's new

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

08 May 16:49
Compare
Choose a tag to compare

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 like business_connection_id (as well as message_thread_id earlier) before all the others. This doesn't prevent from breaking banana 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. Now banana respects "always XXX" comment of types leading to correct distinguish between deserialization of types with identical layout (i.e. chat_boost_source_premium_t and chat_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

01 May 13:17
Compare
Choose a tag to compare

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

10 Aug 07:43
Compare
Choose a tag to compare

What's new

  • ⚠️ [BREAKING] Rename connector -> 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 like std::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, add response_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)

v0.1.0

30 Mar 17:48
Compare
Choose a tag to compare

✨ First Release ✨

Docs are available here.