Optimizing CRAN sites logic between current and old/archive versions

From: Nuno Teixeira <eduardo_at_freebsd.org>
Date: Sat, 09 Dec 2023 12:18:21 UTC
Hello all,

I'm trying to optimize CRAN sites logic for a faster search of download
sites between a "current" and "archive" packages.

For example,

Latest: 1.6.5
https://cran.r-project.org/src/contrib/vroom_1.6.5.tar.gz

Old: <= 1.6.4
https://cran.r-project.org/src/contrib/00Archive/vroom/vroom_1.6.4.tar.gz

Right now, to get 0.6.4 version, ports will try 9 sites and finally:
MASTER_SITE_CRAN_ARCHIVE+= ${MASTER_SITE_CRAN:S,$,Archive/${PORTNAME}/,}

bsd.sites.mk:
###
.if !defined(IGNORE_MASTER_SITE_CRAN)
MASTER_SITE_CRAN+= \
        https://cloud.r-project.org/%SUBDIR%/ \
        https://stat.ethz.ch/CRAN/%SUBDIR%/ \
        http://cran.utstat.utoronto.ca/%SUBDIR%/ \
        https://cran.csiro.au/%SUBDIR%/ \
        https://mirrors.tuna.tsinghua.edu.cn/CRAN/%SUBDIR%/ \
        http://camoruco.ing.uc.edu.ve/cran/%SUBDIR%/ \
        https://mirror.las.iastate.edu/CRAN/%SUBDIR%/ \
        https://cran.ma.imperial.ac.uk/%SUBDIR%/ \
        https://cran.ism.ac.jp/%SUBDIR%/
.endif

.if !defined(IGNORE_MASTER_SITE_CRAN_ARCHIVE)
MASTER_SITE_CRAN_ARCHIVE+= ${MASTER_SITE_CRAN:S,$,Archive/${PORTNAME}/,}
.endif
###

Any tips of a better logic for this?

Thanks,

-- 
Nuno Teixeira
FreeBSD Committer (ports)