import ssl __all__ = ["PATHS", "FILE_PATTERNS", "VERSIONS_REGEXPS", "VERSIONS"] # This is the root of all paths in this configuration file # It's relative to check-versions path ROOT = ".." # Paths to consider when looking for versions tags # Can be file or directories # Relative to ROOT PATHS = [ "./toolchains", "./workers", "./Makefile" ] # Only path matching one of this glob pattern will be considered FILE_PATTERNS = [ "*.sh", "*.m4", "*.mk" ] # All regular expressions to match: they must have 2 named groups: 'package' and 'version' VERSIONS_REGEXPS = [ # Shell style r"^\s*(?:export )?(?P[A-Za-z0-9_]+)_VERSION=(?P[A-Za-z0-9._-]+)\s*\\?$", # GNU m4 style r"m4_define\(`(?P[A-Za-z0-9_]+)_VERSION',\s*(?P[A-Za-z0-9._-]+)\)", # GNU Make style r"\s*(?P[A-Za-z0-9_]+)_VERSION\s*[:?]?=\s*(?P[A-Za-z0-9._-]+)\s*$", # MXE packages r"\s*(?P)\$\(PKG\)_VERSION\s*[:?]?=\s*(?P[A-Za-z0-9._-]+)\s*$", ] # Some checks are used at multiple places # All of these variables aren't used directly by check-versions # Apple stuff is used for apple-sdks, macosx and iphone cctools_port_check = { 'check': 'git commit', 'repository': 'https://github.com/tpoechtrager/cctools-port.git', 'branch': '1010.6-ld64-951.9', } osxcross_check = { 'check': 'git commit', 'repository': 'https://github.com/tpoechtrager/osxcross.git', 'branch': 'master', } pbzx_check = { 'check': 'git commit', 'repository': 'https://github.com/tpoechtrager/pbzx.git', 'branch': 'master', } xar_check = { 'check': 'git commit', 'repository': 'https://github.com/tpoechtrager/xar.git', 'branch': 'master', } discord_rpc_check = { 'check': 'git tag', 'repository': 'https://github.com/discord/discord-rpc.git', 'prefix': 'v', } libiconv_check = { 'check': 'git tag', 'repository': 'https://git.savannah.gnu.org/git/libiconv.git', 'prefix': 'v', } retrowave_check = { 'check': 'git tag', 'repository': 'https://github.com/SudoMaker/RetroWave.git', 'prefix': 'v', } crosstool_ng_check = { 'check': 'git tag', 'repository': 'https://github.com/crosstool-ng/crosstool-ng.git', 'prefix': 'crosstool-ng-', 'exclude pattern': r'.*-rc\d+$', } # Distributions images checks debian_check = { 'check': 'docker tag', 'registry': 'https://registry-1.docker.io', 'image name': 'library/debian', 'architecture': 'amd64', 'reference': 'bookworm-slim', 'tag_format': 'bookworm-{0}-slim', } raspios_check = { 'check': 'scrape', 'url': 'https://downloads.raspberrypi.org/os_list_imagingutility_v4.json', 'encoding': 'utf-8', 'filter pattern': r'https://.*raspios_armhf-.*-raspios-(?P[^-]+)-armhf.img.xz', 'case insensitive': True, } alpine_check = { 'check': 'docker tag', 'registry': 'https://registry-1.docker.io', 'image name': 'library/alpine', 'architecture': 'amd64', 'reference': 'latest', } # The checks parameter for each version tag # Every entry in the dictionary is keyed by a tuple made of path (relative to ROOT) and package name # Every value is a dictionnary with a 'check' entry specifying the check to use and its parameters VERSIONS = { ('./Makefile', 'BUILDBOT'): { 'check': 'git tag', 'repository': 'https://github.com/buildbot/buildbot.git', 'prefix': 'v', 'exclude pattern': r'.*(b|rc)\d+' }, ('./Makefile', 'BOTTLE'): { 'check': 'git tag', 'repository': 'https://github.com/bottlepy/bottle.git', 'exclude pattern': r'.*(b|rc).*' }, ('./Makefile', 'DOCKER_PY'): { 'check': 'git tag', 'repository': 'https://github.com/docker/docker-py.git', 'pattern': r'[0-9]', 'exclude pattern': r'.*(b|rc).*' }, ('./toolchains/m4/debian-toolchain-base.m4', 'DEBIAN'): debian_check, ('./toolchains/amigaos4/packages/lha/build.sh', 'LHA'): { 'check': 'git commit', 'repository': 'https://github.com/jca02266/lha.git', 'branch': 'master', }, ('./toolchains/amigaos4/packages/libsdl2/build.sh', 'SDL2'): { 'check': 'git tag', 'repository': 'https://github.com/AmigaPorts/SDL-2.0.git', # Remove v and -amigaos4 'prefix': 'v', 'suffix': '-amigaos4', 'exclude pattern': r'.*-rc\d+-.*' }, ('./toolchains/amigaos4/packages/regina-rexx/build.sh', 'REXX'): { 'check': 'svn tag', 'repository': 'https://svn.code.sf.net/p/regina-rexx/code/interpreter/tags/', }, ('./toolchains/amigaos4/packages/toolchain/build.sh', 'TOOLCHAIN'): { 'check': 'git commit', 'repository': 'https://github.com/sba1/adtools.git', 'branch': 'master', }, ('./toolchains/android-common/functions-sdk.sh', 'CMDLINE_TOOLS'): { 'check': 'scrape', 'url': 'https://developer.android.com/studio', 'filter pattern': r'>commandlinetools-linux-(?P\d+)_latest.zip