blob: 96c9be54751e3d597c3f0ef4e3afddf3ea6bba22 [file] [log] [blame]
Changes from 1.12.0 to 1.12.1
-----------------------------
** Bug
* [FELIX-3836] - NPE when calling InstanceDescription.getDescription()
* [FELIX-4565] - Occasional ArrayIndexOutOfBoundException in iPOJO's ProvidedServiceHandler
* [FELIX-4646] - @Context(Context.Source.INSTANCE) does not inject bundle context
* [FELIX-4713] - Error in ProvidedServiceHandler.checkProvidedService : only the first service is checked
* [FELIX-4715] - instance bundle context injection does not works
* [FELIX-4716] - Bundle org.apache.felix.ipojo physically contains OSGi API classes
* [FELIX-4717] - Cannot use the stream API on injected collections
* [FELIX-4728] - InstanceManager concurrency issue
Changes from 1.11.2 to 1.12.0
-----------------------------
** Bug
* [FELIX-4464] - Wrong configuration admin package import / export clause
* [FELIX-4488] - Attempt to create nullable object for non-interface service
** Improvement
* [FELIX-4482] - Use scope=provided for OSGi APIs dependencies
* [FELIX-4490] - IPOJO allows "instance.name" property to be an empty String
** New Feature
* [FELIX-4476] - Java 8 Support
** Sub-task
* [FELIX-4508] - Update to ASM 5.0.2
* [FELIX-4509] - Change the frame computation strategy
* [FELIX-4510] - Support lambda expression
Changes from 1.11.1 to 1.11.2
-----------------------------
** Bug
* [FELIX-4229] - Provide a way to obtain the component's BundleContext (other than constructor injection)
* [FELIX-4419] - Open access to InstanceDeclaration and TypeDeclaration
* [FELIX-4432] - DefaultServiceRankingInterceptor holds duplicate dependencies
* [FELIX-4448] - Invalid dynamism management when an interceptor implements both Tracking and Ranking interceptors
* [FELIX-4449] - The ConfigurationListener list contains duplicates and fires update on unchanged configurations
** Improvement
* [FELIX-3931] - Provide a handler to inject the bundle context
* [FELIX-4160] - Create an Maven Parent POM for iPOJO
Changes from 1.11.0 to 1.11.1
-----------------------------
** Bug
* [FELIX-4335] - PropertyDescription does not allow retrieving the current value of the represented property
* [FELIX-4374] - iPOJO: ConcurrentModificationException in ProvidedService
* [FELIX-4386] - Deadlock while creating composite instances programmatically
** Improvement
* [FELIX-4292] - @Component 'propagation' attribute has wrong default value
Changes from 1.10.1 to 1.11.0
-----------------------------
** Bug
* [FELIX-4115] - NPE in DependencyModel.getService() when @Bind method throws an exception
* [FELIX-4132] - @Modified not working on Equinox
* [FELIX-4138] - TypeDeclaration calls factory.dispose() even if it already has been disposed (externally)
* [FELIX-4139] - package conflict with ipojo-annotations and ipojo-runtime
* [FELIX-4164] - Instance / Component matching regression
* [FELIX-4172] - Updated method called twice at the bundle start
* [FELIX-4183] - Wrong Javadoc of TrackerCustomizer addingService method
* [FELIX-4199] - The filter based service tracking interceptor should always be created
* [FELIX-4200] - Only the last iPOJO Tracking interceptor is modifying the reference
* [FELIX-4204] - Service Dependencies with a callback without a type attribute must be rejected
* [FELIX-4207] - ipojo @Component with propagation set to true doesn't propagate properties
* [FELIX-4218] - NPE with field annotated with both @Property and @ServiceProperty
* [FELIX-4236] - Unvalued properties should be part of the instance's architecture
* [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
* [FELIX-4248] - ServiceUsage ThreadLocal removal
* [FELIX-4250] - Specification deduction broken when the method does not start with the 'bind' prefix
* [FELIX-4251] - The @Bind annotation should use Class instead of String
* [FELIX-4261] - NPE when an instance is declared without a configuration using the @ConfigurationTracker
* [FELIX-4268] - Duplicated name errors always happen when there are 2 factories with the same name
** Improvement
* [FELIX-4143] - Improve @Configuration management performances
* [FELIX-4216] - Allow @Property without name in constructors
* [FELIX-4228] - Improve dependency identification in log messages and exceptions
* [FELIX-4232] - Service Dependency Interceptors should be part of the instance architecture
* [FELIX-4252] - Make Extender's ThreadPool size configurable
* [FELIX-4262] - QueueServices should be observable
* [FELIX-4263] - iPOJO Core should use ranged imports
* [FELIX-4264] - JobInfo should provide a way to identify the kind of task
** New Feature
* [FELIX-4146] - Add getInstances and getInstanceNames in the Factory interface
* [FELIX-4147] - Add getProvidedService in ProvidedServiceDescription and allow external service management
* [FELIX-4215] - Extend manipulation metadata with argument names
* [FELIX-4231] - Provide service binding interceptors
* [FELIX-4265] - Provides a recorder for startup events
* [FELIX-4267] - Define Apache Karaf features for iPOJO
** Task
* [FELIX-3925] - Merge the temporal dependency handler within the service dependency handler
* [FELIX-4133] - Add distribution creation in the iPOJO runtime build
* [FELIX-4134] - Move integration-tests to the reactor
* [FELIX-4136] - Document service dependency interceptors
* [FELIX-4151] - Fix mistakes in the javadoc tags
* [FELIX-4156] - Fix versions of maven plugins
* [FELIX-4217] - Ensure compatibility between Aries Blueprint and iPOJO
* [FELIX-4245] - Deadlock in Dependency
* [FELIX-4270] - Bump iPOJO package version to 1.11.0
** Sub-task
* [FELIX-4239] - Extend service dependency documentation with the 'exception' attribute.
* [FELIX-4240] - Support the 'exception' attribute in service dependencies
* [FELIX-4242] - Support the 'timeout' attribute in service dependencies
* [FELIX-4243] - Define the dependency configuration matrix and improve error detection
* [FELIX-4244] - Extend the service dependency documentation with the timeout attribute
* [FELIX-4257] - Allow the dependency handler to track the entry and exit of inner class methods
Changes from 1.10.0 to 1.10.1
-----------------------------
** Bug
* [FELIX-4072] - onGet and onSet methods do not provide the reference on the pojo object
* [FELIX-4076] - Useless locking on getRequiredHandler
* [FELIX-4077] - Fix documentation urls in maven projects
* [FELIX-4089] - Extender do not deactivate managed components when stopped
* [FELIX-4096] - NPE when retrieve required and missing handler on a disposed factory
* [FELIX-4105] - Factories not disposed when their bundle is leaving
* [FELIX-4106] - Defensive service registration and update
* [FELIX-4108] - Deadlock in the new extender
* [FELIX-4109] - ComponentTypeDescription.addProperty() ignore immutable parameter
* [FELIX-4113] - Factories not disposed when the extension provider is leaving
* [FELIX-4114] - iPOJO ProvidedServiceDescription does not expose policy & CreationStrategy
* [FELIX-4123] - Deadlock in new extender because of factory lock used in removedService
* [FELIX-4127] - Configuration tracker bug when starting and stopping iPOJO successively
* [FELIX-4129] - Cannot change the optionality of a dependency
** Improvement
* [FELIX-1430] - Notification mechanism on bind/unbind events
* [FELIX-4073] - PrimitiveHandler.attach(ComponentInstance) is final
* [FELIX-4119] - Allow customization of DependencyHandler created Callbacks
** New Feature
* [FELIX-4116] - Ability to listen for component service dependencies, providings, configuration properties, ...
* [FELIX-4120] - Allow external entity to interact during the service resolution
* [FELIX-4125] - Provide 'components' and 'component' commands
* [FELIX-4130] - Allow retrieving the component instance from the instance description
* [FELIX-4131] - Explicitly set configuration's location when the configuration is null
** Task
* [FELIX-4092] - Move 'annotation' module from 'runtime' to 'manipulator' project
* [FELIX-4103] - Skip deployment of it-tests
* [FELIX-4104] - Do not run integration-tests in the default build
* [FELIX-4124] - Move arch-gogo to runtime
Changes from 1.8.6 to 1.10.0
----------------------------
** Bug
* [FELIX-3451] - "instance.name" attribute not recognized
* [FELIX-3843] - ClassCastException when listing service properties of a non-ComponentFactory Factory service
* [FELIX-3895] - iPOJO instance is not shown (with the "arch" commands) if constructor is failing
* [FELIX-3896] - Null reference are injected with @Bind(optional=false) method on iPOJO components
* [FELIX-3918] - iPOJO Logger cannot be dynamically configured on Equinox and KF
* [FELIX-3919] - iPOJO Proxies strategy cannot be configured dynamically on Equinox and KF
* [FELIX-3920] - Creation Strategy does not work on KF3
* [FELIX-3974] - Properties cannot be set as immutable using annotations
* [FELIX-3995] - Missing options in Bind annotation
* [FELIX-4041] - Properties starting with . should not be propagated
* [FELIX-4048] - @Requires handler does not fail when no specification can be found
* [FELIX-4053] - Avoid @StaticServiceProperty to be used on classes
* [FELIX-4054] - Use current factory version to generate instance name if required
** Improvement
* [FELIX-3860] - factories and instances iPOJO gogo commands should show the "public=false" instances/factories
* [FELIX-3932] - Allow dependency filter's to get context-source variables
* [FELIX-4040] - Implement config admin support to handle binding location properly
* [FELIX-4045] - Chain Exceptions when possible
** New Feature
* [FELIX-4034] - Instance configuration DSL
** Task
* [FELIX-3892] - Upgrade runtime codebase to Java 5
* [FELIX-3903] - Migrate tests to pax exam 3
* [FELIX-3921] - Update pom to latest Felix's parent
* [FELIX-3948] - Define a new extender model
* [FELIX-3978] - Check that we don't use java 6+ API
** Wish
* [FELIX-3926] - Provide metadata for the Extender namespace
Changes from the 1.8.4 to 1.8.6
-------------------------------
** Bug
* [FELIX-3742] - Implementing class fails to load unless super interface's (interface extended by implemented interface) package is imported.
* [FELIX-3789] - Deadlock due to synchronization on INSTANCE_NAME
* [FELIX-3819] - The export directive of iPOJO is wrong
Changes from the 1.8.2 to 1.8.4
--------------------------------
** Bug
* [FELIX-3451] - "instance.name" attribute not recognized
* [FELIX-3500] - InstanceManager concurrency issue: "A methodID cannot be associated with a method from the POJO class"
* [FELIX-3501] - IPojo FactoryStateListener doesn't get notified while stopping factory
* [FELIX-3545] - Memory leak when unregistering a component used by an aggregate dependency with an unbind callback
* [FELIX-3548] - Concurrent access during startup
* [FELIX-3567] - iPOJO Configuration Handler should not reuse the dictionary object from the configuration admin
* [FELIX-3576] - iPOJO fails when using constructor injection and expecting BundleContext in ctor
* [FELIX-3599] - Problem with 'subservice action="instantiate"' in ipojo composite
* [FELIX-3621] - Two dimensional array as argument to a method in a component
* [FELIX-3672] - Potential Concurrent Modification Exception when a bundle is stopped
** Improvement
* [FELIX-3560] - Extensions to IPojo's Factory and ComponentInstance documentation for custom handlers
Version 1.8.2
-------------
* Initial release