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