Karl Pauls | c52f617 | 2011-02-21 21:48:19 +0000 | [diff] [blame] | 1 | Changes from 3.0.8 to 3.0.9 |
| 2 | --------------------------- |
| 3 | |
| 4 | ** Bug |
| 5 | * [FELIX-1581] - Bundle#update, Bundle#uninstall and Bundle#stop should wait for a (configurable) timeout before throwing an exception if the bundle is starting or stopping |
| 6 | * [FELIX-2784] - When the framework try to grab the bundle lock, it ignores thread interruption |
| 7 | * [FELIX-2822] - [Framework] System bundle module's state not reset when framework restarted leading to NPE |
| 8 | * [FELIX-2832] - [Framework] It should not be possible to open an URLConnection to "/" for a bundle URL |
| 9 | * [FELIX-2840] - [Framework] Uninstalling an uninstalled bundle throws NoSuchElementException |
| 10 | * [FELIX-2849] - PackageAdmin is inconsistent between getFragments and getHosts |
| 11 | * [FELIX-2850] - PackageAdmin return fragments / hosts even if the host isn't resolved |
| 12 | * [FELIX-2851] - Resolution problems after a fragment can't be resolved |
| 13 | |
| 14 | ** Improvement |
| 15 | * [FELIX-2841] - [Framework] Improve resolve exception messages |
| 16 | |
Richard S. Hall | 8fe08db | 2011-02-21 14:38:03 +0000 | [diff] [blame] | 17 | Changes from 3.0.7 to 3.0.8 |
| 18 | --------------------------- |
| 19 | |
| 20 | ** Bug |
| 21 | * [FELIX-2749] - Boolean.parseBoolean() newly defined in Java5 should not be used. |
| 22 | * [FELIX-2789] - Native library matching is not correctly checking additional extensions |
| 23 | * [FELIX-2800] - Logging will throw an NPE if no bundle is specified |
| 24 | * [FELIX-2802] - A failed update doesn't rollback properly |
| 25 | * [FELIX-2805] - Cache PackageAdmin.getBundle() result for system bundle classes |
| 26 | |
Karl Pauls | 279d541 | 2010-12-26 21:09:17 +0000 | [diff] [blame] | 27 | Changes from 3.0.6 to 3.0.7 |
| 28 | --------------------------- |
| 29 | |
| 30 | ** Bug |
| 31 | * [FELIX-2456] - Framework no longer fires UNRESOLVED event when a bundle is explicitly refreshed |
| 32 | * [FELIX-2693] - [Framework] Service registry should throw a ServiceException for factories resulting in a cycle |
| 33 | * [FELIX-2700] - Framework uses java.nio package which is not supported by CDC VM |
| 34 | * [FELIX-2710] - [Framework] For exploded bundles Bundle.getEntry("a/b.jar/")==Bundle.getEntry("a/b.jar") |
| 35 | * [FELIX-2717] - [Framework] Resolver treats multiple exports of same package as conflicting for fragment imports |
| 36 | * [FELIX-2725] - [Framework] Resolver is not correctly calculating exported packages for already resolved modules |
| 37 | * [FELIX-2728] - JarRevision does not close URLConnections which are instances of HttpURLConnection |
| 38 | * [FELIX-2736] - [Framework] Resolver is not correctly verifying package space consistency for dynamic imports |
| 39 | * [FELIX-2738] - [Framework] DirectoryContent does not handle security correctly |
| 40 | |
| 41 | ** Improvement |
| 42 | * [FELIX-2703] - [Framework] Include OSGi/Minimum EEs in default properties |
| 43 | * [FELIX-2721] - [Framework] Implement custom manifest parser and avoid JarFile |
| 44 | * [FELIX-2737] - [Framework] Optimize resolver algorithm by not re-calculating uses constraints for resolved modules |
| 45 | |
Karl Pauls | db2cbc0 | 2010-11-03 21:03:40 +0000 | [diff] [blame] | 46 | Changes from 3.0.5 to 3.0.6 |
| 47 | --------------------------- |
| 48 | |
| 49 | ** Bug |
| 50 | * [FELIX-2670] - [Framework] Implicit boot delegation doesn't delegate for external code in all cases |
| 51 | * [FELIX-2683] - [Framework] Bundle last modified time is not persisted on deployment |
| 52 | |
| 53 | ** Improvement |
| 54 | * [FELIX-2560] - Bundle URLs do not survive refreshes |
| 55 | |
| 56 | ** New Feature |
| 57 | * [FELIX-2646] - [Framework] Locking could be used to prevent concurrent access to a single bundle cache |
| 58 | |
Karl Pauls | 5dfa2a0 | 2010-10-18 21:58:01 +0000 | [diff] [blame] | 59 | Changes from 3.0.4 to 3.0.5 |
| 60 | --------------------------- |
| 61 | |
| 62 | ** Bug |
| 63 | * [FELIX-2653] - LinkageError caused by duplicate class definition during implicit boot delegation |
| 64 | |
| 65 | ** Improvement |
| 66 | * [FELIX-2645] - Add a (hidden) way to retrieve a local URL for a given bundle URL |
| 67 | * [FELIX-2654] - [Framework] Modify bundle cache to use a single file per bundle state |
| 68 | |
Karl Pauls | e74c248 | 2010-10-04 20:35:42 +0000 | [diff] [blame] | 69 | Changes from 3.0.3 to 3.0.4 |
| 70 | --------------------------- |
| 71 | |
| 72 | ** Bug |
| 73 | * [FELIX-2584] - No FrameworkEvent.ERROR on unchecked exception in event listener |
| 74 | * [FELIX-2629] - [Framework] Module class loader should return an empty enumeration for getResources() |
| 75 | |
| 76 | ** Improvement |
| 77 | * [FELIX-2619] - [Framework] Bundle cache is rechecking nonexistent files again and again |
| 78 | * [FELIX-2626] - [Framework] Bundle cache is rewriting some files when restarting bundles |
| 79 | |
Karl Pauls | 4ca1482 | 2010-09-22 20:37:21 +0000 | [diff] [blame] | 80 | Changes from 3.0.2 to 3.0.3 |
| 81 | --------------------------- |
| 82 | |
| 83 | ** Bug |
| 84 | * [FELIX-2548] - Resolver should use case sensitive indexing for capabilities |
| 85 | * [FELIX-2569] - Felix bundle classloader always delegates to parent loader in getResources() |
| 86 | * [FELIX-2589] - SecurityException "SecurityManager already installed" is thrown when calling Framework.init() multiple times with FRAMEWORK_SECURITY set |
| 87 | * [FELIX-2598] - Hang in Felix: thread owing a bundle lock waits for ever to lock it again |
| 88 | * [FELIX-2599] - When specifying the packages exported by the system bundle, attributes and directives on packages do not show up in the system bundle headers |
| 89 | |
| 90 | ** Improvement |
| 91 | * [FELIX-1022] - Classloader Exceptions should be more informative |
| 92 | * [FELIX-2549] - Fix some synchronization issues in content handling |
| 93 | * [FELIX-2555] - Log messages should contain the bundle id, when available |
| 94 | * [FELIX-2597] - Deadlock during delivery of resolved event |
| 95 | |
Karl Pauls | 7fd85ce | 2010-08-18 20:41:35 +0000 | [diff] [blame] | 96 | Changes from 3.0.1 to 3.0.2 |
| 97 | --------------------------- |
| 98 | |
| 99 | ** Bug |
| 100 | * [FELIX-2421] - Implicit bootdelegation doesn't ignore classloaders if they are inner classes |
| 101 | * [FELIX-2437] - Deadlock on refrsh Import and refresh |
| 102 | * [FELIX-2451] - Felix uses System.out to print debug messages related to resolver... |
| 103 | * [FELIX-2459] - Wrong error message on a missing package |
| 104 | * [FELIX-2466] - Unknown attributes are not stripped from Fragment-Host header |
| 105 | * [FELIX-2473] - Subtring matching is incorreclty matching against an empty string |
| 106 | * [FELIX-2479] - Required bundles not correctly re-exporting their substitutable exports |
| 107 | |
| 108 | ** Improvement |
| 109 | * [FELIX-2528] - Potential performance issue in resolver when uses constraint conflict is detected |
| 110 | * [FELIX-2529] - In some scenarios the resolver will not backtrack on imported package decisions |
| 111 | |
Karl Pauls | 5fb4330 | 2010-06-14 20:13:54 +0000 | [diff] [blame] | 112 | Changes from 3.0.0 to 3.0.1 |
| 113 | --------------------------- |
| 114 | |
| 115 | ** Bug |
| 116 | * [FELIX-2401] - NPE in org.apache.felix.framework.FilterImpl.DictionaryCapability.getAttribute(String) |
| 117 | |
Karl Pauls | f4ea031 | 2010-06-06 21:55:08 +0000 | [diff] [blame] | 118 | Changes from 2.0.5 to 3.0.0 |
| 119 | --------------------------- |
| 120 | ** Sub-task |
| 121 | * [FELIX-2036] - Improve resolver's generic capability/requirement model |
| 122 | * [FELIX-2037] - Improve resolver performance by making solution space searching smarter |
| 123 | |
| 124 | ** Bug |
| 125 | * [FELIX-995] - JRE packages are exported with wrong version |
| 126 | * [FELIX-1967] - Freeze finding consistent class space |
| 127 | * [FELIX-2080] - Updating bundles when debugging switched on might result in a deadlock with 100% CPU usage |
| 128 | * [FELIX-2150] - URLStreamHandlerProxy.setURL may not set query component correctly |
| 129 | * [FELIX-2172] - Extremely long resolve stage when running CXF-DOSGi system test |
| 130 | * [FELIX-2177] - Fragment bundles not loaded after second start when using autodeploy |
| 131 | * [FELIX-2271] - CLONE -NPE "name can't be null" when trying to install a bundle in Felix 2.0.3 |
| 132 | * [FELIX-2273] - getClassLoader-permission required accessing classes from dynamically loaded class |
| 133 | * [FELIX-2281] - Bundle id order affects fragment resolution success |
| 134 | * [FELIX-2317] - Possible NPE for jars with null Manifest |
| 135 | * [FELIX-2321] - BundleException type should be properly set when installing a duplicate bundle |
| 136 | * [FELIX-2332] - Lots of contention on ExtensionManager.openConnection(URL) |
| 137 | * [FELIX-2335] - Bundle.loadClass() for system bundle doesn't obey boot delegation |
| 138 | * [FELIX-2356] - extension bundle cannot load class from embed jar |
| 139 | * [FELIX-2383] - Bundles are restarted during start level change |
| 140 | * [FELIX-2392] - Felix framework uses a Java5 method |
| 141 | |
| 142 | ** Improvement |
| 143 | * [FELIX-1210] - Allow jars with missing intermediate entries to be handled as if they were present in Bundle.getEntryPaths |
| 144 | * [FELIX-1797] - Customizable Framework startup message |
| 145 | * [FELIX-2035] - Reimplement framework resolver |
| 146 | * [FELIX-2039] - Reimplement standard OSGi LDAP filter to use new filter solution for resolver |
| 147 | * [FELIX-2040] - Modify framework service registry to use resolver's new capability/requirement model |
| 148 | * [FELIX-2041] - Look into using generics in framework code |
| 149 | * [FELIX-2042] - Use Gogo as the default shell for the framework distribution |
| 150 | * [FELIX-2324] - Support execution environment so that OBR works properly |
| 151 | * [FELIX-2336] - Variable substitution in configuration files should ignore mismatched delimiters |
| 152 | |
| 153 | Changes from 2.0.4 to 2.0.5 |
| 154 | --------------------------- |
| 155 | ** Bug |
| 156 | * [FELIX-1753] - The start level should check that the bundle still exists before starting it to avoid an ugly exception |
| 157 | * [FELIX-2087] - NPE "name can't be null" when trying to install a bundle in Felix 2.0.3 |
| 158 | * [FELIX-2107] - Bundle.findEntries() matches '*<filePattern>' instead of '<filePattern>' |
| 159 | * [FELIX-2195] - Using URLDecoder.decode on locations is wrong |
| 160 | * [FELIX-2222] - Failure to reinstall a cached bundle will corrupt the bundle cache |
| 161 | |
Karl Pauls | c6eda45 | 2010-02-14 22:52:56 +0000 | [diff] [blame] | 162 | Changes from 2.0.3 to 2.0.4 |
| 163 | --------------------------- |
| 164 | |
| 165 | ** Bug |
| 166 | * [FELIX-2056] - URLHandlersStreamHandler not getting handlers from frameworks that are inside a different classloader |
| 167 | * [FELIX-2067] - Fragment bundle ignored silently when the host Bundle-SymbolicName equals import package name |
| 168 | * [FELIX-2073] - The System Bundle is not providing WS Addressing |
| 169 | |
| 170 | ** Improvement |
| 171 | * [FELIX-2071] - Missing checks inside ModuleImpl (in Framework) which causes exceptions |
| 172 | |
| 173 | Changes from 2.0.2 to 2.0.3 |
| 174 | --------------------------- |
| 175 | |
| 176 | ** Bug |
| 177 | * [FELIX-1838] - PackageAdmin.getExportedPackages() duplicates output for packages with different version |
| 178 | * [FELIX-1867] - ModuleImpl diagnoseClassLoadError throw NullPointerException for empty package name in debug mode |
| 179 | * [FELIX-1917] - A few minor bugs in the framework found while embedding Felix |
| 180 | * [FELIX-1919] - Fragment bundle cannot be linked to its host |
| 181 | * [FELIX-1920] - RequiredBundle.getRequiringBundles() incorrectly calculates result |
| 182 | * [FELIX-1929] - getStartLevel() always reports requested start level, not active start level |
| 183 | * [FELIX-1982] - Documented but uninterpreted felix.cache.* properties |
| 184 | * [FELIX-1998] - Use UTF-8 when decoding reference location URLs |
| 185 | * [FELIX-2002] - Uninstalled fragments are not properly detached |
| 186 | |
| 187 | ** Improvement |
| 188 | * [FELIX-37] - Implement security for bundle resource URLs |
| 189 | * [FELIX-325] - Factor out security checks from the framework/system bundle code |
| 190 | * [FELIX-1973] - Implement all required security checks |
| 191 | |
| 192 | ** New Feature |
| 193 | * [FELIX-30] - Implement extension bundles |
| 194 | * [FELIX-1991] - Allow boot delegation class loader to be configurable per bundle |
| 195 | |
| 196 | |
| 197 | Changes from 2.0.1 to 2.0.2 |
| 198 | --------------------------- |
| 199 | |
| 200 | ** Bug |
| 201 | * [FELIX-1754] - Usage of BundleContext.getServiceReferences results in failure to activate components |
| 202 | * [FELIX-1782] - Errors during start-up on gnu/classpath based VMs (jamvm, kaffe, cacao) and mika |
| 203 | * [FELIX-1795] - Bundle version ignored in Fragment-Host header |
| 204 | * [FELIX-1834] - java.io.IOException: No framework context found when embedding felix frameworks as bundles |
| 205 | |
| 206 | ** Improvement |
| 207 | * [FELIX-1534] - Improve fragment merging |
| 208 | * [FELIX-1781] - Try to reduce object allocations/usage in resolver algorithm |
| 209 | * [FELIX-1783] - Eliminate contention on ServiceRegistry.getServiceReferences(String, Filter) |
| 210 | |
| 211 | Changes from 2.0.0 to 2.0.1 |
| 212 | --------------------------- |
| 213 | |
| 214 | ** Bug |
| 215 | * [FELIX-1565] - Deadlock UrlHandlers |
| 216 | * [FELIX-1573] - Occasional NPE in URLHandlersBundleStreamHandler |
| 217 | * [FELIX-1580] - Regression with native library handling |
| 218 | * [FELIX-1586] - Framework reports org.osgi.framework.version as 1.3 |
| 219 | * [FELIX-1600] - ServiceReference.isAssignableTo() always returns true if requesting bundle has no wire |
| 220 | * [FELIX-1631] - Implicit bootdelegation causes hang on android |
| 221 | * [FELIX-1710] - Resolver still does not discard all partial results when a cyclical dependency fails |
| 222 | * [FELIX-1721] - Framework boot delegation has a bug due to extraneous code |
| 223 | * [FELIX-1731] - Native library extraction could be improved to help cases where there are dependencies among libraries |
| 224 | |
| 225 | ** Improvement |
| 226 | * [FELIX-1619] - Change the default auto-deploy actions to be install and start only |
| 227 | * [FELIX-1625] - Refactor bundle cache to simplify management |
| 228 | * [FELIX-1679] - VersionRange class should use finals to be thread safe. |
| 229 | * [FELIX-1724] - Various module metadata should be cached |
| 230 | |
| 231 | ** Task |
| 232 | * [FELIX-1617] - Modify framework, main, shell, shell.tui, and obr to depend on official OSGi JAR files |
| 233 | |
| 234 | Changes from 1.8.1 to 2.0.0 |
| 235 | --------------------------- |
| 236 | |
| 237 | ** Bug |
| 238 | * [FELIX-893] - Felix fails to start using J9 JVM |
| 239 | * [FELIX-905] - Felix needs an RFC 126 FindHook |
| 240 | * [FELIX-906] - Felix needs an RFC 126 EventHook |
| 241 | * [FELIX-1122] - Extension bundles are not being removed from the bundle list when uninstalled |
| 242 | * [FELIX-1123] - System bundle does still not correctly handle (export) package attributes |
| 243 | * [FELIX-1124] - ResourceNotFoundException too verbose |
| 244 | * [FELIX-1130] - Bundle.getHeaders() returns a Dictionary<java.util.jar.Attribute.Name,String> |
| 245 | * [FELIX-1138] - URL Handlers performance regression due to service lookups |
| 246 | * [FELIX-1170] - MemoryLeak when stopping and restarting Felix |
| 247 | * [FELIX-1187] - BundleContext.ungetService() should return false only if the usage count is zero when the method is invoked |
| 248 | * [FELIX-1197] - Bundle Fragments not resolved correctly |
| 249 | * [FELIX-1198] - config.properties still refers to old org.osgi.framework.startlevel property |
| 250 | * [FELIX-1247] - BundleEvent.UNRESOLVED should be fired during update/uninstall not refresh |
| 251 | * [FELIX-1249] - Bundle.findEntries() should search fragments as well as the bundle itself |
| 252 | * [FELIX-1254] - Bundle#findEntries does not return resources from fragments |
| 253 | * [FELIX-1271] - Improve manifest localization to handle special cases |
| 254 | * [FELIX-1272] - Need to special case getResource()/getResources()/loadClass() for fragment bundles |
| 255 | * [FELIX-1273] - Bundle.getResources() should return null for a non-existent resource |
| 256 | * [FELIX-1277] - Fix Service Hooks Tests failures in RFC 126 TCK |
| 257 | * [FELIX-1279] - Framework.waitForStop() does not obey timeout |
| 258 | * [FELIX-1280] - Package Admin - getExportedPackages must return null instead of an empty array |
| 259 | * [FELIX-1285] - SecureAction captures the calling context incorrectly |
| 260 | * [FELIX-1286] - Module class loader should use secure action instead of a privileged block |
| 261 | * [FELIX-1287] - System bundle operations from RFC-132 (e.g., init(), start(), stop(), waitForStop()) are using wrong lock object |
| 262 | * [FELIX-1288] - System bundle context should be null after stopping the framework |
| 263 | * [FELIX-1292] - PackageAdmin.getBundle(Class) should return null if the bundle associated with the passed in class is from another framework |
| 264 | * [FELIX-1293] - StringMap used for case insensitive properties does not respect ordering if case sensitivity is changed |
| 265 | * [FELIX-1295] - ServiceRegistry increments/decrements service use count after/before getService/ungetService() is called on ServiceFactory |
| 266 | * [FELIX-1371] - Automatic parent class loader delegation does not correctly filter calls to Bundle.loadClass() |
| 267 | * [FELIX-1397] - Required execution environment verification should happen at resolve time, not install time |
| 268 | * [FELIX-1400] - bootdelegation and dynamic-import-packages are accepting invalid patterns |
| 269 | * [FELIX-1401] - Manifest localization with fragments not handled correctly |
| 270 | * [FELIX-1422] - Resolver does not always discard partial results when a cyclically dependency fails |
| 271 | * [FELIX-1435] - Resolver does not always resolve a dynamic import to a fragment export |
| 272 | * [FELIX-1527] - R4.2 spec errata now specifies uninstalling a bundle must transition through INSTALLED on its way to UNINSTALLED |
| 273 | * [FELIX-1551] - Start level service must synchronously persist bundle start level changes |
| 274 | * [FELIX-1556] - Bundle.getResource/s is not able to find resources if the package is not alraedy wired when I use DynamicImport-Package: * |
| 275 | |
| 276 | ** Improvement |
| 277 | * [FELIX-712] - Ability to disable automatic parent classloader delegation |
| 278 | * [FELIX-883] - JarContent logs and then swallows exceptions when reading from JAR file, should probably throw an exception |
| 279 | * [FELIX-1120] - Enable BundleCache customization |
| 280 | * [FELIX-1134] - Add support for native libraries in fragments |
| 281 | * [FELIX-1189] - Improve error message in main when there is an error processing auto-install/start bundles |
| 282 | * [FELIX-1246] - PackageAdmin.getBundle() is not implemented efficiently |
| 283 | * [FELIX-1260] - Make Bundle.findEntries() and Bundle.getEntryPaths() more thread safe |
| 284 | * [FELIX-1291] - Implement support for proper return type from Framework.waitForStop() |
| 285 | * [FELIX-1300] - Remove legacy bundle cache support when extracting embedded JAR files |
| 286 | * [FELIX-1360] - Improve native library matching algorithm (part 2) |
| 287 | * [FELIX-1404] - Use provided classes from OSGi R4.2 companion code |
| 288 | * [FELIX-1432] - Manifest parser doesn't return import package declarations in order of manifest |
| 289 | * [FELIX-1462] - Felix framework launcher should only use standard launching API |
| 290 | |
| 291 | ** New Feature |
| 292 | * [FELIX-33] - Implement system bundle update |
| 293 | * [FELIX-749] - Add support for lazy activation of bundles |
| 294 | * [FELIX-1193] - Implement org.osgi.framework.bundle.parent from RFC 132 |
| 295 | * [FELIX-1205] - Update to the latest OSGi R4.2 API |
| 296 | * [FELIX-1244] - Add support for ServiceEvent.MODIFIED_ENDMATCH |
| 297 | * [FELIX-1250] - Support service exceptions for service factories |
| 298 | * [FELIX-1289] - Support for FrameworkUtil.getBundle() |
| 299 | * [FELIX-1297] - Implement support for new org.osgi.framework.command.execpermission configuration property |
| 300 | * [FELIX-1298] - Implement support for new org.osgi.framework.library.extensions configuration property |
| 301 | * [FELIX-1446] - Framework launcher should automatically deploy bundles in bundle directory |
| 302 | * [FELIX-1478] - Add shutdown hook to launcher to cleanly shutdown the framework if the process is killed |
| 303 | |
| 304 | |
| 305 | |
| 306 | |
| 307 | ** Task |
| 308 | * [FELIX-1144] - The NOTICE file for Main subproject is not correctly copied into the source JAR |
| 309 | |
| 310 | |
| 311 | ** Test |
| 312 | * [FELIX-1208] - Need migrate the EventDispatcherTest to newer version of EasyMock |
| 313 | |
| 314 | Changes form 1.6.1 to 1.8.0 |
| 315 | --------------------------- |
| 316 | ** Bug |
| 317 | * [FELIX-1034] - bootdelegation property seems to be matching more packages than desired |
| 318 | * [FELIX-1059] - DynamicImport-Package matches more packages than desired |
| 319 | |
| 320 | ** Improvement |
| 321 | * [FELIX-1060] - URLHandlers doesn't support URLStreamHandler.openConnection(proxy,url) method |
| 322 | |
| 323 | ** New Feature |
| 324 | * [FELIX-29] - Implement bundle fragments |
| 325 | |
| 326 | Changes from 1.6.0 to 1.6.1 |
| 327 | --------------------------- |
| 328 | ** Bug |
| 329 | * [FELIX-1027] - deadlock with felix 1.6.0 ? |
| 330 | * [FELIX-1028] - NPE in configuration view when running webconsole with Equinox |
| 331 | * [FELIX-1033] - Exceptions when Felix is started with security manager |
| 332 | * [FELIX-1035] - deadlock observed while using fileinstall to monitor multiple directories |
| 333 | * [FELIX-1045] - Felix 1.6.0 fails with ClassCircularityError |
| 334 | |
| 335 | Changes from 1.4.1 to 1.6.0 |
| 336 | --------------------------- |
| 337 | |
| 338 | ** Bug |
| 339 | * [FELIX-737] - Resolver does not correctly discard export when module imports the same package (part 2) |
| 340 | * [FELIX-852] - Fragment support is currently limited to directly resolved hosts |
| 341 | * [FELIX-869] - SCR throws exception on invalidating a component with a reference to a service that was already unregistered |
| 342 | * [FELIX-891] - Bundle lock acquisition should not record lock until it verifies the bundle is lockable |
| 343 | * [FELIX-892] - ServiceReferenceImpl improper implementation of equals and hashcode |
| 344 | * [FELIX-893] - Felix fails to start using J9 JVM |
| 345 | * [FELIX-897] - Empty system package is exported when a semicolon is present in "extra" configuration |
| 346 | * [FELIX-902] - Empty bundle.state file produces NPE |
| 347 | * [FELIX-910] - Framework may ignore framework startlevel on startup |
| 348 | * [FELIX-911] - Potential deadlock between Bundle.stop() and BundleContext.registerService() |
| 349 | * [FELIX-915] - PackageAdmin returns null on getBundle(...) with system classes |
| 350 | * [FELIX-934] - Bootdelegation bug |
| 351 | * [FELIX-947] - Behaviour of startlevel comman doesn't adhere to spec |
| 352 | * [FELIX-948] - ServiceReferenceImpl.compareTo should handle other types than integer for service ranking |
| 353 | * [FELIX-951] - Deadlock in iPojo when stopping Felix |
| 354 | * [FELIX-952] - Exception thrown when unregistering services because the bundle is stopped |
| 355 | * [FELIX-953] - Bundle#loadClass sometimes return null instead of throwing a CNFE |
| 356 | * [FELIX-961] - 100% CPU looping inside uses calculation |
| 357 | * [FELIX-962] - Erroneous class loading delegation to the application launcher classloader in some cases |
| 358 | * [FELIX-969] - system bundle does not correctly handle (export) package attributes |
| 359 | * [FELIX-971] - Exception thrown in ServiceTracker at shutdown |
| 360 | * [FELIX-978] - Resolver does not clean up properly on a failed recursive attempt to resolve |
| 361 | * [FELIX-1004] - Extensionmanager openConnection(URL) method should be public |
| 362 | * [FELIX-1005] - Strange list of imported packages returned by the package admin |
| 363 | |
| 364 | ** Improvement |
| 365 | * [FELIX-681] - Modify daemon threads to catch all exceptions and log them to avoid premature thread death |
| 366 | * [FELIX-851] - Refactor the module abstraction layer to align more closely to OSGi concepts |
| 367 | * [FELIX-872] - JarContent swallows exception when opening manifest, it should log it |
| 368 | * [FELIX-883] - JarContent logs and then swallows exceptions when reading from JAR file, should probably throw an exception |
| 369 | * [FELIX-894] - Loosen locking when starting/stopping/uninstalling a bundle by firing event without holding a lock |
| 370 | * [FELIX-908] - Unsynchronize access to bundle state inside BundleInfo by making the variable volatile |
| 371 | |
| 372 | Changes from 1.4.0 to 1.4.1 |
| 373 | --------------------------- |
| 374 | |
| 375 | * [2008-12-19] Refactor the URLHandlers implementation to fix a possible |
| 376 | Linkage-Error when running embedded inside tomcat. Furthermore, make it possible |
| 377 | to dynamically set a SecurityManager, change the url we add to the framework |
| 378 | classloader to fix issues with rmi and make sure we restore the previous URLStreamHandlerFactory |
| 379 | after stopping. (FELIX-842, FELIX-837, FELIX-844, FELIX-827) |
| 380 | * [2008-12-19] Add missing javax.security.cert in JRE 1.4 and 1.5. (FELIX-854) |
| 381 | * [2008-12-19] Improve framework internal locking protocol. |
| 382 | * [2008-12-18] Fixed an issue where bundles with a non-existing native library |
| 383 | would not be removed correctly. (FELIX-835) |
| 384 | * [2008-11-21] Throw an exception when there is an attempt to start or stop a |
| 385 | fragment, as per the spec. (FELIX-820) |
| 386 | * [2008-11-20] Fixed a bug during shutdown where uninstalled fragments are not |
| 387 | properly closed. (FELIX-819) |
| 388 | * [2008-11-14] Added partial support for new service registry hooks as proposed |
| 389 | for OSGi R4.2; currently, only listener hooks are supported. (FELIX-804) |
| 390 | * [2008-11-08] Fixed Felix' delegation hack so that it correctly delegates to |
| 391 | the parent class loader for resources as appropriate; previously it was always |
| 392 | delegating for class loading, which was incorrect. (FELIX-808) |
| 393 | |
| 394 | Changes from 1.2.2 to 1.4.0 |
| 395 | --------------------------- |
| 396 | |
| 397 | * [2008-11-05] URLStreamHandlerService and ContentHandlerService override |
| 398 | built-in handlers and make it possible to use URLHandlers when extending the |
| 399 | Felix class. (FELIX-756, FELIX-800) |
| 400 | * [2008-11-04] Implement ServiceReference.compareTo() method. (FELIX-799) |
| 401 | * [2008-10-31] Fix some visibility issues in the LDAP operators which could |
| 402 | result in incorrect toString values. (FELIX-765) |
| 403 | * [2008-10-31] Fixed spec compliance issues around getting a service reference |
| 404 | from an invalid registration and throwing an exception when there are |
| 405 | duplicate property keys. (FELIX-798) |
| 406 | * [2008-10-21] Fixed an issue with extension bundles which would be installed |
| 407 | as fragments and fail to install extension bundles if they have incomplete |
| 408 | metadata. (FELIX-770) |
| 409 | * [2008-10-21] Fix a possible deadlock in URLHandlers. (FELIX-748) |
| 410 | * [2008-10-16] Modified framework to have default values for the system |
| 411 | packages property, which also required modifying main to no longer expect to |
| 412 | set it. Now it is possible to start Felix with no configuration properties. |
| 413 | (FELIX-753) |
| 414 | * [2008-10-16] Update felix to work with the 1.0.0-rc1 version of the android |
| 415 | sdk. |
| 416 | * [2008-10-15] Implemented remaining PackageAdmin methods from R4. (FELIX-35) |
| 417 | * [2008-10-15] Modified resolver to correctly mark fragment modules as resolved. |
| 418 | (FELIX-777) |
| 419 | * [2008-10-15] Modified the resolver to longer consider uninstalled fragments |
| 420 | and hosts when resolving dependencies; this required a new "stale" flag on |
| 421 | modules that gets set when their associated bundle is uninstalled. (FELIX-776) |
| 422 | * [2008-10-15] Modified the resolver to sort candidates when resolving |
| 423 | Require-Bundle dependencies. (FELIX-775) |
| 424 | * [2008-10-14] Modified ExportedPackage.getImportingBundles() to include |
| 425 | bundles requiring the exporting bundle, in addition to those bundles |
| 426 | importing the package. Also tried to simplify dependency management code |
| 427 | by separating it out. (FELIX-764) |
| 428 | * [2008-10-14] Fix a NullPointerException in SecureAction when a |
| 429 | SecurityManager is used by keeping pointers on the local stack. (FELIX-766) |
| 430 | * [2008-10-13] Use System.gc to allow to update and uninstall bundles with |
| 431 | native libs on Windows. (FELIX-733) |
| 432 | * [2008-10-10] Set the activator to null on Bundle.stop() to allow for earlier |
| 433 | garbage collection. (FELIX-762) |
| 434 | * [2008-10-10] Implements support for flushing the cache on framework |
| 435 | initialization. (FELIX-755) |
| 436 | * [2008-10-10] Improve exception messages. (FELIX-750) |
| 437 | * [2008-10-09] Modified the bundle cache to no longer have profiles. (FELIX-754) |
| 438 | * [2008-10-08] Modified the Felix API to aligned with the proposed standard |
| 439 | OSGi framework API. The framework instance can now be stopped and restarted. |
| 440 | (FELIX-753) |
| 441 | * [2008-09-29] Support transiently starting/stopping bundles. (FELIX-713) |
| 442 | * [2008-09-25] Correctly discard exported packages when a bundle is chosen to |
| 443 | import a package it exports. (FELIX-736) |
| 444 | * [2008-09-24] Clearly distinguish between "resolved" and "unresolved" |
| 445 | capabilities, which is necessary since "resolved" capabilities have higher |
| 446 | priority than "unresolved" ones. (FELIX-730) |
| 447 | * [2008-09-24] Do not bootdelegate in the case where Bundle.loadClass() has |
| 448 | been used. (FELIX-712) |
| 449 | * [2008-09-23] Improve decoding of reference URLs. (FELIX-731) |
| 450 | * [2008-09-23] For completeness, added symbolic names to framework and main. |
| 451 | * [2008-09-17] Improve gc by fixing an issue with StartLevel and PackageAdmin. |
| 452 | (FELIX-728) |
| 453 | * [2008-09-15] Fix an issue with Require-Bundle not aggregating packages |
| 454 | correctly. (FELIX-722) |
| 455 | * [2008-09-15] Fixed a bug where class loader delegation for dynamic imports |
| 456 | was happening when it shouldn't. (FELIX-724) |
| 457 | * [2008-09-12] Added a configuration property to determine whether installing a |
| 458 | fragment that uses unimplemented features throws an exception or logs a |
| 459 | warning. (FELIX-725) |
| 460 | * [2008-09-12] Removed some experimental code for "implicit requirements", |
| 461 | since it was no longer needed. |
| 462 | * [2008-09-12] Fix some visibility issues within the LDAP filter. (FELIX-721) |
| 463 | |
| 464 | Changes from 1.2.1 to 1.2.2 |
| 465 | --------------------------- |
| 466 | |
| 467 | * [2008-10-14] Fixed a NullPointer exception that could happen when |
| 468 | running with a SecurityManager as a backport of FELIX-766. |
| 469 | |
| 470 | Changes from 1.2.0 to 1.2.1 |
| 471 | --------------------------- |
| 472 | |
| 473 | * [2008-09-05] Fixed a performance regression that was caused by uncached |
| 474 | access to the bundle manifest headers. (FELIX-711) |
| 475 | * [2008-09-03] Fixed a bug in calculating the system bundle's exported |
| 476 | packages which added a null export package. |
| 477 | |
| 478 | Changes from 1.0.4 to 1.2.0 |
| 479 | --------------------------- |
| 480 | |
| 481 | * [2008-08-29] Support JAR-wide manifest package metadata. (FELIX-682) |
| 482 | * [2008-08-29] Throw an exception when installing a fragment that uses |
| 483 | features that we do not support. |
| 484 | * [2008-08-20] Improve error reporting when loading bundle classes using |
| 485 | Bundle.loadClass. |
| 486 | * [2008-08-16] Fix attribute checking when resolving dynamic imports. |
| 487 | (FELIX-676) |
| 488 | * [2008-08-08] Implement singleton bundle support. (FELIX-102) |
| 489 | * [2008-08-06] Default to current security policy if no security extension is |
| 490 | installed in order to make Subject.doAs work. (FELIX-654) |
| 491 | * [2008-08-04] Return Bundle.getLastModified() for bundle URLs |
| 492 | lastModified(). (FELIX-582) |
| 493 | * [2008-08-04] Improve handling of improper resource URLs. (FELIX-577) |
| 494 | * [2008-08-01] Add necessary stub methods to implement new R4.1 methods. |
| 495 | (FELIX-595) |
| 496 | * [2008-08-01] Applied patch to properly return symbolic name when it has |
| 497 | parameters. (FELIX-650) |
| 498 | * [2008-07-25] Fix some rollback issues after a bundle update throws an |
| 499 | exception. (FELIX-647) |
| 500 | * [2008-07-23] Modified manifest parser to be more lenient. (FELIX-641) |
| 501 | * [2008-07-07] Add support for the standard symbolic name for the system |
| 502 | bundle. (FELIX-602) |
| 503 | * [2008-06-01] Add initial fragment support for extending the host bundle |
| 504 | class path. (FELIX-29, FELIX-656) |
| 505 | |
| 506 | Changes from 1.0.3 to 1.0.4 |
| 507 | ___________________________ |
| 508 | |
| 509 | * [2008-04-18] Check that the returned object from a service factory is an |
| 510 | instance of all classes named when the service was registered. (FELIX-540) |
| 511 | * [2008-04-13] Fix an issue when logging messages while holding framework |
| 512 | internal locks that could lead to a deadlock. For now we just disable |
| 513 | logging to log services inside the framework. (FELIX-536) |
| 514 | * [2008-04-13] Implemented various small performance improvments e.g., |
| 515 | we now cache filters and create an index for objectclass to improve |
| 516 | service lookup performance and don't use the BundleInfo to get the |
| 517 | bundle id but the BundleImpl directly. Furthermore, we added an index to |
| 518 | get bundles by id. |
| 519 | * [2008-04-04] Fix an NoClassDefFoundError when trying to query the |
| 520 | framework classloader for whether a class is available or not. |
| 521 | * [2008-03-19] Don't try to resolve extension bundles and fix a |
| 522 | classcastexception that could happen if more then one framework is around |
| 523 | and both have extensions installed. Furthermore, make extension bundles |
| 524 | use the system bundle context. |
| 525 | * [2008-03-07] Bundle.getResource does now check for AdminPermission. |
| 526 | (FELIX-150) |
| 527 | * [2008-03-06] Make urlhandlers work when a handler factory is already set. |
| 528 | Furthermore, it is now possible to have more then one framework running |
| 529 | in more then one classloader. (FELIX-38). |
| 530 | * [2008-03-05] Make LDAP filter reentrant. |
| 531 | * [2008-02-29] Refactored the IContent abstraction from the module loader |
| 532 | layer to provide more generic access to the content of the module. This |
| 533 | makes it possible that a bundle's class path could span multiple module's, |
| 534 | which will be necessary for fragments. (FELIX-29) |
| 535 | * [2008-02-27] Applied a patch to disable the class loading diagnostic message |
| 536 | when the logger is not at the DEBUG level. (FELIX-500) |
| 537 | * [2008-02-15] Modified the service registry to use more fine-grained locking |
| 538 | to avoid callbacks to service factories while holding locks. (FELIX-489) |
| 539 | |
| 540 | Changes from 1.0.1 to 1.0.3 |
| 541 | --------------------------- |
| 542 | |
| 543 | * [2008-01-27] Moved framework docs to main, since the launcher examples now |
| 544 | depend on main for the auto-property handling. |
| 545 | * [2008-01-25] Applied patches to improve how Felix finds resources when |
| 546 | getResources() is called. (FELIX-466, FELIX-467) |
| 547 | * [2008-01-25] Make FilterImpl.toString() add escape characters where needed. |
| 548 | (FELIX-471) |
| 549 | * [2008-01-16] Fix a NPE on framework restart when extension bundles are |
| 550 | installed. |
| 551 | * [2008-01-15] Try to fix a potential visibility issue on loading a class |
| 552 | form a bundle where it seems to be possible that we create two classloaders |
| 553 | instead of one. |
| 554 | * [2008-01-15] Modified boot delegation to not terminate when delegating to |
| 555 | parent class loader for non-java.* packages. (FELIX-463) |
| 556 | * [2008-01-04] Fix some issues related to directories on the bundle class |
| 557 | path. Specifically, leading slashes created an issue and are now stripped |
| 558 | and entries were not being properly filtered when enumerating the contents |
| 559 | of a class path directory. (FELIX-426) |
| 560 | * [2007-12-20] Modified logger to have all of its public methods be final to |
| 561 | avoid it from being extended in undesired ways via the constructor supplied |
| 562 | logger. (FELIX-428) |
| 563 | * [2007-12-20] The TCK has changed to verify that bundles do not depend on |
| 564 | themselves, so we filter that case now. |
| 565 | * [2007-12-20] Applied patch from Guillaume Nodet to properly fire a framework |
| 566 | error event only when a bundle cannot be resolved. (FELIX-441) |
| 567 | * [2007-12-19] Modified framework to accept a Logger instance so that host |
| 568 | applications can do custom logging until the log service arrives. (FELIX-428) |
| 569 | * [2007-12-19] Add support for loading bundles on Google Android (FELIX-440). |
| 570 | * [2007-12-18] Improve native code loading - bundle installation will now |
| 571 | fail in case a native library is not in the jar and we only use the first |
| 572 | library of a given name. Furthermore, we now support .dylib extensions on |
| 573 | the mac as well as others; should make it possible to use .netmodules as |
| 574 | well. (FELIX-439) |
| 575 | * [2007-12-17] Make the win32 alias match any version of windows for native |
| 576 | clauses. (FELIX-438) |
| 577 | * [2007-12-14] Removed auto-property processing out of the framework and |
| 578 | into the default launcher, i.e, main. (FELIX-393) |
| 579 | * [2007-12-13] Fix a StackOverflowError in URLHandlers.createStreamHandler() |
| 580 | when creating URL on jamvm and Mika. This patch resolves an unfortunate |
| 581 | interaction between our ExtensionManager and the URLHandlers by making the |
| 582 | URLHandlers aware of the extension protocol. Pretty much like we do already |
| 583 | for the bundle protocol. (FELIX-435) |
| 584 | * [2007-11-26] Fix a small oversight in the extension manager that could lead |
| 585 | to a null pointer exception and save some memory by creating less objects. |
| 586 | * [2007-11-26] Degrate to version 0.0.0 if we can not find the Felix.properties |
| 587 | for some reason and avoid a null pointer in this case. |
| 588 | * [2007-11-08] Reorganized usage count methods to better handle null |
| 589 | reference checking in response to Karl Pauls seeing an NPE when trying to |
| 590 | get a service that was already unregistered while shutting down the |
| 591 | framework. |
| 592 | * [2007-11-06] Added a simple check to detect and work around a bug in J9. |
| 593 | (FELIX-416) |
| 594 | * [2007-10-30] Change how the extension manager url stream handler handles |
| 595 | request to the root path in order to make some tomcat issue go away. |
| 596 | (FELIX-414) |
| 597 | * [2007-10-26] Added support for "/" bundle resources as requested. (FELIX-383) |
| 598 | * [2007-10-24] Use system bundle when firing a framework error event when an |
| 599 | install error occurs. |
| 600 | * [2007-10-22] Fix a NPE when getEntryPaths is called on the system bundle. |
| 601 | (FELIX-394) |
| 602 | * [2007-10-16] Modifies bundle resource URL handling such that if a resource |
| 603 | URL points to a resource that does not exist, a bundle class path search |
| 604 | for the resource will be instigated and if any matching resource is found, |
| 605 | that one will be used instead. (FELIX-383) |
| 606 | * [2007-10-10] Auto-property handling now installs bundles into the default |
| 607 | bundle start level if a start level is not specified. (FELIX-359) |
| 608 | * [2007-10-08] Overwrite the URLStreamHandler.getHostAddress(URL) in the |
| 609 | ExtensionManager to immediately return null to prevent DNS lookup. |
| 610 | (FELIX-388) |
| 611 | * [2007-09-30] Resolved a concurrency issue that could result in the same |
| 612 | bundle being resolved more than once; also tried to simplify locking in |
| 613 | the core search policy implementation. (FELIX-381) |
| 614 | |
| 615 | Changes from 1.0.0 to 1.0.1 |
| 616 | --------------------------- |
| 617 | |
| 618 | * [2007-07-23] Fixed a bug in the framework shutdown process which was |
| 619 | causing threads calling Felix.stopAndWait() to not get notified that |
| 620 | the framework had shutdown. (FELIX-329) |
| 621 | * [2007-08-15] Fixed a bug in the LDAP filter which was not thread safe |
| 622 | on execution. (FELIX-338) |
| 623 | * [2007-08-17] Added support for persistent last used bundle ID to avoid |
| 624 | re-use of bundle identifiers. (FELIX-339) |
| 625 | * [2007-08-23] Modified BundleImpl.getHeaders(Locale) to accept a null |
| 626 | locale. (FELIX-346) |
| 627 | * [2007-09-11] Added support to handle external termination of Felix |
| 628 | which was not handled or detected and prevented a restart of future |
| 629 | Felix instances in the same VM. (FELIX-363) |
| 630 | * [2007-09-12] Add support for Collection values in the LDAP filter to |
| 631 | match the 4.1 spec. |
| 632 | * [2007-09-12] Fixed a bug in the LDAP filter where attributes where |
| 633 | limited to [a-zA-Z ] so didn't allow for e.g., numbers. (FELIX-361) |
| 634 | * [2007-09-13] Enable support for exporting the same package more than |
| 635 | once (FELIX-101). |
| 636 | * [2007-09-13] Returns the system bundle from a call to |
| 637 | PackageAdmin.getBundle(Class) in case the class comes from the |
| 638 | classloader (or one of its parents) that loaded Felix and the system |
| 639 | bundle exports the package. |
| 640 | * [2007-09-16] Fixed a bug in class space filtering in the service registry |
| 641 | that could result in class cast exceptions for service clients. |
| 642 | * [2007-09-16] Fixed a bug that prevented extension bundle exports to be |
| 643 | usable. |
| 644 | |
| 645 | Changes from 0.8.0-incubator to 1.0.0 |
| 646 | ------------------------------------- |
| 647 | |
| 648 | * [2007-01-18] Added support for bundle header localization. (FELIX-27) |
| 649 | * [2007-01-22] Modified framework resolver to support a generic |
| 650 | capability/requirement model. |
| 651 | * [2007-01-22] Reorganized and centralized manifest parsing code and added |
| 652 | support for resolver's generic capability/requirement model. (FELIX-98) |
| 653 | * [2007-01-22] Improved native library naming normalization. (FELIX-26) |
| 654 | * [2007-01-23] No longer eagerly resolving classes loaded from modules |
| 655 | since this was causing verification errors with IBM J9. |
| 656 | * [2007-01-25] Added some support for execution environment checking. |
| 657 | (FELIX-23) |
| 658 | * [2007-01-29] Added support for getAllServiceReferences(). (FELIX-32) |
| 659 | * [2007-01-31] Added Require-Bundle support to resolve using the generic |
| 660 | capability/requirement model of the resolver. (FELIX-28) |
| 661 | * [2007-02-05] Fixed a bug in processor type normalization for x86-64 |
| 662 | processors. |
| 663 | * [2007-02-09] The resolver previously ignored packages that were pending |
| 664 | removal when resolving new bundles, now it does not. |
| 665 | * [2007-02-09] Bundles are automatically refreshed when updated/uninstalled |
| 666 | if none of their exported packages are in use. |
| 667 | * [2007-02-13] Added support for extension bundles. (FELIX-30) |
| 668 | * [2007-03-02] Added a Bundle.getBundleContext() method until actual |
| 669 | support for OSGi R4.1. |
| 670 | * [2007-04-26] Modified Bundle.findEntries() to return URLs to directory |
| 671 | entries as well as file entries. |
| 672 | * [2007-05-06] Modified LDAP evaluator to special case the fact that |
| 673 | BigDecimal is not available in Foundation profile. |
| 674 | * [2007-05-21] Made some performance improvements in LDAP evaluation. |
| 675 | * [2007-05-22] Modified JAR file to include Service Tracker package. |
| 676 | * [2007-05-22] Improved concurrency handling around checking for already |
| 677 | loaded classes and defining classes. |
| 678 | * [2007-06-05] Modified resource URLs to use port number rather than |
| 679 | prepend information to the resource path. |
| 680 | * [2007-06-13] Improved dynamic imports to cycle through all available |
| 681 | candidates when checking for class space consistency. |
| 682 | * [2007-06-18] Improved service registry filtering based on class versions |
| 683 | to allow a bundle to register a service for a different version of class |
| 684 | that it can access. |
| 685 | * [2007-06-21] Modified our "last ditch effort" to guess when to delegate |
| 686 | to the system bundle to make it a little more robust. |
| 687 | * [2007-06-29] Fixed a bug in EventDispatcher that was causing asynchronous |
| 688 | events to not be fired after stopping the framework instance and creating |
| 689 | a new instance. (FELIX-314) |
| 690 | * [2007-07-03] Fixed a bug in EventDispatcher that would not correctly |
| 691 | update a listener when it implemented multiple listener interfaces. |
| 692 | * [2007-07-04] Modified Felix framework class to implement the Bundle |
| 693 | interface to improve the startup/shutdown sequence and to provide a |
| 694 | simplified API for creating framework instances. |
| 695 | * [2007-07-11] Removed the PropertyResolver-related classes and now only |
| 696 | use Maps for configuration properties. (FELIX-324) |