Message ID | 20191025092104.1164-1-heiko.thiery@gmail.com |
---|---|
State | Not Applicable |
Headers | show |
Series | [v2,1/1] check-package: add version format check | expand |
Hello Heiko, On Fri, 25 Oct 2019 11:21:04 +0200 Heiko Thiery <heiko.thiery@gmail.com> wrote: > From: Heiko Thiery <heiko.thiery@kontron.com> > > To meet the requirement of "Anitya", the tool used by > https://release-monitoring.org/, the <pkg>_VERSION variable > should not contain a prefix 'v'. > > Signed-off-by: Heiko Thiery <heiko.thiery@kontron.com> The implementation looks good, but we cannot apply this patch now, because a number of packages cause this check to fail: package/mcelog/mcelog.mk:7: remove 'v' prefix from v153 of variable MCELOG_VERSION and add to MCELOG_SITE package/pru-software-support/pru-software-support.mk:7: remove 'v' prefix from v5.1.0 of variable PRU_SOFTWARE_SUPPORT_VERSION and add to PRU_SOFTWARE_SUPPORT_SITE package/dt-utils/dt-utils.mk:7: remove 'v' prefix from v2019.01.0 of variable DT_UTILS_VERSION and add to DT_UTILS_SITE package/dt/dt.mk:7: remove 'v' prefix from v18.32 of variable DT_VERSION and add to DT_SITE package/gstreamer1/gst1-shark/gst1-shark.mk:7: remove 'v' prefix from v0.6.1 of variable GST1_SHARK_VERSION and add to GST1_SHARK_SITE package/gstreamer1/gst1-plugins-bayer2rgb-neon/gst1-plugins-bayer2rgb-neon.mk:7: remove 'v' prefix from v0.3 of variable GST1_PLUGINS_BAYER2RGB_NEON_VERSION and add to GST1_PLUGINS_BAYER2RGB_NEON_SITE package/perl-net-snmp/perl-net-snmp.mk:7: remove 'v' prefix from v6.0.1 of variable PERL_NET_SNMP_VERSION and add to PERL_NET_SNMP_SITE package/linux-zigbee/linux-zigbee.mk:7: remove 'v' prefix from v0.3.1 of variable LINUX_ZIGBEE_VERSION and add to LINUX_ZIGBEE_SITE package/spidev_test/spidev_test.mk:14: remove 'v' prefix from v4.10 of variable SPIDEV_TEST_VERSION and add to SPIDEV_TEST_SITE package/spidev_test/spidev_test.mk:17: remove 'v' prefix from v3.0 of variable SPIDEV_TEST_VERSION and add to SPIDEV_TEST_SITE package/flannel/flannel.mk:7: remove 'v' prefix from v0.5.5 of variable FLANNEL_VERSION and add to FLANNEL_SITE package/flatbuffers/flatbuffers.mk:7: remove 'v' prefix from v1.11.0 of variable FLATBUFFERS_VERSION and add to FLATBUFFERS_SITE package/python-scapy3k/python-scapy3k.mk:7: remove 'v' prefix from v0.18 of variable PYTHON_SCAPY3K_VERSION and add to PYTHON_SCAPY3K_SITE package/softether/softether.mk:7: remove 'v' prefix from v4.28-9669-beta of variable SOFTETHER_VERSION and add to SOFTETHER_SITE Until we fix those, we cannot add your patch as otherwise our CI would be complaining all day long. Thomas
> The implementation looks good, but we cannot apply this patch now, > because a number of packages cause this check to fail: > > package/mcelog/mcelog.mk:7: remove 'v' prefix from v153 of variable MCELOG_VERSION and add to MCELOG_SITE > package/pru-software-support/pru-software-support.mk:7: remove 'v' prefix from v5.1.0 of variable PRU_SOFTWARE_SUPPORT_VERSION and add to PRU_SOFTWARE_SUPPORT_SITE > package/dt-utils/dt-utils.mk:7: remove 'v' prefix from v2019.01.0 of variable DT_UTILS_VERSION and add to DT_UTILS_SITE > package/dt/dt.mk:7: remove 'v' prefix from v18.32 of variable DT_VERSION and add to DT_SITE > package/gstreamer1/gst1-shark/gst1-shark.mk:7: remove 'v' prefix from v0.6.1 of variable GST1_SHARK_VERSION and add to GST1_SHARK_SITE > package/gstreamer1/gst1-plugins-bayer2rgb-neon/gst1-plugins-bayer2rgb-neon.mk:7: remove 'v' prefix from v0.3 of variable GST1_PLUGINS_BAYER2RGB_NEON_VERSION and add to GST1_PLUGINS_BAYER2RGB_NEON_SITE > package/perl-net-snmp/perl-net-snmp.mk:7: remove 'v' prefix from v6.0.1 of variable PERL_NET_SNMP_VERSION and add to PERL_NET_SNMP_SITE > package/linux-zigbee/linux-zigbee.mk:7: remove 'v' prefix from v0.3.1 of variable LINUX_ZIGBEE_VERSION and add to LINUX_ZIGBEE_SITE > package/spidev_test/spidev_test.mk:14: remove 'v' prefix from v4.10 of variable SPIDEV_TEST_VERSION and add to SPIDEV_TEST_SITE > package/spidev_test/spidev_test.mk:17: remove 'v' prefix from v3.0 of variable SPIDEV_TEST_VERSION and add to SPIDEV_TEST_SITE > package/flannel/flannel.mk:7: remove 'v' prefix from v0.5.5 of variable FLANNEL_VERSION and add to FLANNEL_SITE > package/flatbuffers/flatbuffers.mk:7: remove 'v' prefix from v1.11.0 of variable FLATBUFFERS_VERSION and add to FLATBUFFERS_SITE > package/python-scapy3k/python-scapy3k.mk:7: remove 'v' prefix from v0.18 of variable PYTHON_SCAPY3K_VERSION and add to PYTHON_SCAPY3K_SITE > package/softether/softether.mk:7: remove 'v' prefix from v4.28-9669-beta of variable SOFTETHER_VERSION and add to SOFTETHER_SITE > > Until we fix those, we cannot add your patch as otherwise our CI would > be complaining all day long. I hope this will help to fix this packages. Thank you
Heiko, Thomas, On Sat, Oct 26, 2019 at 8:58 AM Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > > Hello Heiko, > > On Fri, 25 Oct 2019 11:21:04 +0200 > Heiko Thiery <heiko.thiery@gmail.com> wrote: > > > From: Heiko Thiery <heiko.thiery@kontron.com> > > > > To meet the requirement of "Anitya", the tool used by > > https://release-monitoring.org/, the <pkg>_VERSION variable > > should not contain a prefix 'v'. > > > > Signed-off-by: Heiko Thiery <heiko.thiery@kontron.com> > > The implementation looks good, but we cannot apply this patch now, > because a number of packages cause this check to fail: > I've sent all but the GIT site method pkgs (mcelog / dt-utils / gst1-shark / linux-zigbee) as I need to find an example or look at the pkg logic to see how we're updating those. Regards, Matt
Thomas, On Sun, Oct 27, 2019 at 1:57 AM Matthew Weber <matthew.weber@rockwellcollins.com> wrote: > > Heiko, Thomas, > > On Sat, Oct 26, 2019 at 8:58 AM Thomas Petazzoni > <thomas.petazzoni@bootlin.com> wrote: > > > > Hello Heiko, > > > > On Fri, 25 Oct 2019 11:21:04 +0200 > > Heiko Thiery <heiko.thiery@gmail.com> wrote: > > > > > From: Heiko Thiery <heiko.thiery@kontron.com> > > > > > > To meet the requirement of "Anitya", the tool used by > > > https://release-monitoring.org/, the <pkg>_VERSION variable > > > should not contain a prefix 'v'. > > > > > > Signed-off-by: Heiko Thiery <heiko.thiery@kontron.com> > > > > The implementation looks good, but we cannot apply this patch now, > > because a number of packages cause this check to fail: > > > > I've sent all but the GIT site method pkgs (mcelog / dt-utils / > gst1-shark / linux-zigbee) as I need to find an example or look at the > pkg logic to see how we're updating those. > Once http://patchwork.ozlabs.org/project/buildroot/list/?series=138984 is applied, we're left with these GIT site method pkgs to fix. Yann and I tested the proposed approach to support GIT (http://code.bulix.org/9l2dfi-927848?raw) but we run into a variable expansion issue which would require pkg-generic.mk to inplace expand the $(PKG)_DL_VERSION..... package/dt-utils/dt-utils.mk:7: remove 'v' prefix from v2019.01.0 of variable DT_UTILS_VERSION and add to DT_UTILS_SITE package/gstreamer1/gst1-shark/gst1-shark.mk:7: remove 'v' prefix from v0.6.1 of variable GST1_SHARK_VERSION and add to GST1_SHARK_SITE package/portaudio/portaudio.mk:7: remove 'v' prefix from v190600_20161030 of variable PORTAUDIO_VERSION and add to PORTAUDIO_SITE Regards, Matt
diff --git a/utils/checkpackagelib/lib_mk.py b/utils/checkpackagelib/lib_mk.py index dd04ffd58f..b04fe370d5 100644 --- a/utils/checkpackagelib/lib_mk.py +++ b/utils/checkpackagelib/lib_mk.py @@ -325,3 +325,23 @@ class VariableWithBraces(_CheckFunction): return ["{}:{}: use $() to delimit variables, not ${{}}" .format(self.filename, lineno), text] + + +class Version(_CheckFunction): + VERSION = re.compile(r"^([A-Z0-9_]+)_VERSION\s*[\+|:|]*=\s*(.*)") + VERSION_FAIL = re.compile("v[0-9]+") + + def check_line(self, lineno, text): + m = self.VERSION.search(text) + + if m is None: + return + + variable, assignment = m.group(1, 2) + + if self.VERSION_FAIL.match(assignment): + return ["{}:{}: remove 'v' prefix from {} of variable {}_VERSION " + "and add to {}_SITE" + .format(self.filename, lineno, assignment, variable, + variable), + text]