← Back to issue list

repo: rollback to using dpkg-deb for deb extraction

View original Github issue

Metadata

Project
snapcraft
Number
#2111
Type
pull request
State
merged
Author
sergiusens
Labels
—
Created
Updated
Closed

Current evaluation

Merged as commit c008b93be: reverts fa287bec3 (#1878), restoring dpkg-deb for deb extraction after debian.arfile caused severe build slowdowns (18s vs 5m10s pull). Fixes LP #1767119.

Resolution: closed resolved

Reason: The PR was merged into snapcraft as commit c008b93be ('repo: rollback to using dpkg-deb for deb extraction'), reverting fa287bec3 from #1878 because debian.arfile-based deb extraction made builds drastically slower. Maintainer sergiusens provided benchmarking showing the dpkg-deb run finishing the pull step in ~19s versus over 5 minutes with arfile.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Revert "repo: use debian.arfile instead of dpkg-deb (#1878)" This reverts commit fa287bec3376293e791e24ead3e666b11cddfef6. LP: #1767119 Signed-off-by: Sergio Schvezov <sergio.schvezov@canonical.com> - [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)? - [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? - [x] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)? - [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)? - [x] Have you successfully run `./runtests.sh static`? - [x] Have you successfully run `./runtests.sh unit`? ----- The first run is using `dpkg-deb`, the ssecond run using arfile (didn't even wait for it to finish, but the numbers speak for themselves). ``` (snapcraft) ubuntu@snapcraft-xenial-dev:~/source/vlc/extras/package/snap$ time snapcraft build DEPRECATED: The 'prepare' keyword has been replaced by 'override-build' See http://snapcraft.io/docs/deprecation-notices/dn7 for more information. DEPRECATED: The 'build' keyword has been replaced by 'override-build' See http://snapcraft.io/docs/deprecation-notices/dn8 for more information. DEPRECATED: The 'install' keyword has been replaced by 'override-build' See http://snapcraft.io/docs/deprecation-notices/dn9 for more information. Skipping pull desktop-qt5-vlc (already ran) Skipping build desktop-qt5-vlc (already ran) Skipping stage desktop-qt5-vlc (already ran) Skipping pull wrapper (already ran) Skipping pull vlc (already ran) Preparing to build wrapper Building wrapper Preparing to build vlc Building vlc cmake too old ragel not found protoc not found ant not found nasm not found To-be-built packages: cmake ragel protoc ant nasm curl -f -L -- "http://downloads.videolan.org/pub/contrib/protobuf/protobuf-3.1.0.tar.gz" > "protobuf-3.1.0.tar.gz.tmp" && touch protobuf-3.1.0.tar.gz.tmp && mv protobuf-3.1.0.tar.gz.tmp protobuf-3.1.0.tar.gz || ( curl -f -L -- "https://github.com/google/protobuf/releases/download/v3.1.0/protobuf-cpp-3.1.0.tar.gz" > "protobuf-3.1.0.tar.gz.tmp" && touch protobuf-3.1.0.tar.gz.tmp && mv protobuf-3.1.0.tar.gz.tmp protobuf-3.1.0.tar.gz && echo "Please upload package protobuf-3.1.0.tar.gz to our FTP" ) && grep protobuf-3.1.0.tar.gz SHA512SUMS| shasum -a 512 -c % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0^Ctools.mak:298: recipe for target 'protobuf-3.1.0.tar.gz' failed make: *** [protobuf-3.1.0.tar.gz] Interrupt Aborted! real 0m18.712s user 0m14.700s sys 0m3.663s (snapcraft) ubuntu@snapcraft-xenial-dev:~/source/vlc/extras/package/snap$ time snapcraft build DEPRECATED: The 'prepare' keyword has been replaced by 'override-build' See http://snapcraft.io/docs/deprecation-notices/dn7 for more information. DEPRECATED: The 'build' keyword has been replaced by 'override-build' See http://snapcraft.io/docs/deprecation-notices/dn8 for more information. DEPRECATED: The 'install' keyword has been replaced by 'override-build' See http://snapcraft.io/docs/deprecation-notices/dn9 for more information. Skipping pull desktop-qt5-vlc (already ran) Skipping build desktop-qt5-vlc (already ran) Skipping stage desktop-qt5-vlc (already ran) Skipping pull vlc (already ran) Skipping pull wrapper (already ran) Skipping build wrapper (already ran) Preparing to build vlc ^C Aborted! real 5m10.762s user 5m7.907s sys 0m2.493s ```

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged as commit c008b93be: reverts fa287bec3 (#1878), restoring dpkg-deb for deb extraction after debian.arfile caused severe build slowdowns (18s vs 5m10s pull). Fixes LP #1767119.
stealth/space-bunny-alpha — closed resolved Merged #2111 (c008b93be), reverting #1878/fa287bec3 and restoring faster dpkg-deb extraction after debian.arfile caused severe build performance regressions.
qwen/qwen3.6-35b-a3b — — Merged a revert restoring dpkg-deb for deb extraction after debian.arfile caused severe performance regressions. The change addresses LP #1767119 by switching back to the faster dpkg-deb tool, resolving the build slowdown.
qwen3.6-35b-a3b-mtp-q6 — — Merged revert restoring dpkg-deb for deb extraction after debian.arfile caused severe performance degradation, increasing build times from 18 seconds to over 5 minutes. Addresses Launchpad bug #1767119.

Update history

No update history recorded yet.

Related work

  • Related To: canonical/snapcraft#1878 (confidence 98%)

    Merged commit fa287bec3 introduced debian.arfile for deb extraction; this PR reverts it wholesale

Related issues

Issue Project State Summary Similarity
#1878 repo: use debian.arfile instead of dpkg-deb snapcraft merged Merged as commit fa287bec3: snapcraft/internal/sources/_deb.py stopped shelling out to dpkg-deb and used debian.arfile to extract debs, avoiding tar/sshfs utime failures. Later reverted by #2111 (c008b93be).
79%
#3083 repo: revert logic to get deb_arch snapcraft merged Merged #3083 as 5d20937cb, reverting host-side deb_arch lookup to avoid requiring dpkg-architecture before entering the build environment (SNAPCRAFT-1K1).
73%