All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Unreleased v4.0.0 (2018-XX-XX)
v3.3.0 (2018-02-20)
- Fix seg faults when using default constructed LDAPFilter #251
v3.2.0 (2017-10-30)
- Code coverage metrics. #219
- GTest integration. #200
- Support boolean properties in LDAP filter creation. #224
- Unicode support. #245
- Re-enable single-threaded build configuration. #239
- Fix a race condition when getting and ungetting a service. #202
- Make reading the current working directory thread-safe. #209
- Guard against recursive service factory calls. #213
- Fix LDAP filter match logic to properly handle keys starting with the same sub-string. #227
- Fix seg fault when using a default constructed LDAPFilter instance. #232
- Several fixes with respect to error code handling. #238
- IsConvertibleTo method doesn't check for validity of member. #240
v3.1.0 (2017-06-01)
- Improved BadAnyCastException message. #181
- Support installing bundles that do not have .DLL/.so/.dylib file extensions. #205
The following BundleContext member functions:
RemoveBundleListener
RemoveFrameworkListener
RemoveServiceListener
And the variants of
AddBundleListener
AddFrameworkListener
,AddServiceListener
that take member functions.
The free functions:
ServiceListenerMemberFunctor
BundleListenerMemberFunctor
BindFrameworkListenerToFunctor
The functions
ShrinkableVector::operator[std::size_t]
ShrinkableMap::operator[const Key&]
- Cannot add more than one listener if its expressed as a lambda. #95
- Removing Listeners does not work well #83
- Crash when trying to acquire bundle context #172
- Fix for
unsafe_any_cast
#198 - Stopping a framework while bundle threads are still running may deadlock #210
v3.0.0 (2017-02-08)
See the migration guide for moving from a 2.x release to 3.x.
- Added MinGW-w64 to the continuous integration matrix #168
- Include major version number in library names and install dirs #144
- Integrated coverity scan reports #16
- Added OS X to the continuous integration matrix #136
- Building for Android is now supported #106
- Enhanced the project structure to support sub-projects #14
- The bundle life-cycle now supports all states as described by OSGi and is controllable by the user #25
- Added support for framework listeners and improved logging #40
- Implemented framework properties #42
- Static bundles embedded into an executable are now auto-installed #109
- LDAP queries can now be run against bundle meta-data #53
- Resources from bundles can now be accessed without loading their shared library #15
- Support last modified time for embedded resources #13
- Fix up bundle property and manifest header handling #135
- Introduced C++11 features #35
- Re-organize header files #43, #67
- Improved memory management for framework objects and services #38
- Removed static globals #31
- Switched to using OSGi nomenclature in class names and functions #46
- Improved static bundle support #21
- The resource compiler was ported to C++ and gained improved command line options #55
- Changed System Bundle ID to
0
#45 - Output exception details (if available) for troubleshooting #27
- Using the
US_DECLARE_SERVICE_INTERFACE
macro is now optional #24 - The
Any::ToString()
function now outputs JSON formatted text #12
- The autoload feature was removed from the framework #75
- Headers with
_p.h
suffix do not get resolved in Xcode for automatic-tracking of counterparts #93 usUtils.cpp
- Crash can occur ifFormatMessage(...)
fails #33- Using
US_DECLARE_SERVICE_INTERFACE
with Qt does not work #19 - Fixed documentation of public headers. #165
v2.1.1 (2014-01-22)
- Resource compiler not found error #11
v2.1.0 (2014-01-11)
- Use the version number from CMakeLists.txt in the manifest file #10
- Build fails on Mac OS Mavericks with 10.9 SDK #7
- Comparison of service listener objects is buggy on VS 2008 #9
- Service listener memory leak #8
v2.0.0 (2013-12-23)
Major release with backwards incompatible changes. See the migration guide for a detailed list of changes.
- Removed the base class requirement for service objects
- Improved compile time type checking when working with the service registry
- Added a new service factory class for creating multiple service instances based on RFC 195 Service Scopes
- Added ModuleFindHook and ModuleEventHook classes
- Added Service Hooks support
- Added the utility class
us::LDAPProp
for creating LDAP filter strings fluently - Added support for getting file locations for writing persistent data
- Removed the output stream operator for
us::Any
US_ABI_LOCAL
and symbol visibility for gcc < 4 #6
v1.0.0 (2013-07-18)
Initial release.