Skip to content

Releases: SeadexGmbH/yasmine

1.5.3 b875

14 Aug 14:46
fd54269
Compare
Choose a tag to compare

The 26th release of yasmine (Release date: August 14, 2018).

Fixed

  • added includes for the case when logging is disabled via SX_NO_LOGGING=NO
  • renamed Y_ASSERT to SX_ASSERT in region_impl.cpp
  • added essentials/base.hpp include in yasmine.hpp

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html

1.5.2 b870

23 Jul 14:39
c037350
Compare
Choose a tag to compare

The 25th release of yasmine (Release date: July 23, 2018).

Fixed

  • backward compatibility includes
  • CMake installation target refactored

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html

1.5.1 b866

16 May 14:32
e7aaf87
Compare
Choose a tag to compare

The 24th release of yasmine (Release date: May 16, 2018).

Changed

  • removed unnecessary virtual inheritances

Fixed

  • added new line at the end of some files (resolves warnings for clang 5.0.1)
  • bug in CMake file with checking the same condition (addSpecificFlags, checking CPPVERSION)
  • missing optimization flag for release build with gcc and clang (addSpecificFlags.cmake)

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html

1.5.0 b850

18 Dec 14:20
1a8d96d
Compare
Choose a tag to compare

The 23rd release of yasmine (Release date: December 18, 2017).

Added

  • (C++03) BOOST_BIND_OVER_9 - removes the limit of 7 methods/free functions as parameters for creating behaviors/guards using the assembly macros. The is caused by boost::bind's limitation to 9 arguments.
  • (C++11) Y_BEHAVIOR_FREE_ACTION macro for using a free function as a behavior
  • (C++11) Y_GUARD_FREE_ACTION macro for using a free function as guard
  • yasmine_model:
    • new methods to interact with the elements (e.g. get_child, set_parent, ...)
    • new methods to interact with the state machine (e.g. remove_event, get_event, remove_transition, get_transition, ...)
    • rapidjson_document.hpp as a wrapper for rapidjson/document.h and rapidjson/prettywriter.h
    • delete_visitor for deleting elements
    • has_error_event to simple state model
    • add_deferred_event and remove_deferred_event to state model
    • constuctor to easily construct an async simple state model
    • setters in transition_model for behavior, guard, triggers, target, source, and kind
    • methods to get the element that deferes an event and to check if an element deferes an event
    • list of external vertices

Changed

  • Y_INVALID_EVENT_CREATION_REQUEST_HANDLE is now „external“
  • use essentials and hermes as libraries
  • CMake: Adapt to use essentials and hermes as libraries. Applies to examples as well.
  • yasmine_model:
    • internally use rapidjson_document.hpp instead of document.h
    • event_model is now a class and has getters and setters for its properties
    • use essentials as a library
    • CMake: use external CMakeHelpers files
  • libygen:
    • use essentials as library
    • CMake: use external CMakeHelpers files
    • CMake: refactoring of build scripts
  • ygen:
    • CMake: use external CMakeHelpers files
    • CMake: refactoring of build scripts

Fixed

  • bug with use of old method signature for macros Y_BEHAVIOR_ACTION and Y_GUARD_ACTION
  • yasmine_model:
    • read/write error event from/to model file
    • read/write region from/to model file: 'pseudostates' list is read for backward compatibility. Just 'vertices' is written.

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html

1.4.3 b810

10 Nov 10:36
5cf17b8
Compare
Choose a tag to compare

The 22nd release of yasmine (Release date: November 10, 2017).

Changed

  • Y_USE_DEPRECATED to make deprecated features available
  • essentials: SX_UNUSED_VARIABLE macro for suppressing warnings for unreferenced variable.
  • split assembly header in two files: one for C++11 and up and one for C++03
  • caller.hpp needs to become behavior_caller.hpp
  • caller_adapter.hpp needs to become adapter.hpp
  • major improvements for C++03 support
  • create_behavior_function and create_guard_function (internally used in assembly.hpp) are now in namespace sxy
  • fixed bug with missing get_error_event implementation in composite_state_impl
  • fixed bug with missing dereference operator in behavior_caller and guard_caller
  • yasmine_model:
    • removed move operation from return where a local created unique pointer is returned

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html

1.4.2 b790

26 Oct 14:36
Compare
Choose a tag to compare

The 21st release of yasmine (Release date: October 16, 2017).

Changed

  • CMake: changes of RapidJSON include path handling
  • fix: enqueuing of an event failed during the start of an async state machine
  • yasmine_model:
    • rapidjson_document header as a wrapper for RapidJSON usage

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html

1.4.1 b770

16 Oct 15:34
Compare
Choose a tag to compare

The 20th release of yasmine (Release date: October 16, 2017).

Changed

  • CMake files refactoring. Improvements to make cross compiling easier.
  • pragma warning just for Micsoft Visual Studio compiler. Removed -Wunknown-pragmas from CMake file.
  • fix in sxprintf: added missing boost namespace
  • fix: using SX_UNUSED_PARAMETER macro in return of function in assembly.hpp
  • yasmine_model:
    • fix: include path of prettywriter header

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html

1.4.0 b751

21 Sep 11:59
Compare
Choose a tag to compare

The 19th release of yasmine (Release date: September 21, 2017).

Changed

  • added support for Visual Studio 2017 builds
  • complex states (root state of the state machine, simple states and composite states) now have a method called add_deferred_event. This method adds an event ID to the list of the deferred events IDs. This method is not thread-safe a must only be used before starting the state machine
  • On start of the state machine, the root state becomes active and on stop it becomes inactive.
  • fix bug with ::std::toupper and ::std::tolower (reported for VS2017 compiler, version 15.3.4)
  • get_name is now a public method of the state_machine class

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html

1.3.3 b722

22 Aug 12:23
Compare
Choose a tag to compare

The 18th release of yasmine (Release date: August 22, 2017).

Changed

  • CMake: setting rapidJSON path by setting the SX_RAPIDJSON variable

Fixed

  • SX_GCC_EXPAND_TEMPLATE_PARAM_PACK_BUG: workaround for bug in GCC with expansion of template parameter pack that appears in a lambda-expression (reported for GCC 4.8.4)
  • bug when passing template class member function to Y_BEHAVIOR_METHOD2 and Y_GUARD_METHOD2 (reported for GCC 5.0.4)

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html

1.3.2 b716

18 Aug 06:21
Compare
Choose a tag to compare

The 17th release of yasmine (Release date: August 18, 2017).

Changed

  • changed const_iterator to iterator in methods vertex_impl::add_outgoing_transition and
    vertex_impl::find_first_transition_without_guard for compilers with incomplete C++11 support
  • fixed incorrect use of logging macro when compiling C++03 code

Changelog can be found on http://yasmine.seadex.de/Changelog.html
Documentation can be found on http://yasmine.seadex.de/libyasmine_(documentation).html