• Bug#1068750: moment-timezone.js: FTBFS everywhere

    From Santiago Vila@21:1/5 to All on Wed Apr 10 12:50:01 2024
    Package: src:moment-timezone.js
    Version: 0.5.32+dfsg1-2+2021a
    Severity: serious
    Tags: bullseye bookworm trixie sid ftbfs

    Dear maintainer:

    This package currently fails to build from source in all supported distributions.

    make[1]: Leaving directory '/<<PKGBUILDDIR>>'
    dh_clean
    debian/rules binary
    dh binary
    dh_update_autotools_config
    dh_autoreconf
    debian/rules execute_before_dh_auto_configure
    make[1]: Entering directory '/<<PKGBUILDDIR>>'
    # Fail the build if the tzdata package does not match TZVER.
    grep -q '^# version 2023d$' /usr/share/zoneinfo/tzdata.zi
    make[1]: *** [debian/rules:28: execute_before_dh_auto_configure] Error 1 make[1]: Leaving directory '/<<PKGBUILDDIR>>'
    make: *** [debian/rules:24: binary] Error 2
    dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

    See also:

    https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/moment-timezone.js.html

    I'm curious: Does this package embed the information from tzdata into javascript code,
    in such a way that a change in tzdata requires a rebuild?

    I think it would be highly desirable to find a way for this package to do what it's supposed to do without having to fix it in oldstable and stable every year.

    (In fact, I asked Paul Gevers about this, he says that a package which we know for sure that it will fail to build during the support time of the release is RC).

    Thanks.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Santiago Vila@21:1/5 to All on Tue Apr 30 15:10:02 2024
    This is a multi-part message in MIME format.
    # Fail the build if the tzdata package does not match TZVER.
    grep -q '^# version 2023d$' /usr/share/zoneinfo/tzdata.zi

    Yes, this is expected after each update to tzdata.

    I'm curious: Does this package embed the information from tzdata into javascript code,
    in such a way that a change in tzdata requires a rebuild?

    Yes. It is the only way I found to keep the package aligned with tzdata while ensuring it is fully built from source: upstream ships the pre-compiled tzdata information, so I regenerate those files using the tzdata package.

    I think it would be highly desirable to find a way for this package to do what
    it's supposed to do without having to fix it in oldstable and stable every year.

    Without a new upload, I cannot imagine how.. :-/

    (In fact, I asked Paul Gevers about this, he says that a package which we know
    for sure that it will fail to build during the support time of the release is RC).

    It fails to build if tzdata is updated, but it never stops working. It just needs to be updated as often as tzdata is. But if you have a suggestion to make this more automatic, I would love to hear it..

    Sorry, I still don't get it.

    Why does the package build needs to fail if tzdata is updated?

    What happens if we allow the package to be built anyway?
    (as in the attached patch).

    Would the resulting package be broken in any way?

    I have been doing this very repetitive maintenance for years!

    Well, I get that you have to make a new upload so that the package is current. What I don't get is that the package fails to build. At most, it would result in an improved package, not worse. Or maybe I'm missing anything.

    Thanks. LS0tIGEvZGViaWFuL2NvbnRyb2wKKysrIGIvZGViaWFuL2NvbnRyb2wKQEAgLTEwLDYgKzEw LDcgQEAgQnVpbGQtRGVwZW5kczogZGViaGVscGVyLWNvbXBhdCAoPSAxMykKICAsIGRoLXNl cXVlbmNlLW5vZGVqcwogICwgdWdsaWZ5anMKICAsIHRzLW5vZGUgPCFub2NoZWNrPgorICwg dHpkYXRhICg+PSAyMDI0YSkKICAsIHR6ZGF0YS1sZWdhY3kgKD49IDIwMjRhKQogU3RhbmRh cmRzLVZlcnNpb246IDQuNi4yCiBWY3MtQnJvd3NlcjogaHR0cHM6Ly9zYWxzYS5kZWJpYW4u b3JnL2pzLXRlYW0vbW9tZW50LXRpbWV6b25lLmpzCi0tLSBhL2RlYmlhbi9ydWxlcworKysg Yi9kZWJpYW4vcnVsZXMKQEAgLTIzLDEwICsyMyw2IEBAIGFsbDogYmluYXJ5CiAlOgogCWRo ICRACiAKLWV4ZWN1dGVfYmVmb3JlX2RoX2F1dG9fY29uZmlndXJlOgotCSMgRmFpbCB0aGUg YnVpbGQgaWYgdGhlIHR6ZGF0YSBwYWNrYWdlIGRvZXMgbm90IG1hdGNoIFRaVkVSLgotCWdy ZXAgLXEgJ14jIHZlcnNpb24gJChUWlZFUikkJCcgL3Vzci9zaGFyZS96b25laW5mby90emRh dGEuemkKLQogb3ZlcnJpZGVfZGhfYXV0b19idWlsZDogJChUQVJHRVRTKQogCiBleGVjdXRl X2JlZm9yZV9kaF9hdXRvX3Rlc3Q6IHRlc3RzL3pvbmVzL3p1bHUuanMK

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)