[SERVER-53494] libdeps graph linter: public deps efficiency threshold Created: 22/Dec/20  Updated: 02/Sep/22  Resolved: 16/Aug/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major - P3
Reporter: Daniel Moody Assignee: Mitch Wagner (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Sprint: Dev Platform 2022-07-25
Participants:

 Description   

The transitive tree of edges created by a public libdeps declaration may be added to many link lines but not actually used.

A given public libdep can be given an efficiency percentage calculated by (the number of transitive edges that really need the link)/(the number of edges in that transitive tree).

 

First we should implement a query so that for a given node, you can print the efficiency of all direct public libdeps on that node. 

 

We should then also implement a linter which checks all direct public libdeps edges efficiency percentages, and if a percentage is below a given threshold it is reported. It may be that it is desirable that a node which has, say for example a %2 percent efficiency and is actually needed in only two link lines, but is transitively added to 100 link lines, would instead just use two LIBDEPS_PRIVATE links where needed.

 

 

 


Generated at Thu Feb 08 05:31:05 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.