kumquat-buildroot/support
Thomas Petazzoni 2c74d0aabb support/scripts/pkg-stats: add latest upstream version information
This commit adds fetching the latest upstream version of each package
from release-monitoring.org.

The fetching process first tries to use the package mappings of the
"Buildroot" distribution [1]. This mapping mechanism allows to tell
release-monitoring.org what is the name of a package in a given
distribution/build-system. For example, the package xutil_util-macros
in Buildroot is named xorg-util-macros on release-monitoring.org. This
mapping can be seen in the section "Mappings" of
https://release-monitoring.org/project/15037/.

If there is no mapping, then it does a regular search, and within the
search results, looks for a package whose name matches the Buildroot
name.

Even though fetching from release-monitoring.org is a bit slow, using
multiprocessing.Pool has proven to not be reliable, with some requests
ending up with an exception. So we keep a serialized approach, but
with a single HTTPSConnectionPool() for all queries. Long term, we
hope to be able to use a database dump of release-monitoring.org
instead.

From an output point of view, the latest version column:

 - Is green when the version in Buildroot matches the latest upstream
   version

 - Is orange when the latest upstream version is unknown because the
   package was not found on release-monitoring.org

 - Is red when the version in Buildroot doesn't match the latest
   upstream version. Note that we are not doing anything smart here:
   we are just testing if the strings are equal or not.

 - The cell contains the link to the project on release-monitoring.org
   if found.

 - The cell indicates if the match was done using a distro mapping, or
   through a regular search.

[1] https://release-monitoring.org/distro/Buildroot/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-02-06 15:57:09 +01:00
..
config-fragments support/config-fragments: add RISC-V 32-bit to autobuild configs 2019-01-10 21:30:21 +01:00
dependencies infra: add force build flag for host dependencies 2019-02-04 15:52:44 +01:00
docker support/docker: use the distro-provided flake8 2018-06-17 20:54:02 +02:00
download support/download/scp: fix download with scheme prefix 'scp://' 2019-02-05 20:32:53 +01:00
gnuconfig support/gnuconfig: bump version to 2016-05-15 2016-06-05 22:26:57 +02:00
kconfig support/kconfig/merge_config.sh: avoid false positive matches from comment lines 2018-11-24 10:11:15 +01:00
legal-info legal-info: add hash for our own license file 2017-07-05 16:31:40 +02:00
libtool support/libtool: add patch for newer versions 2014-12-21 13:21:56 +01:00
misc infra/pkg-cmake: use an obviously-invalid value for CMAKE_SYSTEM_VERSION 2019-01-16 23:19:09 +01:00
scripts support/scripts/pkg-stats: add latest upstream version information 2019-02-06 15:57:09 +01:00
testing testing/tests/download: test git special ref 2019-02-06 11:13:20 +01:00