Closed tianon closed 1 year ago
Made some tiny hacks to my local generate-stackbrew-library.sh
(since it looks at the remote dist-*
branches for the supported architectures lists), and managed to generate the following diff to demonstrate the effects of this change:
$ diff -u --color <(bashbrew cat busybox) <(bashbrew cat <(./generate-stackbrew-library.sh))
--- /dev/fd/63 2023-01-04 13:14:36.355494132 -0800
+++ /dev/fd/62 2023-01-04 13:14:36.355494132 -0800
@@ -1,6 +1,6 @@
Maintainers: Tianon Gravi <admwiggin@gmail.com> (@tianon), Joseph Ferguson <yosifkit@gmail.com> (@yosifkit)
GitRepo: https://github.com/docker-library/busybox.git
-GitCommit: fc0294a74da0206958940ac75c2dfbdd95fc07a5
+GitCommit: c7a767edfab481398176baca5cd3d799fe82b3ff
amd64-GitCommit: 31d342ad033e27c18723a516a2274ab39547be27
amd64-GitFetch: refs/heads/dist-amd64
arm32v5-GitCommit: 96ea82ea25565f78b50bd032d5768d64985d6e11
@@ -22,52 +22,52 @@
s390x-GitCommit: a03814d21bcf97767121bb9422a742ec237a09e2
s390x-GitFetch: refs/heads/dist-s390x
-Tags: 1.34.1-glibc, 1.34-glibc, 1-glibc, stable-glibc, glibc
+Tags: 1.36.0-glibc, 1.36-glibc, 1-glibc, unstable-glibc, glibc
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-Directory: stable/glibc
+Directory: latest/glibc
-Tags: 1.34.1-uclibc, 1.34-uclibc, 1-uclibc, stable-uclibc, uclibc
+Tags: 1.36.0-uclibc, 1.36-uclibc, 1-uclibc, unstable-uclibc, uclibc
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, riscv64
-Directory: stable/uclibc
+Directory: latest/uclibc
-Tags: 1.34.1-musl, 1.34-musl, 1-musl, stable-musl, musl
+Tags: 1.36.0-musl, 1.36-musl, 1-musl, unstable-musl, musl
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-Directory: stable/musl
+Directory: latest/musl
-Tags: 1.34.1, 1.34, 1, stable, latest
+Tags: 1.36.0, 1.36, 1, unstable, latest
Architectures: amd64, arm32v5, arm32v6, arm32v7, arm64v8, i386, mips64le, ppc64le, riscv64, s390x
-amd64-Directory: stable/glibc
-arm32v5-Directory: stable/glibc
-arm32v6-Directory: stable/musl
-arm32v7-Directory: stable/glibc
-arm64v8-Directory: stable/glibc
-i386-Directory: stable/glibc
-mips64le-Directory: stable/glibc
-ppc64le-Directory: stable/glibc
-riscv64-Directory: stable/uclibc
-s390x-Directory: stable/glibc
+amd64-Directory: latest/glibc
+arm32v5-Directory: latest/glibc
+arm32v6-Directory: latest/musl
+arm32v7-Directory: latest/glibc
+arm64v8-Directory: latest/glibc
+i386-Directory: latest/glibc
+mips64le-Directory: latest/glibc
+ppc64le-Directory: latest/glibc
+riscv64-Directory: latest/uclibc
+s390x-Directory: latest/glibc
-Tags: 1.36.0-glibc, 1.36-glibc, unstable-glibc
+Tags: 1.35.0-glibc, 1.35-glibc
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-Directory: unstable/glibc
+Directory: latest-1/glibc
-Tags: 1.36.0-uclibc, 1.36-uclibc, unstable-uclibc
+Tags: 1.35.0-uclibc, 1.35-uclibc
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, riscv64
-Directory: unstable/uclibc
+Directory: latest-1/uclibc
-Tags: 1.36.0-musl, 1.36-musl, unstable-musl
+Tags: 1.35.0-musl, 1.35-musl
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-Directory: unstable/musl
+Directory: latest-1/musl
-Tags: 1.36.0, 1.36, unstable
+Tags: 1.35.0, 1.35
Architectures: amd64, arm32v5, arm32v6, arm32v7, arm64v8, i386, mips64le, ppc64le, riscv64, s390x
-amd64-Directory: unstable/glibc
-arm32v5-Directory: unstable/glibc
-arm32v6-Directory: unstable/musl
-arm32v7-Directory: unstable/glibc
-arm64v8-Directory: unstable/glibc
-i386-Directory: unstable/glibc
-mips64le-Directory: unstable/glibc
-ppc64le-Directory: unstable/glibc
-riscv64-Directory: unstable/uclibc
-s390x-Directory: unstable/glibc
+amd64-Directory: latest-1/glibc
+arm32v5-Directory: latest-1/glibc
+arm32v6-Directory: latest-1/musl
+arm32v7-Directory: latest-1/glibc
+arm64v8-Directory: latest-1/glibc
+i386-Directory: latest-1/glibc
+mips64le-Directory: latest-1/glibc
+ppc64le-Directory: latest-1/glibc
+riscv64-Directory: latest-1/uclibc
+s390x-Directory: latest-1/glibc
… based on major.minor releases
This refactor will more closely match how BusyBox does releases -- they always call x.y.0 "unstable" but if it doesn't require any further fixes it never gets a .1 "stable" release (like 1.35 suffered from). Additionally, they don't seem to really ever have more than two simultaneous release branches (but if they did, we could trivially add a new
latest-2
and be covered):See also discussion in https://github.com/docker-library/busybox/issues/127#issuecomment-1370359595