Bug 220087 - ports-mgmt/portlint should NOT warn about old TIMESTAMPS
Summary: ports-mgmt/portlint should NOT warn about old TIMESTAMPS
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Joe Marcus Clarke
Depends on: 212091
  Show dependency treegraph
Reported: 2017-06-17 22:24 UTC by Bryan Drewery
Modified: 2017-07-22 01:52 UTC (History)
4 users (show)

See Also:
bugzilla: maintainer-feedback? (marcus)


Note You need to log in before you can comment on or make changes to this bug.
Description Bryan Drewery freebsd_committer 2017-06-17 22:24:08 UTC
+++ This bug was initially created as a clone of Bug #212091 +++

WARN: /poudriere/data/.m/exp-10amd64-commit-test/ref/usr/ports/devel/py-enum34/distinfo: [1]: TIMESTAMP is over 30 days old

There's no reason to have this warning.
It implicitly encourages a user to update the TIMESTAMP which is the
opposite of the point of the field.  The field is intended for reproducible build work.  It should not be getting modified unless the distinfo is actually
being updated.
Comment 1 Ed Maste freebsd_committer 2017-06-18 16:48:27 UTC
Indeed, TIMESTAMP came in to support reproducible builds, and the intent is to have some timestamp to use for setting metadata in the produced package archive or other cases where a date is required. If the distfiles haven't changed then the TIMESTAMP doesn't need to, either.
Comment 2 Bryan Drewery freebsd_committer 2017-06-18 17:00:41 UTC
I think there is some useful kind of warning that could be made here though.  It might
have to involve SVN; if the distinfo file is actually updated then the TIMESTAMP
needs to be as well.  I'm not sure how to properly get that information without
SVN / git -- and then there's portsnap.
At the very least if TIMESTAMP is missing in distinfo then the user should be
instructed to use 'make makesum' or to add a valid TIMESTAMP from `date +%s`.
There are times where a porter has to manually mess with distinfo to deal with
optional distfiles and may need to manually update the TIMESTAMP like this.
Comment 3 Mathieu Arnold freebsd_committer 2017-06-18 17:05:59 UTC
I think all this check should be removed from portlint.

Why you might ask?

There is no need to have a TIMESTAMP line in old ports, because there is a default value somewhere in Mk. (Or there is in the patch for reproducible builds.)
You cannot commit to a distinfo file if it does not have a TIMESTAMP line. (There is a commit hook that will prevent it.)
Comment 4 commit-hook freebsd_committer 2017-07-22 01:52:33 UTC
A commit references this bug:

Author: marcus
Date: Sat Jul 22 01:51:45 UTC 2017
New revision: 446351
URL: https://svnweb.freebsd.org/changeset/ports/446351

  Update to 2.17.10.

  * Remove the other check for conflicts that are too broad [1]
  * Remove the check for portlint that is more than 30 days old [2]
  * Check to see uf USE_* comes before USES [3]

  PR:		220087 [2]
  		220340 [3]
  Reminded by:	dbaio [1]

Comment 5 Joe Marcus Clarke freebsd_committer 2017-07-22 01:52:50 UTC
Fixed in 2.17.10.