From nobody Wed Jan 3 23:26:01 2024 X-Original-To: freebsd-current@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4T55SW1dTwz56xPv for ; Wed, 3 Jan 2024 23:26:03 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4T55SV6bNlz4m52; Wed, 3 Jan 2024 23:26:02 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Authentication-Results: mx1.freebsd.org; none Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001) id 862D03C019B; Wed, 3 Jan 2024 23:26:01 +0000 (UTC) Date: Wed, 3 Jan 2024 23:26:01 +0000 From: Brooks Davis To: Jamie Landeg-Jones Cc: brooks@freebsd.org, dvl@freebsd.org, yuri@freebsd.org, freebsd-current@freebsd.org Subject: Re: git repo port issues? Message-ID: References: <202401031913.403JDZBt028036@donotpassgo.dyslexicfish.net> <202401032252.403Mq4qV034510@donotpassgo.dyslexicfish.net> List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202401032252.403Mq4qV034510@donotpassgo.dyslexicfish.net> X-Rspamd-Queue-Id: 4T55SV6bNlz4m52 X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:36236, ipnet:199.48.128.0/22, country:US] On Wed, Jan 03, 2024 at 10:52:04PM +0000, Jamie Landeg-Jones wrote: > Brooks Davis wrote: > > > Nothing about dates is centralized in git, but some server side checks > > could be implemented on CommitDate. IMO we should require that > > CommitDate be >= the previous one and less than "now". > > Ah, I realised Linux doesn't like centralised dates, because of the > decentralisation of git, but I thought that as we grabbed from a > master repo, those commit dates would be in sync. The dates are just strings in the commits. There's no central commit queue to rewrite the commits with new dates. The project could someday implment such a thing, but we deemed anything like that out of scope for the first phase of the migration. I do fine it quite annoying that the project has not implemented a check to monotonize CommitDate. Once upon a time clock drift between commit hosts might have been a concern, but hosts that can't stay in sync have no business committing directly. (I'd even be in favor of requiring the same for Date, effectively requiring rebase --ignore-date before each push, but there's much less concensus for that.) > Anyway, I think some sanity checking would be good. If nothing else, this > sort of thing breaks "git log": > > # git log --since=2023-02-02 --format="%cd %s %cn - %cd" > Wed Jan 3 17:08:58 2024 -0500 editors/cudatext: Update to 1.206.5 Jose Alonso Cardenas Marquez - Wed Jan 3 17:08:58 2024 -0500 > Thu Jan 4 06:59:31 2024 +0900 net/qrcp: update to 0.11.1 Hiroki Tagato - Thu Jan 4 06:59:31 2024 +0900 > Wed Jan 3 16:54:47 2024 -0500 lang/fpc-devel: Update to 3.3.1.20240103 Jose Alonso Cardenas Marquez - Wed Jan 3 16:54:47 2024 -0500 > Wed Jan 3 16:54:46 2024 -0500 lang/fpc: fix stage-qa fails Jose Alonso Cardenas Marquez - Wed Jan 3 16:54:46 2024 -0500 > Wed Jan 3 16:53:33 2024 -0500 sysutils/acpi_call: Check for errors from copyout() Mark Johnston - Wed Jan 3 16:53:33 2024 -0500 > Wed Jan 3 15:37:13 2024 -0600 math/octave-forge-statistics-resampling: Update to 5.5.3. Stephen Montgomery-Smith - Wed Jan 3 15:37:13 2024 -0600 > Wed Jan 3 23:00:58 2024 +0300 math/z3: Unbreak on i386 Gleb Popov - Wed Jan 3 23:00:58 2024 +0300 > Wed Jan 3 20:52:14 2024 +0100 devel/mongo-c-driver: Use USE_GITHUB helper and always use (lib)utf8proc from ports Daniel Engberg - Wed Jan 3 20:52:14 2024 +0100 > Wed Jan 3 22:26:11 2024 +0300 lang/ghc: Unbreak GHC 9.2 on AArch64, refresh bootstraps. Gleb Popov - Wed Jan 3 22:26:11 2024 +0300 > > Note how I specified February 2023, yet the output stops as soon as it > reaches the recent entry with the rogue date. > > That makes the results corrupt, which may affect other things along the line. > > I notice the front page of Freshports doesn't even show the offending entries > in the list of recent commits, for example, whilst the individual port pages > shows the commits in the "wrong" order (i.e. the commits are displayed in > the perceived chronalogical order) Any general git tool or workflow that depends on dates being ordered can not work completely reliably. git log has the --since-as-filter to try to work around this, but even that is questionable since the dates are just a polite fiction without some sort of server-side enforcement. It's more stable and reliable to do something commit based like git log ..HEAD -- Brooks