annotate contrib/packagelib.sh @ 32250:8a137ef6e5da

verify: always check rawsize Previously, verify only checks "rawsize == len(rawtext)", if "len(fl.read()) != fl.size()". With flag processor, "len(fl.read()) != fl.size()" does not necessarily mean "rawsize == len(rawtext)". So we may miss a useful check. This patch removes the "if len(fl.read()) != fl.size()" condition so the rawsize check is always performed. With the condition removed, "fl.read(n)" looks unnecessary so a comment was added to explain the side effect is wanted.
author Jun Wu <quark@fb.com>
date Thu, 11 May 2017 14:52:02 -0700
parents 13f90dde8f8c
children 9dccaff02ad5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26833
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
1 # Extract version number into 4 parts, some of which may be empty:
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
2 #
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
3 # version: the numeric part of the most recent tag. Will always look like 1.3.
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
4 #
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
5 # type: if an rc build, "rc", otherwise empty
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
6 #
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
7 # distance: the distance from the nearest tag, or empty if built from a tag
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
8 #
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
9 # node: the node|short hg was built from, or empty if built from a tag
24972
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
10 gethgversion() {
29641
13f90dde8f8c packagelib: do not remove packages directory in hggetversion (issue5262)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 26833
diff changeset
11 make cleanbutpackages
24972
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
12 make local || make local PURE=--pure
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
13 HG="$PWD/hg"
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
14
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
15 $HG version > /dev/null || { echo 'abort: hg version failed!'; exit 1 ; }
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
16
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
17 hgversion=`$HG version | sed -ne 's/.*(version \(.*\))$/\1/p'`
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
18
26833
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
19 if echo $hgversion | grep + > /dev/null 2>&1 ; then
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
20 tmp=`echo $hgversion | cut -d+ -f 2`
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
21 hgversion=`echo $hgversion | cut -d+ -f 1`
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
22 distance=`echo $tmp | cut -d- -f 1`
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
23 node=`echo $tmp | cut -d- -f 2`
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
24 else
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
25 distance=''
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
26 node=''
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
27 fi
24972
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
28 if echo $hgversion | grep -- '-' > /dev/null 2>&1; then
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
29 version=`echo $hgversion | cut -d- -f1`
26833
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
30 type=`echo $hgversion | cut -d- -f2`
24972
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
31 else
26833
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
32 version=$hgversion
6474b64045fb packaging: rework version detection and declaration (issue4912)
Augie Fackler <augie@google.com>
parents: 24972
diff changeset
33 type=''
24972
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
34 fi
56c64c91b429 packaging: extract packagelib for common code from builddeb and buildrpm
Augie Fackler <augie@google.com>
parents:
diff changeset
35 }