Changes in 1.9.0 ---------------- ** Improvement * [FELIX-5288] - Implement RFC 227 (OSGi R7 Update) * [FELIX-5289] - Alias PID Handling of Factory Configurations (OSGi R7) * [FELIX-5290] - Locking Configuration Records (OSGi R7) * [FELIX-5291] - Improve Configuration Updates (OSGi R7) * [FELIX-5292] - Capabilities (OSGi R7) * [FELIX-5293] - Improved ConfigurationPlugin Support (OSGi R7) * [FELIX-5468] - Refactor persistence handling * [FELIX-5695] - Use Java 7 as base version ** Bug * [FELIX-5745] - Empty collections should be allowed as property value Changes from 1.8.14 to 1.8.16 ----------------------------- ** Bug * [FELIX-5669] : Registering a PersistenceManager causes duplicate caches. Changes from 1.8.12 to 1.8.14 ----------------------------- ** Bug * [FELIX-5443] - Frequent Changes cause UpdateThread to ConcurrentModificationException * [FELIX-5435] - Service does not get loaded with updated properties that have been modified on file system after felix framework restart Changes from 1.8.10 to 1.8.12 ----------------------------- ** Improvement * [FELIX-5380] - Reduce quite useless log verbosity * [FELIX-5366] - Additional Unit Tests for ConfigurationHandler ** Bug * [FELIX-5368] - ConfigurationManager ignores NotCachablePersistenceManager marker interface * [FELIX-5385] - ConfigAdmin uses wrong security when calling ManagedServices Changes from 1.8.8 to 1.8.10 ---------------------------- ** Improvement * [FELIX-5088] - CaseSensitiveDictionary should implement equals() * [FELIX-5211] - Use provide/require capabilities instead of obsolete and meaningless import-export service headers ** Bug * [FELIX-5301] - ConfigurationPlugin support is not spec compliant Changes from 1.8.6 to 1.8.8 --------------------------- ** Improvement * [FELIX-4917] - FilePersistenceManager doesn't support comments ** Bug * [FELIX-4962] - Configadmin leaks caller's security context downstream * [FELIX-4945] - Escaped folder names makes ConfigAdmin incompatible and factory configs not always work Changes from 1.8.4 to 1.8.6 --------------------------- ** Improvement * [FELIX-4844] - Store configuration data in a diff-tool friendly way * [FELIX-4884] - Avoid unnecessary array creation if listConfigurations does not find anything Changes from 1.8.2 to 1.8.4 --------------------------- ** Bug * [FELIX-4846] - Wrong exception type in list operation * [FELIX-4851] - ConfigAdmin only forwards ConfigurationEvents to ConfigurationListeners which are provided by bundles that are in state ACTIVE * [FELIX-4855] - ConfigAdmin does not update ManagedServiceFactory on framework restart Changes from 1.8.0 to 1.8.2 ---------------------------- ** Bug * [FELIX-4302] - Config Admin can create illegal names on windows * [FELIX-4360] - Ensure ordered property values in configurations * [FELIX-4362] - Security ConfigAdmin permissions are inherited on the stack * [FELIX-4385] - NPE in Configuration Admin Service when deleting configuration * [FELIX-4408] - CaseInsensitiveDictionary is platform/locale dependant * [FELIX-4566] - Consistency in PersistenceManager and Cache is not guaranteed ** Improvement * [FELIX-4316] - Packages imported dynamically should also be imported statically with an optional flag * [FELIX-4811] - Optimize ConfigurationManager#listConfigurations Changes from 1.6.0 to 1.8.0 ---------------------------- ** Bug * [FELIX-3360] - Bundle location is statically set for dynamically bound bundles * [FELIX-3762] - NPE in UpdateConfiguration#run * [FELIX-3820] - Possible NPE in ConfigAdmin after shutting down when accessed by bad behaving bundles * [FELIX-3823] - ConfigAdmin should explicitely unregister services * [FELIX-4165] - FilePersistenceManager fails to rename configuration file * [FELIX-4197] - [CM] Always check permission on Configuration.get/setBundleLocation * [FELIX-4238] - Unnecessary re-initialization of PersistenceManagers in configadmin ** Improvement * [FELIX-4039] - Add Permissions file in ConfigAdmin bundle ** Task * [FELIX-3808] - Upgrade ConfigAdmin to pax-exam 2 Changes from 1.4.0 to 1.6.0 ---------------------------- ** Bug * [FELIX-3532] - Source artifact is not being generated * [FELIX-3596] - Config Admin should track SynchronousConfigurationListeners * [FELIX-3721] - Configuration not always provided upon initial service registration ** Improvement * [FELIX-3577] - Refactor helpers and service trackers * [FELIX-3622] - ConfigurationManager.listConfigurations may not always properly log the configuration PID ** Task * [FELIX-3479] - [Config Admin 1.5] Implement Configuration.getChangeCount() * [FELIX-3480] - [Config Admin 1.5] Implement support for SynchronousConfigurationListener * [FELIX-3481] - [Config Admin 1.5] Implement support for Targeted PIDs * [FELIX-3483] - [Config Admin 1.5] Export cm API at version 1.5 * [FELIX-3554] - Prevent same configuration to be delivered multiple times * [FELIX-3562] - Use OSGi Configuration Admin 1.5 API classes * [FELIX-3578] - ConfigAdmin Maven build does not have Maven convention *-sources.jar artifacts Changes from 1.2.8 to 1.4.0 ---------------------------- ** Bug * [FELIX-2766] - Calling update() on a newly created factory configuration causes FileNotFoundException * [FELIX-2771] - Configuration Admin does not work on Foundation 1.2 and Mika * [FELIX-2813] - NPE in UpdateThread when updating a configuration right after ConfigurationAdmin service starts * [FELIX-2847] - NPE in ConfigurationManager.java:1003 (static String toString( ServiceReference ref )) * [FELIX-2885] - The config admin bundle does not indicate its provided and required services dependencies * [FELIX-2888] - if you create a factory configuration and anybody takes a peek before you've had a chance to update, your pudding is trapped forever * [FELIX-3046] - Empty array configuration value is read as null after restart * [FELIX-3175] - RankingComparator results in wrong results * [FELIX-3227] - ManagedService.update must be called with null if configuration exists but is not visilbe * [FELIX-3228] - Configuration.getBundleLocation to generous * [FELIX-3229] - ConfigurationAdmin.getConfiguration(String, String) and .createConfiguration(String) to generous * [FELIX-3230] - ConfiguartionAdapter.setBundleLocation checks configuration permission incorrectly * [FELIX-3231] - Disable update counter * [FELIX-3233] - ConfigurationManager.canReceive may throw NullPointerException * [FELIX-3390] - Intermittent NPE in ConfigurationManager ** Improvement * [FELIX-3180] - Provide MessageFormat based logging method * [FELIX-3327] - Gracefully handle Configuration access after Configuration Admin Service has terminated ** Task * [FELIX-3176] - Implement Configuration Admin 1.4 changes * [FELIX-3177] - Remove temporary inclusion of OSGi classes * [FELIX-3200] - Track PID changes of ManagedService[Factory] services * [FELIX-3301] - Enforce only using Java 1.3 API use ** Wish * [FELIX-1747] - Use Remote Resources Plugin to generate the legal files Changes from 1.2.4 to 1.2.8 --------------------------- ** Bug * [FELIX-1545] - Configurations may still be delivered more than once (or not at all) * [FELIX-1727] - Properties with leading dots not allowed * [FELIX-2179] - junit does not need to be a compile scope dependency of configadmin * [FELIX-2557] - ConfigurationEvent delivery not building the listener list correctly ** Improvement * [FELIX-1907] - Improve documentation on PersistenceManager API * [FELIX-2552] - Add caching PersistenceManager proxy * [FELIX-2554] - Improve unit test setup to allow for easier use of integration tests from within IDEs ** Task * [FELIX-1543] - Remove org.osgi.service.cm from configadmin project as soon as R4.2 compendium library is available from the Maven Repository * [FELIX-2559] - Adapt Configuration Admin LICENSE and NOTICE files Changes from 1.2.0 to 1.2.4 --------------------------- ** Bug * [FELIX-1535] - Permission is checked against the using bundle instead of the access control context (call stack) * [FELIX-1542] - Configuration may be supplied twice in certain situations ** Improvement * [FELIX-1541] - Include latest CM 1.3 (Compendium R 4.2) package export Changes from 1.0.10 to 1.2.0 ---------------------------- ** Bug * [FELIX-979] - Config Admin throwing NPE * [FELIX-1146] - ConfigAdmin can deliver updates to a managed service factory more than once * [FELIX-1165] - When restarting a bundle, the config admin reports "Configuration ... has already been delivered", and the bundle receives no configuration. * [FELIX-1477] - ConfigAdmin implementation is not thread-safe * [FELIX-1479] - Security errors accessing configurations in the file system * [FELIX-1484] - Dynamically bound configuration must be reset to null after target bundle is uninstalled. * [FELIX-1486] - Multiple PIDs must be supported * [FELIX-1488] - Configuration binding is broken * [FELIX-1489] - New Configurations must still be delivered to ManagedService * [FELIX-1508] - Configuration.update() must not send CM_UPDATED event ** Improvement * [FELIX-1219] - ConfigAdmin package version has been bumped * [FELIX-1507] - Prevent update failure in case of multiple updates/deletes ** New Feature * [FELIX-1231] - Support multi-value service.pid service properties * [FELIX-1234] - Configuration Plugins should be called for all configuration instances of factory targets Changes from 1.0.8 to 1.0.10 ---------------------------- ** Bug * [FELIX-889] - Arrays of primitives not supported by Configuration Admin * [FELIX-890] - Configuration.getProperty returns a Dictionary which is not entirely private ** Improvement * [FELIX-903] - Add functionality to limit log output in the absence of a LogService Changes from 1.0.4 to 1.0.8 --------------------------- ** Bug * [FELIX-740] - ConfigurationManager throws NPE when bundle that registered service is uninstalled * [FELIX-880] - ServiceReference of ConfigurationEvent is null * [FELIX-881] - Stopping the Configuration Admin bundle causes a NullPointerException ** Improvement * [FELIX-665] - Configuration Admin OBR description * [FELIX-865] - OBR: Do not declare ManagedService[Factory], ConfigurationListener and PersistenceManager as required services * [FELIX-879] - Use Collection interface internally instead of Vector, also be lenient and accept any Colleciton value and do not require Vector Changes from 1.0.1 to 1.0.4 --------------------------- ** Bug * [FELIX-611] - ConfigurationAdmin.listConfigurations returns empty configurations * [FELIX-612] - ConfigurationAdmin.createFactoryConfiguration should not persist Configuration ** Improvement * [FELIX-605] - Include ServiceTracker as private package Changes from 1.0.0 to 1.0.1 --------------------------- ** Bug * [FELIX-516] - ManagedService[Factory] may be updated twice with the same Configuration * [FELIX-522] - Configuration Admin allows configuration keys with illegal characters Initial Release 1.0.0 ---------------------