Checkout Tools
  • last updated 1 hour ago
Constraints: committers
Constraints: files
Constraints: dates
[FELIX-4525] Integrate the standalone resolver in the framework
  1. … 12 more files in changeset.
[FELIX-4353] Remove special BREE checking

BREE checking is now done through generic capabilities and requirements, as required by the Core R5 spec (see commit r1560317). Therefore the special BREE checking code can be removed, which is what this commit does.

  1. … 2 more files in changeset.
Apply patch (FELIX-4284) to remove unneeded code.

Port improved FELIX-3465 patch from resolver to framework.

Move framework to OSGi R5 API. (FELIX-3504)

  1. … 91 more files in changeset.
Apply patch to avoid calculating package space more than once. (FELIX-3465)

  1. … 1 more file in changeset.
Apply patch (FELIX-3447) to introduce specific immutable collections.

  1. … 8 more files in changeset.
Modify resolver implementation to not use BundleRequirement.matches()

since this is not present in the OBR resolver API. (FELIX-3394)

  1. … 1 more file in changeset.
Refactor internal resolver APIs to align with upcoming OSGi resolver spec. (FELIX-3394)

  1. … 4 more files in changeset.
When populating candidates, we need to check for a failed result

after recursing since cycles may cause the resolving revision to

fail in a deeper recursion. We weren't checking this previously,

which caused us to ignore failures in some cases. (FELIX-3178)

  1. … 1 more file in changeset.
Make sure we wrap capabilities pulled from BundleWiring when calculating

package sources. (FELIX-3178)

Framework should filter removal-pending revisions for fragments,

not the resolver. (FELIX-3141)

  1. … 1 more file in changeset.
Refactor some unnecessary resolver code. (FELIX-3138)

The case of dynamically importing from a fragment was not correctly

handled when we previously refactored the code so that we don't

synthesize capabilities for attached fragments on the host. I refactored

this code to avoid duplication and to ensure that the normal path

and the dynamic import path are resolved the same way. (FELIX-2950)

Move singleton selection back into the resolver state, in preparation

for implementing resolver hook singleton selection. (FELIX-2986)

  1. … 4 more files in changeset.
No longer need impl-specific API to determine removal pending. (FELIX-2950)

  1. … 1 more file in changeset.
Resolver was not correctly calculating reexported packages, nor handling uses

constraints from reexported packages properly. (FELIX-3059)

Move checking of mandatory revisions into the Candidates.prepare() method, since

it must always be done after a prepare. (FELIX-2950)

Refactor resolver to simplify/unify entry points; no longer differentiate

between a single root resolve and multiple root resolves. (FELIX-2950)

  1. … 4 more files in changeset.
Use singleton maps. (FELIX-2950)

  1. … 3 more files in changeset.
Removed impl-specific method for getting fragments and added a

utility method to get fragments using standard API, along with

other minor clean up. (FELIX-2950)

  1. … 8 more files in changeset.
No longer need to try to resolve during class loading, since

this is now done before (except for dynamic imports). (FELIX-2950)

  1. … 2 more files in changeset.
Some resolver cleanup. (FELIX-2950)

Missed one dynamic constants. (FELIX-2950)

Remove unneeded comment.

Add missing R4.3 RESOLUTION_DYNAMIC constants. (FELIX-2950)

  1. … 2 more files in changeset.
Need to check for require-bundle cycles when merging require-bundle candidates

into a bundle revision's package space. (FELIX-3062)

Wires for dynamic imports should use the declared requirement object,

not a synthesized one. Also, we can simplify how we populate the wire

map for a dynamic import. (FELIX-2950)

Create hash set on demand for fragment caps. (FELIX-2950)

Need to deal with the fact that hosted fragment capabilities are no longer

wrapped. This impacts indexing of capabilities and also impacts finding

candidates. For the former, we only index fragment capabilities and ignore

them from the host. For the latter, when we come across a candidate from

a fragment we also insert synthesized candidates for any hosts to which

the fragment is attached. (FELIX-2950)

  1. … 1 more file in changeset.