Skip to content

libheif: 1.15.2 -> 1.17.5#254708

Closed
kashw2 wants to merge 1 commit intoNixOS:stagingfrom
kashw2:libheif
Closed

libheif: 1.15.2 -> 1.17.5#254708
kashw2 wants to merge 1 commit intoNixOS:stagingfrom
kashw2:libheif

Conversation

@kashw2
Copy link
Contributor

@kashw2 kashw2 commented Sep 12, 2023

Description of changes

fixes #254500

added cmake as a nativeBuildInput
removed autoreconfHook as upstream removed almost all of their automake and autoconf usages after strukturag/libheif#726
added libwebp to buildInputs

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.11 Release Notes (or backporting 23.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

@kashw2 kashw2 changed the base branch from master to staging September 12, 2023 09:38
@kashw2 kashw2 requested a review from a user September 12, 2023 09:38
@github-actions github-actions bot added 6.topic: qt/kde Object-oriented framework for GUI creation 6.topic: kernel The Linux kernel 6.topic: golang Go is a high-level general purpose programming language that is statically typed and compiled. 6.topic: vim Advanced text editor 6.topic: nodejs Node.js is a free, open-source, cross-platform JavaScript runtime environment labels Sep 12, 2023
@kashw2 kashw2 force-pushed the libheif branch 2 times, most recently from 7dfd5bc to c6407e1 Compare September 12, 2023 09:39
@github-actions github-actions bot removed 6.topic: qt/kde Object-oriented framework for GUI creation 6.topic: kernel The Linux kernel 6.topic: golang Go is a high-level general purpose programming language that is statically typed and compiled. 6.topic: vim Advanced text editor 6.topic: nodejs Node.js is a free, open-source, cross-platform JavaScript runtime environment labels Sep 12, 2023
@ofborg ofborg bot requested a review from gebner September 12, 2023 09:41
@ofborg ofborg bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 501-1000 This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 501-1000 This PR causes many rebuilds on Linux and should normally target the staging branches. labels Sep 12, 2023
@kashw2
Copy link
Contributor Author

kashw2 commented Sep 12, 2023

Sorry for some of the pings if they're not correct. I'd originally made the branch targeting master and swapped it to staging after realizing downstream had ~500 packages that'd be affected by this update.

GitHub then requested reviews from you all before I'd correctly rebased the branch upon staging.

Copy link
Member

@FliegendeWurst FliegendeWurst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kashw2 kashw2 changed the title libheif: 1.15.2 -> 1.16.2 libheif: 1.15.2 -> 1.17.1 Oct 24, 2023
@kashw2 kashw2 requested a review from teto as a code owner October 24, 2023 05:32
@github-actions github-actions bot removed the 6.topic: lib The Nixpkgs function library label Oct 24, 2023
@ofborg ofborg bot added 10.rebuild-darwin: 1001-2500 This PR causes many rebuilds on Darwin and should most likely target the staging branches. and removed 10.rebuild-darwin: 501-1000 This PR causes many rebuilds on Darwin and should normally target the staging branches. labels Oct 24, 2023
@kashw2
Copy link
Contributor Author

kashw2 commented Oct 24, 2023

Updated to 1.17.1

Copy link
Member

@FliegendeWurst FliegendeWurst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • passthru.tests build sucessfully on x64 linux

@kalbasit
Copy link
Member

Building locally on my aarch64-darwin M2 machine. If all is good, will merge into staging.

@kalbasit
Copy link
Member

Unfortunately, it's breaking llvm on aarch64-darwin

Nix build fail message

nix build .#libheif
[1/0/1007 built, 102 copied (2007.6/2007.9 MiB), 473.4 MiB DL] building MacOSX-SDK-11.0.0 (fixupPhase): fixupPhase completed in 39 s
[12/177/1007 built, 102 copied (2007.6/2007.9 MiB), 473.4 MiB DL] building pcre2-10.42 (unpackPhase): unpacking source
error: builder for '/nix/store/gdbjh0n2mg0s9cfyxr639mib790mw3gc-llvm-16.0.6.drv' failed with exit code 1;
       last 10 log lines:
       >
       > Testing Time: 990.88s
       >   Skipped          :     7
       >   Unsupported      :  2065
       >   Passed           : 51351
       >   Expectedly Failed:   175
       >   Failed           :     1
       > FAILED: CMakeFiles/check-all /tmp/nix-build-llvm-16.0.6.drv-0/llvm-src-16.0.6/llvm/build/CMakeFiles/check-all
       > cd /tmp/nix-build-llvm-16.0.6.drv-0/llvm-src-16.0.6/llvm/build && /nix/store/m4bw81ika0ja5rfag7wwhp6xrrlbv35w
-python3-3.11.6-env/bin/python3.11 /tmp/nix-build-llvm-16.0.6.drv-0/llvm-src-16.0.6/llvm/build/./bin/llvm-lit -svj12 -
-no-progress-bar --param polly_site_config=/tmp/nix-build-llvm-16.0.6.drv-0/llvm-src-16.0.6/llvm/build/tools/polly/tes
t/lit.site.cfg --param polly_unit_site_config=/tmp/nix-build-llvm-16.0.6.drv-0/llvm-src-16.0.6/llvm/build/tools/polly/
test/Unit/lit.site.cfg /tmp/nix-build-llvm-16.0.6.drv-0/llvm-src-16.0.6/llvm/build/tools/polly/test /tmp/nix-build-llv
m-16.0.6.drv-0/llvm-src-16.0.6/llvm/build/utils/lit /tmp/nix-build-llvm-16.0.6.drv-0/llvm-src-16.0.6/llvm/build/test
       > ninja: build stopped: subcommand failed.
       For full logs, run 'nix log /nix/store/gdbjh0n2mg0s9cfyxr639mib790mw3gc-llvm-16.0.6.drv'.
error: 1 dependencies of derivation '/nix/store/a2wmmqp9024dbj2k74c7gq54wza6wp2q-cctools-binutils-darwin-16.0.6-973.0.
1.drv' failed to build
error: 1 dependencies of derivation '/nix/store/p4i672gaf33v9pxk4xi8jklyp72cwi81-cctools-binutils-darwin-16.0.6-973.0.
1.drv' failed to build
error: 1 dependencies of derivation '/nix/store/rz0r4ncii6hndfwy3jj2r5pdzmwhq5mp-cctools-llvm-16.0.6-973.0.1.drv' fail
ed to build
error: 1 dependencies of derivation '/nix/store/hhxja5fkr4ppq7bwcnrz7y0mnlir2hsz-clang-16.0.6.drv' failed to build
error: 1 dependencies of derivation '/nix/store/a0p6lcjmq6bgx01a2ry5q481p0wmw6mx-compiler-rt-libc-16.0.6.drv' failed t
o build
error: 1 dependencies of derivation '/nix/store/pdyi4rfw2xkk1558z9zyhgdjqziz0r06-bootstrap-stage3-clang-wrapper-16.0.6
.drv' failed to build
error: 1 dependencies of derivation '/nix/store/5vgbkxnyaf71s9xhzjd4s4i79m703rg2-bootstrap-stage4-clang-wrapper-16.0.6
.drv' failed to build
error: 1 dependencies of derivation '/nix/store/sjjpjs5bib0gflzv98z83x6vabfsmsfc-cctools-binutils-darwin-wrapper-16.0.
6-973.0.1.drv' failed to build
error: 1 dependencies of derivation '/nix/store/4s2201cv10l9idq2613nwsiqk36gy2sc-clang-wrapper-16.0.6.drv' failed to b
uild
error: 1 dependencies of derivation '/nix/store/9jvdna1s3ax4bcqff9ryiq4ar01az3qj-clang-wrapper-16.0.6.drv' failed to b
uild
error: 1 dependencies of derivation '/nix/store/xg5sndbhsnvk5l4z0jbbirw7j1zxia1r-clang-wrapper-16.0.6.drv' failed to b
uild
error: 1 dependencies of derivation '/nix/store/kn3j1xpsibkzwsn6yy4mr5fb7raqnisr-perl-5.38.0.drv' failed to build
error: 1 dependencies of derivation '/nix/store/l6rmigkj0j7pjkiq68yy2igig4z6ck4r-stdenv-darwin.drv' failed to build
error: 1 dependencies of derivation '/nix/store/mk53lln76sd7by7rhqqappz1vk6n26h5-stdenv-darwin.drv' failed to build
error: 1 dependencies of derivation '/nix/store/llashg58ds4464h957wqrx76kdc7i6qi-libheif-1.17.1.drv' failed to build

https://gist.github.com/kalbasit/8facdb8a542c3cc01f4411f49661664a

@FliegendeWurst
Copy link
Member

FliegendeWurst commented Oct 26, 2023

Unfortunately, it's breaking llvm on aarch64-darwin

I think the error is actually due to LLVM not building.

Did you locally merge this PR with current staging?

@kalbasit
Copy link
Member

kalbasit commented Nov 4, 2023

I ran nix-review on the pr's branch which is staging yes.

@FliegendeWurst
Copy link
Member

I ran nix-review on the pr's branch which is staging yes.

And 9 days ago, the Darwin stdenv was broken in staging: (last two lines of output)

error: 1 dependencies of derivation '/nix/store/mk53lln76sd7by7rhqqappz1vk6n26h5-stdenv-darwin.drv' failed to build
error: 1 dependencies of derivation '/nix/store/llashg58ds4464h957wqrx76kdc7i6qi-libheif-1.17.1.drv' failed to build

In that case you can review the PR by cherry-picking the commits on master (since the PR is a simple package update and unlikely to interact with other changes in staging).

Given that breaking changes are currently restricted (#258640), it also needs to be determined whether this update is a breaking change before merging.

@rhysmdnz
Copy link
Contributor

rhysmdnz commented Nov 7, 2023

I ran nix-review on the pr's branch which is staging yes.

And 9 days ago, the Darwin stdenv was broken in staging: (last two lines of output)

error: 1 dependencies of derivation '/nix/store/mk53lln76sd7by7rhqqappz1vk6n26h5-stdenv-darwin.drv' failed to build
error: 1 dependencies of derivation '/nix/store/llashg58ds4464h957wqrx76kdc7i6qi-libheif-1.17.1.drv' failed to build

In that case you can review the PR by cherry-picking the commits on master (since the PR is a simple package update and unlikely to interact with other changes in staging).

Given that breaking changes are currently restricted (#258640), it also needs to be determined whether this update is a breaking change before merging.

I've managed to build it on both aarch64-darwin and x86_64-linux. cherry-picking onto nixos-unstable.

So far I've noticed it breaks python311Packages.pillow-heif. So I'd say this is probably a breaking change.

error: builder for '/nix/store/ppf6lgn8pwby92agnbxhy3vaj36glrw9-python3.11-pillow-heif-0.13.1.drv' failed with exit code 2;
       last 10 log lines:
       > /build/source/pillow_heif/heif.py:554: in _encode_images
       >     ctx_write.save(fp)
       > /build/source/pillow_heif/misc.py:370: in save
       >     data = self.ctx_write.finalize()
       > E   ValueError: heif_writer callback returned a null error text
       > =========================== short test summary info ============================
       > SKIPPED [1] tests/import_error_test.py:8: Skipped
       > !!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!
       > ========================= 1 skipped, 1 error in 0.49s ==========================
       > /nix/store/bbxdw4rgwwl3gnajri82yidr1nlsfskf-stdenv-linux/setup: line 1596: pop_var_context: head of shell_variables not a function context
       For full logs, run 'nix log /nix/store/ppf6lgn8pwby92agnbxhy3vaj36glrw9-python3.11-pillow-heif-0.13.1.drv'.

@kashw2 kashw2 force-pushed the libheif branch 2 times, most recently from de0104d to cf0313f Compare November 7, 2023 20:09
@github-actions github-actions bot added the 6.topic: python Python is a high-level, general-purpose programming language. label Nov 25, 2023
@ajs124 ajs124 marked this pull request as draft November 25, 2023 12:11
@github-actions github-actions bot removed the 6.topic: python Python is a high-level, general-purpose programming language. label Nov 26, 2023
@kashw2 kashw2 changed the title libheif: 1.15.2 -> 1.17.1 libheif: 1.15.2 -> 1.17.5 Nov 26, 2023
@kashw2 kashw2 closed this Feb 20, 2024
@kashw2 kashw2 deleted the libheif branch February 20, 2024 02:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 1001-2500 This PR causes many rebuilds on Darwin and should most likely target the staging branches. 10.rebuild-linux: 501-1000 This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update request: libheif 1.15.2 → 1.16.2

4 participants