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