Release Notes - Felix - Version org.apache.felix.dependencymanager.runtime-5.0.0
================================================================================

** List of bundles being part of the release:
    * org.apache.felix.dependencymanager; version=5.0.0
    * org.apache.felix.dependencymanager.shell; version=5.0.0
    * org.apache.felix.dependencymanager.runtime; version=5.0.0
    * org.apache.felix.dependencymanager.annotation; version=6.0.0
    * org.apache.felix.dependencymanager.lambda; version=2.0.0

** Improvement
   * [FELIX-6872] - Support current JDKs (up to Java 25) and build the Dependency Manager with Maven

   The minimum Java version is now 11, which is why the bundles get a new major version.
   The exported packages are unchanged compared with the previous release.
   The bundles are still compiled against OSGi R6, so their imports have not changed.
   The Gradle build has been replaced by a Maven build, and each bundle now has its own version and tag.
   The deprecated use of AccessController in the service tracker and in the runtime has been removed.

Release Notes - Felix - Version org.apache.felix.dependencymanager-r16
======================================================================

** List of bundles being part of the release:
    * org.apache.felix.dependencymanager; version=4.6.1
    * org.apache.felix.dependencymanager.shell; version=4.0.9
    * org.apache.felix.dependencymanager.runtime; version=4.0.8
    * org.apache.felix.dependencymanager.annotation; version=5.0.2
    * org.apache.felix.dependencymanager.lambda; version=1.2.2

** Improvement
   * [FELIX-6278] - Update Dependency Manager with latest bndtools version

Release Notes - Felix - Version org.apache.felix.dependencymanager-r15
======================================================================

** List of bundles being part of the release:
    * org.apache.felix.dependencymanager; version=4.6.0
    * org.apache.felix.dependencymanager.shell; version=4.0.8
    * org.apache.felix.dependencymanager.runtime; version=4.0.7
    * org.apache.felix.dependencymanager.annotation; version=5.0.1
    * org.apache.felix.dependencymanager.lambda; version=1.2.1

Release Notes - Felix - Version org.apache.felix.dependencymanager-r13
======================================================================

** List of bundles being part of the release:
    * org.apache.felix.dependencymanager; version=4.5.0
    * org.apache.felix.dependencymanager.shell; version=4.0.7
    * org.apache.felix.dependencymanager.runtime; version=4.0.6
    * org.apache.felix.dependencymanager.annotation; version=5.0.0
    * org.apache.felix.dependencymanager.lambda; version=1.2.0


** Bug
    * [FELIX-5683] - getServiceProperties returns null instead of empty dictionary
    * [FELIX-5716] - Dead Lock in DM
    * [FELIX-5768] - DM Lambda stop callback not being called
    * [FELIX-5955] - Move changelog.txt to toplevel project dir
    * [FELIX-5956] - NPE when invoking a lifecycle runnable method from init method

** New Feature
    * [FELIX-5336] - Add support for prototype scope services in DM4


** Improvement
    * [FELIX-5967] - DM does not support java9+
    * [FELIX-5937] - Refactor DM bndtools/gradle project
    * [FELIX-5939] - DM annotations enhancements
    * [FELIX-5941] - DM APi enhancements
    * [FELIX-5957] - Check if a default implementation is used only on optional dependencies


** Task
    * [FELIX-5960] - Do not supply MD5 checksum

Release Notes - Felix - Version org.apache.felix.dependencymanager-r11
======================================================================

** List of bundles being part of the release:
    * org.apache.felix.dependencymanager; version=4.4.1
    * org.apache.felix.dependencymanager.shell; version=4.0.6
    * org.apache.felix.dependencymanager.runtime; version=4.0.5
    * org.apache.felix.dependencymanager.annotation; version=4.2.1
    * org.apache.felix.dependencymanager.lambda; version=1.1.1

** Bug
    * [FELIX-5630] - NullObject is created for a required dependency if the component is removed and added again to the dependency manager
    * [FELIX-5636] - Component of aspect service does not have any service properties anymore
    * [FELIX-5657] - DM released sources can't be rebuilt

** Improvement
    * [FELIX-5619] - MultiProperyFilterIndex memory consumption
    * [FELIX-5623] - Improve performance of ComponentImpl.getName method
    * [FELIX-5650] - Support latest version of Gogo
    * [FELIX-5653] - Simplify DM-Lambda samples
    * [FELIX-5658] - Include poms in dm artifacts

Release Notes - Felix - Version org.apache.felix.dependencymanager-r9
======================================================================

** List of bundles being part of the release:
    * org.apache.felix.dependencymanager; version=4.4.0
    * org.apache.felix.dependencymanager.shell; version=4.0.5
    * org.apache.felix.dependencymanager.runtime; version=4.0.4
    * org.apache.felix.dependencymanager.annotation; version=4.2.0
    * org.apache.felix.dependencymanager.lambda; version=1.1.0

** Bug
    * [FELIX-5236] - Single @Property annotation on a type doesn't work
    * [FELIX-5242] - Configuration updates may be missed when the component is restarting
    * [FELIX-5244] - Can't inject service using a method ref on a parent class method.
    * [FELIX-5245] - Typo in error logged when a component callback is not found.
    * [FELIX-5268] - Service not unregistered while bundle is starting
    * [FELIX-5273] - Wrong log when a callback is not found from component instance(s)
    * [FELIX-5274] - remove callback fails after manually removing dynamic dependencies
    * [FELIX-5399] - Unable to define default map or list config types
    * [FELIX-5400] - Can't override default configuration type list value using an empty list
    * [FELIX-5401] - Can't override default configuration type map value using an empty map
    * [FELIX-5402] - Factory configuration adapter ignores factory method
    * [FELIX-5411] - When you stop a component, the service references are not ungotten.
    * [FELIX-5426] - Remove callbacks aren't called for optional dependencies in a "circular" dependency scenario
    * [FELIX-5428] - Dependency events set not cleared when component is removed
    * [FELIX-5429] - Aspect swap callback sometimes not called on optional dependencies
    * [FELIX-5469] - Methodcache system size property is not used
    * [FELIX-5471] - Ensure that unbound services are always handled synchronously
    * [FELIX-5517] - @Inject annotation ignored when applied on ServiceRegistration
    * [FELIX-5519] - services are not ungotten when swapped by an aspect
    * [FELIX-5523] - required dependencies added to a started adapter (or aspect) are not injected




** Improvement
    * [FELIX-5228] - Upgrade DM With latest release of BndTools
    * [FELIX-5237] - Configurable invocation handler should use default method values
    * [FELIX-5346] - Start annotation not propagated to sub classes
    * [FELIX-5355] - Allow to use properties having dots with configuration proxies
    * [FELIX-5403] - Improve the Javadoc for org.apache.felix.dm.ComponentStateListener
    * [FELIX-5405] - Do not have org.apache.felix.dm.Logger invoke toString() of message parameters when enabled log level is not high enough 
    * [FELIX-5406] - DM lambda fluent service properties don't support dots
    * [FELIX-5407] - DM annotation plugin generates temp log files even if logging is disabled
    * [FELIX-5408] - Parallel DM should not stop components asynchronously
    * [FELIX-5467] - MultiPropertyFilterIndex is unusable when a service reference contains a lot of values for one key
    * [FELIX-5499] - Remove usage of json.org from dependency manager
    * [FELIX-5515] - Upgrade DM to OSGi R6 API
    * [FELIX-5516] - Allow to not dereference services internally
    * [FELIX-5518] - Remove all eclipse warnings in DM code
    * [FELIX-5520] - ComponentStateListener not supported in DM lambda
    * [FELIX-5521] - add more callback method signature in DM lambda service dependency callbacks
    * [FELIX-5522] - Refactor aspect service implementation
    * [FELIX-5524] - add more signatures for aspect swap callbacks
    * [FELIX-5526] - Allow to use generic custom DM dependencies when using dm lambda.
    * [FELIX-5531] - Document dependency callback signatures
    * [FELIX-5532] - Swap callback is missing in @ServiceDependency annotation



** Task
    * [FELIX-5533] - Fix a semantic versioning issue when releasing dependency manager

Release Notes - Felix - Version org.apache.felix.dependencymanager-r8
======================================================================

** Bug
    * [FELIX-5146] - Service adapters turn on autoconf even if callbacks are used
    * [FELIX-5147] - Bundle Adapter auto configures class fields even if callbacks are used
    * [FELIX-5153] - DM4 calls stop before ungetService() on ServiceFactory components
    * [FELIX-5155] - Adapter/Aspect extra service dependencies injected twice if using callback instance
    * [FELIX-5178] - Make some component parameters as volatile
    * [FELIX-5181] - Only log info/debug if dm annotation log parameter is enabled
    * [FELIX-5187] - No errog log when configuration dependency callback is not found
    * [FELIX-5188] - No error log when a factory pid adapter update callback is not found
    * [FELIX-5192] - ConfigurationDependency race condition when component is stopped
    * [FELIX-5193] - Factory Pid Adapter race condition when component is stopped
    * [FELIX-5200] - Factory configuration adapter not restarted


** New Feature
    * [FELIX-4689] - Create a more fluent syntax for the dependency manager builder


** Improvement
    * [FELIX-5126] - Build DM using Java 8
    * [FELIX-5164] - Add support for callback instance in Aspects
    * [FELIX-5177] - Support injecting configuration proxies
    * [FELIX-5180] - Support for Java8 Repeatable Properties in DM annotations.
    * [FELIX-5182] - Cleanup DM samples
    * [FELIX-5201] - Improve how components are displayed with gogo shell


Release Notes - Felix - Version org.apache.felix.dependencymanager-r6
======================================================================

** Bug
    * [FELIX-4974] - DM filter indices not enabled if the dependencymanager bundle is started first
    * [FELIX-5045] - DM Optional callbacks may sometimes be invoked before start callback
    * [FELIX-5046] - Gradle wrapper is not included in DM source release




** Improvement
    * [FELIX-4921] - Ensure binary equality of the same bundle between successive DM releases
    * [FELIX-4922] - Simplify DM changelog management 
    * [FELIX-5054] - Clean-up instance bound dependencies when component is destroyed
    * [FELIX-5055] - Upgrade DM to BndTools 3.0.0
    * [FELIX-5104] - Call a conf dependency callback Instance with an instantiated component
    * [FELIX-5113] - Remove useless wrong test in ConfigurationDependencyImpl
    * [FELIX-5114] - Schedule configuration update in Component executor synchronously

Release Notes - Felix - Version  org.apache.felix.dependencymanager-r5:
======================================================================

Release Notes - Felix - Version   org.apache.felix.dependencymanager-r5



** Bug
    * [FELIX-4907] - ConfigurationDependency calls updated(null) when component is stopped.
    * [FELIX-4910] - ComponentExecutorFactory does not allow to return null from getExecutorFor method.
    * [FELIX-4913] - DM Optional callbacks may sometimes be invoked twice




** Improvement
    * [FELIX-4876] - DM Annotations bnd plugin compatibility with Bndtools 2.4.1 / 3.0.0 versions
    * [FELIX-4877] - DM Annotations should detect service type using more method signatures.
    * [FELIX-4915] - Skip unecessary manifest headers in DM bnd file

Release Notes - Felix - Version org.apache.felix.dependencymanager-r3:
=====================================================================

** Bug
    * [FELIX-4858] - DependencyManager: missing createCopy method in timed service dependency
    * [FELIX-4869] - Callbacks not invoked for dependencies that are added after the component is initialized




** Improvement
    * [FELIX-4614] - Factory create() method should have access to the component definition
    * [FELIX-4873] - Enhance DM API to get missing and circular dependencies
    * [FELIX-4878] - Support more signatures for Dependency callbacks
    * [FELIX-4880] - Missing callback instance support for some adapters
    * [FELIX-4889] - Refactor dm shell command to use the org.apache.dm.diagnostics api


** Wish
    * [FELIX-4875] - Update DM integration test with latest ConfigAdmin


Release Notes - Felix - Version org.apache.felix.dependencymanager-r2:
=====================================================================

** Bug
    * [FELIX-4832] - ClassCastException with autoconfig Iterable fields
    * [FELIX-4833] - Revisit some javadocs in the DM annotations.

Release Notes - Felix - Version org.apache.felix.dependencymanager-r1:
======================================================================

** Bug
    * [FELIX-4304] - DependencyManager ComponentImpl should not assume all service properties are stored in a Hashtable
    * [FELIX-4394] - Race problems in DependencyManager Configuration Dependency
    * [FELIX-4588] - createCopy method ConfigurationDependency produces a malfunctioning clone
    * [FELIX-4594] - Propagation from dependencies overwrites service properties
    * [FELIX-4598] - BundleDependency can effectively track only one bundle
    * [FELIX-4602] - TemporalServiceDependency does not properly propagate RuntimeExceptions
    * [FELIX-4709] - Incorrect Named Dependencies are binded to the Service Instance


** New Feature
    * [FELIX-4426] - Allow DM to manage collections of services
    * [FELIX-4807] - New thread model for Dependency Manager


** Improvement
    * [FELIX-3914] - Log unsuccessful field injections
    * [FELIX-4158] - ComponentDeclaration should give access to component information
    * [FELIX-4667] - "top" command for the Dependency Manager Shell
    * [FELIX-4672] - Allow callbacks to third party instance for adapters
    * [FELIX-4673] - Log any error thrown when trying to create a null object.
    * [FELIX-4777] - Dynamic initialization time configuration of @ConfigurationDependency 
    * [FELIX-4805] - Deprecate DM annotation metatypes


** Wish
    * [FELIX-2706] - Support callback delegation for Configuration Dependecies
    * [FELIX-4600] - Cherrypicking of propagated properties
    * [FELIX-4676] - Add Provide-Capability for DependencyManager Runtime bundle
    * [FELIX-4680] - Add more DM ServiceDependency callback signatures
    * [FELIX-4683] - Allow to configure the DependencyManager shell scope
    * [FELIX-4684] - Replace DependencyManager Runtime "factorySet" by a cleaner API
    * [FELIX-4816] - bndtools-ify Dependency Manager
    * [FELIX-4818] - New release process for Dependency Manager

