This PR provides a mechanism to easily extend TechLag to different package managers (beyond Npm, the already supported one). In a nutshell, every backend can be initialized with a combination of the following parameters: package, version or url, and needs to implement the analyze method (which is in charge of calculating the technical lag.
To show the feasibility of the approach, a backend to assess the technical lag of Npm packages is proposed (it is derived from the previous implementation of TechLag).
This PR provides a mechanism to easily extend
TechLag
to different package managers (beyond Npm, the already supported one). In a nutshell, every backend can be initialized with a combination of the following parameters:package
,version
orurl
, and needs to implement theanalyze
method (which is in charge of calculating the technical lag.To show the feasibility of the approach, a backend to assess the technical lag of Npm packages is proposed (it is derived from the previous implementation of TechLag).