GoogleCloudPlatform / GoogleCloudPlatform/cloud-opensource-java

Document how to treat ordering of members in BOM

Offen
#311 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
documentation enhancement p3
Vorherrschende Sprache
Java
Sterne
163
Forks
80
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Document how to treat ordering of members in BOM. Users may pick up arbitrary order of BOM members.

Assume there's A, B and C in BOM where
- Class path `A.jar:B.jar:C.jar` generates zero static linkage errors
- Class path `B.jar:A.jar:C.jar` generates 1 static linkage error

What should a static linkage check say about the situation?

# Option 0
Advice BOM users to follow an order.

# Option 1
Run static linkage check on all permutation. Too expensive.

# Option 2
Given a reference, check all available jar files that contains the referent class. For each version of jar, check compatibility
This will generate false positives.

# Option 3
Round-robin table (pair-wise comparison) #168. Something similar to
[Cloud Opensource Python: Compatibility Grid](https://googlecloudplatform.github.io/cloud-opensource-python/grid.html)

Note that when we do pair-wise comparison, the dependency tree of each cell needs to use managed dependency as if it's fetching them via BOM.

![image](https://user-images.githubusercontent.com/28604/53898765-c0321580-4006-11e9-84b7-d4572fdc3464.png)

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.