Skip to content

Releases: TEN-framework/ten_framework

0.6.0

26 Dec 12:58
2d304e6
Compare
Choose a tag to compare

What's Changed

  • feat!: do not need to specify extension_group in graph connections by @halajohn in #452

    Previously, it was necessary to specify the "extension_group" within the graph's connections. This is no longer required. You can simply remove the "extension_group" field. It is important to note that no changes are needed under the nodes field; "extension_group" can still be specified there.

  • refactor: refine rust codes by @halajohn in #453

  • refactor: refine rust codes in tman and ten_rust by @halajohn in #455

  • refactor: refine C++ binding by @halajohn in #457

  • feat: tman modify using jaq by @sunxilin in #459

  • feat: update doc for ten agent project structures by @plutoless in #462

  • feat: enable go build script to handle symbolic link by @halajohn in #461

  • feat: add extension doc by @plutoless in #463

  • docs: updating getting started page and overview page by @cyfyifanchen in #466

  • feat: add dir-list tman designer endpoint by @halajohn in #468

  • fix: split the handling of / and /api/ of tman designer by @halajohn in #469

  • docs: project structure by @plutoless in #467

  • docs: refine project structure by @plutoless in #470

  • refactor: refine some codes by @halajohn in #471

  • docs: fixing links in TEN Agent by @cyfyifanchen in #472

  • feat!: replace throwing exception with returning error in Python by @sunxilin in #456

    This is a new concept. If send_xxx fails because a destination was not specified, it is not considered a serious error. Therefore, in such cases, the error details will be provided through the second parameter of the return value. Other errors are still considered serious and will continue to raise exceptions.

  • docs: update dev environment doc by @plutoless in #473

  • fix: return None type in return_xxx async api in Python by @sunxilin in #475

Full Changelog: 0.5.3...0.6.0

0.5.3

22 Dec 10:49
72ece97
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.5.2...0.5.3

0.5.2

18 Dec 05:55
e6927c5
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.5.1...0.5.2

0.5.1

13 Dec 02:06
f395b74
Compare
Choose a tag to compare

What's Changed

  • chore: organize the internal APIs of the C++ binding to ensure they are all private by @halajohn in #368

  • feat: refine remote registry operation in tman by @halajohn in #370

  • chore: refine gtest dependencies of default_extension_cpp by @halajohn in #371

  • docs: updating LF issue on windows by @cyfyifanchen in #373

  • feat: add googletest system package by @halajohn in #372

  • feat: clean up the pytest ci flow so that GitHub can launch pytest case by @sunxilin in #365

  • feat: detect predefined_graphs with the same name by @halajohn in #375

  • feat: enable ten_runtime pytest on windows by @halajohn in #376

  • feat: enable go/python binding on mac/win by @halajohn in #378

  • feat: enable cython test cases by @sunxilin in #381

  • feat: add napi-header to third-party packages by @sunxilin in #382

  • docs: wording change by @cyfyifanchen in #383

  • feat: enable python on mac by @halajohn in #379

  • feat: remove memory checking disabling in python integration test by @halajohn in #384

  • feat: initial commit for tman frontend by @halajohn in #386

  • docs: updating wording and getting rid of graph designer section by @cyfyifanchen in #387

  • docs: updating overview of ten agent by @cyfyifanchen in #388

  • docs: removing missing code and updating code title by @cyfyifanchen in #389

  • feat: add more tman frontend logic by @halajohn in #392

  • fix: bugfix for send_xxx in extension_tester by @sunxilin in #393

  • refactor!: replace to/from_json with get/set_property_to/from_json by @halajohn in #394

    Streamline the API and prepare for future support of getting/setting properties in object/array types.

  • feat: provide a way to set property during testing by @sunxilin in #395

Full Changelog: 0.5.0...0.5.1

0.5.0

04 Dec 02:33
83b8d96
Compare
Choose a tag to compare

What's Changed

  • feat!: change the return value of python async send_cmd to async generator by @halajohn in #294

    Introduces support for multiple results. There are two scenarios where multiple results may occur:

    1. A single destination extension responds with streaming results to the source extension.
    2. Multiple destination extensions respond with results to the source extension. Even if each destination extension only replies with a single result, it is considered multiple results from the perspective of the source extension.
  • fix: remove on_deinit_done by @wangyoucao577 in #300

  • feat!: add send_cmd_ex to distinguish send_cmd by @halajohn in #301

    Refines the send_cmd behavior to maintain its most commonly used functionality: sending a command and waiting for a single result.

    For advanced use cases requiring more control, such as handling multiple results, the new send_cmd_ex method should be used. This addition ensures better flexibility while keeping the default behavior simple and intuitive.

  • feat!: remove send_json by @halajohn in #307

    Remove the send_json API, as its functionality can be fully replaced by using the send_cmd method in combination with the to_json method of the message object. This simplifies the API surface while retaining the same capabilities.

  • chore!: remove create_from_json by @halajohn in #311, #314, #315

    Removes the create_from_json API, as its functionality can be fully replaced by using the message constructor in combination with the from_json method. This streamlines the API by leveraging existing capabilities within the message class.

  • feat!: remove _ten field from the output of to_json by @halajohn in #316, #318

    Reduces the visibility and accessibility of the _ten namespace, which is intended for internal use only. By minimizing external exposure to these fields, we mitigate the risk of internal structures being inadvertently relied upon by external code. All fields under the _ten namespace now have corresponding explicit APIs to serve as their replacements, ensuring clear and safe access points.

  • feat: update setting breakpoint tutorials by @plutoless in #317

  • feat!: addons only be loaded from the file system if they are explicitly specified in the app's manifest.json by @halajohn in #320, #324, #343

    Updates the addon loading behavior to improve efficiency and control. Addons will now only be loaded from the file system if they are explicitly specified in the app's manifest.json file. This ensures that only necessary addons are loaded, reducing overhead and potential conflicts.

  • fix: fix memory leak of the using of dlerror by @halajohn in #328

  • docs: adding ten agent faqs by @cyfyifanchen in #331

  • docs: updating make command to task command by @cyfyifanchen in #332

  • feat: set thread name for debugging purpose by @halajohn in #329

  • chore: upgrade versions by @sunxilin in #333

  • docs: updating sections by @cyfyifanchen in #335

  • chore!: remove extension_group relevant interface API by @halajohn in #334

    Refines the external API by hiding or removing APIs related to extension_group, as it is currently intended for internal use only. This change simplifies the external API surface and reduces unnecessary complexity for external users.

  • feat: expand the implementation of extension tester to allow it to be used for testing the graph by @sunxilin in #296

  • fix: catch exception in async python extensions by @sunxilin in #340

  • feat!: remove C++ get/set_property_async API by @halajohn in #338

    Refines the ten_env API by removing all asynchronous interface APIs for get_property and set_property. These methods now have clearly defined synchronous semantics and behavior. The asynchronous implementations will remain internal, enabling the external synchronous APIs to leverage them for improved performance and streamlined usage. This change ensures a more efficient and consistent API experience.

  • feat: add uri type for device-side app by @sunxilin in #339

  • feat!: provide error_handler in send_data/A/Vframe by @sunxilin in #341, #344, #358, #355

    Updates the send_data, send_audio_frame, and send_video_frame APIs to better reflect their inherently asynchronous nature. The original API design did not adequately convey their asynchronous behavior. To address this, asynchronous callbacks have been added, making the asynchronous behavior explicit and improving the clarity and usability of these APIs.

  • feat!: load go addons through registration function by @halajohn in #346

  • chore: refine c++ addon relevant codes by @halajohn in #347

  • feat!: finalize new addon registration flow for C++/go/python by @halajohn in #348, #342

    Refactors the addon registration process from a single-phase approach to a two-phase approach. Most of the original registration steps are now concentrated in the second phase, which is actively invoked by the TEN runtime. This change allows addons to perform their registration within the execution context of the TEN runtime, giving the TEN runtime greater control during the addon registration process.

  • feat: enhance error handling for unset env variables in property.json by @halajohn in #351

  • fix: read float type property, but int value from json by @halajohn in #350

  • feat: refine behavior when get property with incorrect type by @halajohn in #353

  • fix!: remove is_cmd_connected api by @sunxilin in #356

  • chore: remove more _ten namespace directly accessing by @halajohn in #362, #363

  • fix: make return_xxx truly async in python by @sunxilin in #361

  • chore: refine log API by @halajohn in #364

  • feat: add signal support on windows by @halajohn in #366

Full Changelog: 0.4.2...0.5.0

0.4.2

19 Nov 09:18
8a69f98
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.4.1...0.4.2

0.4.1

14 Nov 02:54
304b32b
Compare
Choose a tag to compare

What's Changed

  • fix: increase the retry interval time & delay http request in test cases by @sunxilin in #263
  • chore: 1. remote_t must be created with connection_t 2. add more test… by @sunxilin in #259
  • fix: memory leak if the value is an empty string by @leoadonia in #262
  • feat: ensure some ten_env call timing by @halajohn in #264
  • fix: bugfix for starting cross-app predefined graph by @sunxilin in #257
  • chore: rename cb functions in protocol by @sunxilin in #266
  • fix: add codes to address this issue. by @halajohn in #272

Full Changelog: 0.4.0...0.4.1

0.4.0

11 Nov 14:26
0188c96
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.3.1...0.4.0

0.3.1

25 Oct 09:12
fd2427b
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.3.0...0.3.1

0.3.0

18 Oct 02:48
888a918
Compare
Choose a tag to compare

Highlight Features 🎉🎉🎉

  • built-in logging mechanism to unify extensions' logs
  • standalone testing framework so that extensions can be tested independently without an app
  • able to create pure python async extension
  • supports to build and run on linux/arm64

Breaking Changes

  • added on_configure and refined addon's lifecycle flow
  • moved built-in default_extension_group into ten_runtime, no need to install separately anymore
  • restrict extension, group, graph name pattern
  • restrict addon name to valid programming variable name
  • distinguish between graph name and graph id
  • renamed SetFinal for cmd result in go

What's Changed

Read more