Version 5.6.2
------------

  fix
   - understand POST data encoding
   - api name resolution of RPC specification on server

Version 5.6.1
-------------

  feature
   - add bypass of cynagora checks if cynagorad not started
     and file /etc/afb-perm-bypass exists.

  fix
   - fix scheduling start (enqued jobs are really started
     when starting main thead)

Version 5.6.0
-------------

  change
   - supervision on newer namespace
   - allow to remove locale-root (WITH_LOCALE_ROOT=OFF)
   - adapt test to latest cynagorad

Version 5.5.2
-------------

  feature
   - new afb_type: afb_type_predefined_UUID

  change
   - use urn:redpesk:token:valid
     (instead of urn:AGL:token:valid)
   - use urn:redpesk:permission:*:partner:on-behalf-credentials
     (instead of urn:AGL:permission:*:partner:on-behalf-credentials)

  fix
   - improved detection of hostname from URI

Version 5.5.1
-------------

  feature
   - automatic reconnection of RPCs
   - lazy connection of RPC
   - fix memory leak of RPC on WebSockets
   - Allows multiple API names for RPC
   - send version offer lazyly
   - Compatibility between GNUTLS and MBEDTLS

  fix
   - compilation with WITHOUT_FILESYSTEM

Version 5.5.0
-------------

  feature
   - added function afb_perm_check_async
   - added ability to use an api for permission checking

Version 5.4.3
-------------

  fix
   - RPC blocking (#8016)

Version 5.4.2
-------------

  fix
   - correct dependency to librp-utils-core >= 0.2.3

  change
   - use system trust chain if no trust chain is already set
   - load trust chain file in order to detect encoding PEM or DER

Version 5.4.1
-------------

  feature
   - add 'host=' parameter in RPC URLs for setting or removing
     host name to check in TLS

  fix
   - support of mTLS when mbedTLS is the server
   - memory overflow when broadcasting events

  change
   - enforce afb-ev-mgr protection for concurrency

Version 5.4.0
-------------

  feature
   - support of LLEXT in Zephyr
   - support of Mbedtls for RPC
   - support of TLS or mTLS for RPC
   - allow global setting of TLS material

  fix
   - correctly handle NULL listener in afb-stub-rpc
   - handle correctly concurrent accesses in afb-stub-rpc
   - refactor of afb-thread

  change
   - remove of obsolete function afb_sched_call (use afb_sig_monitor_run)

Version 5.3.10
--------------

  fix
   - fix includes of libafb-config.h in libafbcli

Version 5.3.9
-------------

  fix
   - fix include of afb-vcomm

Version 5.3.8
-------------

  change
   - make timerfd as optional
   - allows minimal implementation of locale-root
   - allows use of poll instead of epoll in event loop


  feature
   - compatibility to Zephyr OS

  fix
   - bug #7594
   - big RPC buffers
   - TLS for RPC

Version 5.3.7
-------------

  change
   - RPC transmit type's name of not predefined types
   - RPC handle correctly reception of incomplete buffers

Version 5.3.6
-------------

  change
   - serialize pushing events

Version 5.3.5
-------------

  change
   - use splitted librp-utils:
     librp-utils-core, librp-utils-file, librp-utils-json-c

Version 5.3.4
-------------

  fixes
   - improve conversion from stringz to json and json-c

  change
   - make libmagic optional

Version 5.3.3
-------------

  change
   - propagate maximum payload length of websockets

Version 5.3.2
-------------

  fixes
   - release event manager when sync_cb must wait

Version 5.3.1
-------------

  fixes
   - fix bug in initialisation of rpc sockets

Version 5.3.0
-------------

  change
   - full handling of SOCKSPEC query parameters

  features
   - RPC over mTLS

Version 5.2.1
-------------

  fixes
   - ensure that jobs posted with a delay are correctly delayed

Version 5.2.0
-------------

  major versions of libafb and libafbcli is now 6 because of broken API

  fixes
   - fix memory crash when broadcasting many events
   - fix unsubscribing with RPC transport
   - fix aligning in RPC encoder
   - enforce chunk size of RPC v3 to be multiple of 8 (padding)
   - subset order of apiset for auto apis
   - force release of evmgr at thread end
   - fix potential deadlock when WITH_JOB_NOT_MONITORED not null
   - fix 100% CPU when 1 thread only required

  change
   - MAJOR change in event manager:
     - create on job per event listener instead of one job iterating on listeners
     - use listener's group for jobs
   - removed afb-wsapi files (from libafb and libafbcli)
   - use request group for reply's jobs

  features
   - added jobs with 2 arguments
   - management of group of request for replying job
   - management of group of listener for event jobs

Version 5.1.0
-------------

  fixes
   - unsubscription of wsapi and rpcapi server side (the unsubscription had
     no effect)

  change
   - remove references to json-locator
   - removed functions 'afb_sched_call_sync' and 'afb_sched_call_job_sync'
   - deprecation of function 'afb_sched_enter' replaced by 'afb_sched_sync'

Version 5.0.13
--------------

  fixes
   - compiling without systemd
   - explicit initialisation of event loop
   - releasing of the event loop as soon as possible
   - improve holding the event loop by threads
   - eventually start a thread for holding the event loop
     (but limited by the count of threads)

  features
   - adaptation to musl C library

  change
   - minor improvement of the signature of callback afb_threads_job_getter_t
   - management of event loop moved from afb-sched to afb-ev-mgr
   - improvements of afb-ev-mgr

Version 5.0.12
--------------

  features
   - Provide merged configuration object to apis

  fixes
   - Fix autostart of required API when auto-api is used
   - Fix URL in pc files

Version 5.0.11
--------------

  features
   - Upgrading to RPC v3 (#6052)
   - Upgrading to RPC v3 / WebSocket (#6052)
   - Rewrite of afb-api-rpc for using afb-wrap-rpc
   - Add support of ev_timer_modify_period (#6108)

  fixes
   - Sequence events on their identity not globally (#6110)
   - Missing API message (#6105)
   - Default anonymous root API names (#6106, #6111)
   - Tracing of requests, calls, events (#6107)
   - Report unsupported bindings (#6115)
   - Long pause time on corrupted heap backtrace

  change
   - Websockets now daughters of upgrade
   - Removed function afb_hswitch_websocket_switch
     replaced by afb_hswitch_upgrade
   - Removed DBUS transparency of API
   - Removed support of RPCv2
   - Manage timers in nanoseconds internally

  minor/details
   - Avoid a second call to sigsetjmp on signal
   - Fix error report of ws-client on TCP

Version 5.0.10
--------------

  fixes
   - Interlock of event (push -> unsubscribe) removed by copying on stack

  features
   - RPC v3 calls can tell the API name

Version 5.0.9
-------------

  features
   - calls and subcalls accept NULL callback (for later optimization)
   - automatic remove of sessions without cookie value

  minor/details
   - remove lang field in afb-session

Version 5.0.8
-------------

  features
   - Implement optionnal masking for websockets

  fixes
   - Dont close extension on exit
   - The event monitor/disconnected is now hookable

Version 5.0.7
-------------

  features
   - Allows pasing NULL to 'afb_session_cookie_get'
   - Optimize dynamic verb allocation and search
   - Implement afb_api_unshare_session for bindings >= 4.1.4
   - Allow extensions to add websocket protocol
   - Implement connection to websocket servers

  fixes
   - Check epoll_fd returned by libmicrohttpd
   - Forbids verbs of same name
   - Detect allocation error of verbs

Version 5.0.6
-------------

  fixes
   - unreferencing API for destroying it

Version 5.0.5
-------------

  fixes
   - data translation strinz -> json-c when NULL

Version 5.0.4
-------------

  fixes
   - interruption of call-sync

Version 5.0.3
-------------

  fixes
   - calling call-sync functions in timers
   - lock of event loop when posting jobs
   - length of abstract unix sockets

Version 5.0.2
-------------

  fixes
   - coherent callbacks for timers (now unsigned decount)

  minor/details
   - improved include order

Version 5.0.1
-------------

  features
   - implementation of afb_job_abort
   - added management of common session UUID
   - allows creation of events in pre-init state
   - implement service exiting and afb_ctlid_Exiting
   - reworked conversion of data:
      - stringz -> json_c : try to interpret json string first
      - json -> json_c : return an error if parse failed

  fixes
   - race in awaiting evmgr
   - afb_sched_mode behaviour

  minor/details
   - analysis tools improvements

Version 5.0.0
-------------

  features
   - relies on rp-libutils
   - integration of RPC WSAPI version 3
   - tuning of RPC version at build

  fixes
   - issue in includes
   - fix deadlock in querying cynagora

  minor/details
   - schedule the callback of cynagora permission
   - numeric error code to reply "disconnected"

Version 4.1.0
-------------

  features
   - depends of afb-binding >= 4.1.0
   - full rewrite of the scheduler
   - add a module to handle pool of threads
   - improved version of afb-extend interface (less requirement on json objects)
   - add function for dequeuing multiple jobs
   - add a wakeup time when preparing event loop
   - add functions to get verbs of api v4
   - implement get/set of userdata for requests v4
   - allows hooking of interface queries
   - deliver a static library for libafbcli
   - allow to disable stack dump
   - provide a linker version script for extensions
   - new function for extensions, AfbExtensionGetOptionsV1

  fixes
   - fix correct apiset (callset) for required features
   - fix the macros LIBAFB_BEFORE_VERSION and LIBAFB_AFTER_VERSION
   - fix issue on timer management
   - fix deprecated hooks of LIBC
   - fix definitions in afb-v4.h
   - fix expiration of afb_sched_enter and change its logic
   - fix timer used for expiration to be REALTIME_CLOCK
   - fix compiling with WITH_AFB_CALL_SYNC=OFF
   - fix timer reference (critical)
   - fix encoding of data copy
   - fix size indicator of AFBRPCv2
   - fix double close on initialisation error
   - fix configuration of extensions

  minor/details
   - fix declarations in afb-api-v4 and improved API
   - report SIGALARM instead of SIGVTALARM that is specific
   - enhance timer management
   - improve network latency by using TCP_NODELAY
   - remove use of dup for websockets on libmicrohttpd

Version 4.0.4
-------------

  features
   - REWORKED SCHEDULER
   - add new RPC support
   - rework of the afb-api for RPC
   - returning HTTP binary blobs from bindings
   - add support of specialized interface
   - add pseudo socket protocol 'char:' for being client of serial link

  fixes
   - json-locator fixes
   - fix overflow detection of afb-type
   - fix leak in afb-hreq
   - fix automatic pong response of WS
   - avoid concurrent calls to MHD_run
   - fix compatibility to old json-c
   - enforce use of default credentials
   - fix bug in afb-trace

  minors/details
   - improvements of afb-wsj1
   - cleaning afb-stub-ws
   - improve type conversion

Version 4.0.3
-------------

  features
   - add function handling event within api v4 (for extensions)

  fixes
   - add release version in pc files
   - Fix POST/HTTP requests

Version 4.0.2
-------------

  features
    - add reply code if available in wsj1
    - Enforce use of strings to define extensions in macro AFB_EXTENSION
    - Check revision of the version of interface v4
    - support of byte array type: afb_type_predefined_bytearray
    - Remove cookie's attribute 'Secure'
    - improve error handling compatibility with v4
    - Allow providing more than one converter for a given couple of types
    - implement conversion of parameters of requests

  fixes
    - update timeout of sessions on requests
    - early setting of event listeners, needed for concurrency

  minors/details
    - saved bytes in http keys for data
    - avoid allocation for setting cookies
    - emit error on second HTTP reply trial
    - improve generation of json string in afb-json-legacy
    - always provide predefined basic types
    - fix spurious warning coming with gcc 11.1
    - extract wrap-base64 from wrap-json
    - allow same address in main callbacks (afbBindingExport.mainctl == afbBindingEntry)

Version 4.0.0 or 4.0.1
----------------------

this is the base version

