crystal-lang / distribution-scripts

40 stars 23 forks source link

Remove libatomic_ops dependency #143

Closed straight-shoota closed 2 years ago

straight-shoota commented 2 years ago

libatomic_ops is no longer required for building bdwgc starting with 8.0.0. We're using newer versions now, so there's no need to pull in libatomic_ops.

straight-shoota commented 2 years ago

CI running at https://app.circleci.com/pipelines/github/crystal-lang/crystal?branch=ci%2Fremove-libatomic_ops

straight-shoota commented 2 years ago

CI shows a lot of failures. Most of them are unrelated to this PR (https://github.com/crystal-lang/crystal/issues/11275, and the known issues with i386 and alpine).

I don't know what's going on with the dist_linux job: https://app.circleci.com/pipelines/github/crystal-lang/crystal/6937/workflows/721b58ad-2c44-432e-998f-580b2c579f57/jobs/64226

Step 7/17 : RUN curl https://ftp.pcre.org/pub/pcre/pcre-${libpcre_version}.tar.gz | tar -zx  && cd pcre-${libpcre_version}  && ./configure --disable-shared --disable-cpp --enable-jit --enable-utf --enable-unicode-properties  && make -j$(nproc)
 ---> Running in 0526008b18b2
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0100   162  100   162    0     0    285      0 --:--:-- --:--:-- --:--:--   285

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
The command '/bin/sh -c curl https://ftp.pcre.org/pub/pcre/pcre-${libpcre_version}.tar.gz | tar -zx  && cd pcre-${libpcre_version}  && ./configure --disable-shared --disable-cpp --enable-jit --enable-utf --enable-unicode-properties  && make -j$(nproc)' returned a non-zero code: 2
make: *** [build/bundled-libs.tar] Error 2

Looks like the download is failing. I can't reproduce that locally. But it appears to be consistens in CI.

straight-shoota commented 2 years ago

CI workflow run: https://app.circleci.com/pipelines/github/crystal-lang/crystal/6973/workflows/5d61c743-fa8a-451d-96bb-7d85598bee4c

straight-shoota commented 2 years ago

There were a couple of failures in CI, but none seem to be directly related to this change. The obvious i386 failures can be entirely ignored.

beta-ziliani commented 2 years ago

maybe the name of the branch is a problem for macOS?

The `version' component of Mac package names can only include alphabetical characters (a-z, A-Z), numbers (0-9), dots  (.), plus signs (+), and dashes (-). Converting `ci-remove-libatomic_ops-dev' to `ci-remove-libatomic-ops-dev
bcardiff commented 2 years ago

I couldn't find documentation about whether or not _ is allowed, but the git branch name is used to determine the snap branch in https://github.com/crystal-lang/crystal/blob/master/.circleci/config.yml#L237-L238 there we replace /, we can do the same to allow branches with _.

straight-shoota commented 2 years ago

I added a change to fix the branch name sanitation: https://github.com/crystal-lang/crystal/commit/ca0db735114da3d18710cf6c2724e7b821c4021a

Now the previously failing CI jobs succeed: https://app.circleci.com/pipelines/github/crystal-lang/crystal/6981/workflows/94c27061-f6c0-4e12-b58b-252c9a03c39d

Thanks for the pointers :+1:

straight-shoota commented 2 years ago

New workflow run: https://app.circleci.com/pipelines/github/crystal-lang/crystal/6985/workflows/e1782fa7-55e3-439c-9de8-d89c1dec9c2e

straight-shoota commented 2 years ago

Integration workflow is still all geen: https://app.circleci.com/pipelines/github/crystal-lang/crystal/7602/workflows/445f6074-771e-4a44-9264-253cdcd9c6c0