-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: Update dependencies for Ubuntu 18~20 #1582
Conversation
Based on my research i've concluded that using `libjpeg-dev` breaks the canvas on Ubuntu 18~20 -> Updating docs for `libjpeg8-dev` Relevant: gitpod-io/gitpod#1520 Relevant: Automattic#1496 Signed-off-by: Jacob Hrbek <kreyren@member.fsf.org>
I think that we can probably just edit the current Ubuntu line, instead of adding another one? 🤔 |
@LinusU Possibly, but it seems that older version of ubuntu are using |
EDIT: apparently deprecated TravisCI is also using |
libjpeg-dev is a dummy package that may resolve to libjpeg8-dev on some distributions, but to something else equivalent on others, i.e. it should be the correct dependency to list. In the gitpod issue you linked to, I don't see any log info about libjpeg (just the one caused by a bug in needle that is causing prebuilds to fail to download). Can you provide the logs related to libjpeg please? |
Submitted to get log for Automattic/node-canvas#1582 (comment)
@zbjornson https://hastebin.com/inuzazihib.sql or raw on https://hastebin.com/raw/inuzazihib or on github Log from with reproduction of the issue
Snapshot with the environment: https://gitpod.io#snapshot/73be9ea7-8ee0-4e4d-a7fd-e08ea6fdcddd Or the environment itself https://gitpod.io/#https://github.com/Kreyren/gitpod-1520/tree/b2330dd8d240e0db965d5b5bbd6d43897be5d6e6 |
Aldo it seems to get the expected package: gitpod /workspace/gitpod-1520 $ apt list --installed | grep libjpeg
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
libjpeg-dev/focal,now 8c-2ubuntu8 amd64 [installed]
libjpeg-turbo8-dev/focal,now 2.0.3-0ubuntu1 amd64 [installed,automatic]
libjpeg-turbo8/focal,now 2.0.3-0ubuntu1 amd64 [installed,automatic]
libjpeg8-dev/focal,now 8c-2ubuntu8 amd64 [installed,automatic]
libjpeg8/focal,now 8c-2ubuntu8 amd64 [installed,automatic] checking.. |
I am confused this environment https://gitpod.io/#https://github.com/Kreyren/gitpod-1520/tree/f4dc07a196b8cc0e026e0f5b7db0fbf131bf2ef9 worked as shown in gitpod-io/workspace-images#232 (comment), but now it fails again? Log
The steps are cached using docker so it should be using the exact same environment as before.. EDIT: It also seems to be getting the same packages: gitpod /workspace/gitpod-1520 $ apt list --installed | grep libjpeg
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
libjpeg-dev/focal,now 8c-2ubuntu8 amd64 [installed]
libjpeg-turbo8-dev/focal,now 2.0.3-0ubuntu1 amd64 [installed,automatic]
libjpeg-turbo8/focal,now 2.0.3-0ubuntu1 amd64 [installed,automatic]
libjpeg8-dev/focal,now 8c-2ubuntu8 amd64 [installed]
libjpeg8/focal,now 8c-2ubuntu8 amd64 [installed,automatic] Investigating.. UPDATE: Resolved by creating a new cache, possible bug in gitpod will investigate.. The usage of |
Still not seeing a problem related to libjpeg in any of those logs... how'd you determine it's related to libjpeg?
This is caused by tomas/needle#312 when needle is trying to download prebuilds (#1573). It's intermittent, so you might be able to download prebuilds sometimes but not others. A workaround is to add
This I've never seen before but is also not related to libjpeg. The log in #1582 (comment) doesn't have any useful info unfortunately. |
Since it installs successfully with
I don't think it's relevant assuming that package change fixes the issue? |
May be relevant: gitpod /workspace/gitpod-1520 $ apt-file list libjpeg-dev
libjpeg-dev: /usr/share/doc/libjpeg-dev/changelog.Debian.gz
libjpeg-dev: /usr/share/doc/libjpeg-dev/copyright
gitpod /workspace/gitpod-1520 $ apt-file list libjpeg8-dev
libjpeg8-dev: /usr/share/doc/libjpeg8-dev/changelog.Debian.gz
libjpeg8-dev: /usr/share/doc/libjpeg8-dev/copyright (apt-file won't show all the file changes) |
What do you propose then? |
Because prebuilds are failing to download, it's falling back to a from-source build. If you can use that prebuild workaround, then you can avoid the build problems. I don't know why manually installing libjpeg8-dev appears to be helping, but there are enough other errors that it might be a red herring. Here's libjpeg-dev's package page for Cosmic, which looks like the distro you're using: https://launchpad.net/ubuntu/cosmic/amd64/libjpeg-dev/8c-2ubuntu8
|
I see, what do you recommend then assuming that it fails to install even with required dependencies?
This is focal fossa (Ubuntu 20.04) development branch |
Installing For comparison, here's a successful build from source on ubuntu 18 with libjpeg-dev: https://github.com/zbjornson/node-canvas/runs/683128131?check_suite_focus=true. Ubuntu 18 and 20 resolve libjpeg-dev to the same package: https://packages.ubuntu.com/focal/libjpeg-dev I also tried on a fresh 20.04 VM with libjpeg-dev and it built successfully. Something seems unique about the gitpod environment, but I have no experience with it. |
@zbjornson Proposed solution does not work: https://hastebin.com/zejakobiqo.pl See changes made to gitpod-io/workspace-images#232 and PoC on https://github.com/Kreyren/gitpod-1520 Investigating.. UPDATE: The logic have been verified to perform the expected behavior, but the issue is still present.. |
FWIT seems that adding |
UPDATE: Seems to work with gitpod /workspace/gitpod-1520 $ npm i
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN canvas@2.6.1 No repository field.
npm WARN canvas@2.6.1 No license field.
up to date in 0.89s
found 0 vulnerabilities @zbjornson thanks for info, appreciated |
Closing as invalid for reasons above |
DO_NOT_MERGE: New discovery on #1582 (comment)Based on my research i've concluded that using
libjpeg-dev
breaks the canvas on Ubuntu 18~20 -> Updating docs forlibjpeg8-dev
Relevant: gitpod-io/gitpod#1520
Relevant: #1496
Signed-off-by: Jacob Hrbek kreyren@member.fsf.org
Thanks for contributing!