Ticket #557 (closed defect: fixed)

Opened 2 years ago

Last modified 9 months ago

--continue-on-failure if-independent and if-satisfied cause packages to be skipped on resume

Reported by: dleverton Owned by: ciaranm
Priority: MajorRelease Milestone:
Component: core/paludis Version: 0.26.0_pre1
Keywords: Cc:
Blocked By: Blocking: #445
Distribution:

Description (last modified by dleverton) (diff)

shiny-one ~ # paludis -1i =app-misc/dummy-2.42
Building target list...
Building dependency list...

These packages will be installed:

* app-misc/dummy::local-testing :1 [N 1.42]
    "This is a sample skeleton ebuild file"
* app-misc/dummy::local-testing :2 [N 2.42] <target>
    "This is a sample skeleton ebuild file"

Total: 2 packages (2 new)

(1 of 2) Installing app-misc/dummy-1.42:1::local-testing

>>> Running ebuild phase killold as root:root...
>>> Starting builtin_killold
>>> Done builtin_killold
>>> Completed ebuild phase killold
>>> Running ebuild phases init saveenv as paludisbuild:paludisbuild...
>>> Starting builtin_init
>>> Done builtin_init
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases init saveenv
>>> Running ebuild phases loadenv setup saveenv as root:root...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting pkg_setup

!!! ERROR in app-misc/dummy-1.42:
!!! In pkg_setup at line 3079
!!! (no message provided)

!!! Call stack:
!!!    * pkg_setup (/var/tmp/paludis/app-misc-dummy-1.42/temp/loadsaveenv:3079)
!!!    * ebuild_f_setup (/usr/libexec/paludis/0/pkg_setup.bash:43)
!!!    * ebuild_main (/usr/libexec/paludis/ebuild.bash:462)
!!!    * main (/usr/libexec/paludis/ebuild.bash:480)

diefunc: making ebuild PID 30214 exit with error
die trap: exiting with error.

Install error:
  * In program paludis (--all-versions --dl-installed-deps-pre pre-or-post --dl-reinstall-scm weekly --dl-override-masks unkeyworded --dl-override-masks repository --checks always --debug-build none --continue-on-failure if-independent --log-level warning) -1i =app-misc/dummy-2.42:
  * When performing install action from command line:
  * When executing install task:
  * When installing 'app-misc/dummy-1.42:1::local-testing':
  * Install error: Install failed for 'app-misc/dummy-1.42:1::local-testing'



(2 of 2, 1 failed) Skipping app-misc/dummy-2.42:2::local-testing (dependent upon 'app-misc/dummy-1.42:1::local-testing')


Summary of failures:

* app-misc/dummy-1.42:1::local-testing: failure
* app-misc/dummy-2.42:2::local-testing: skipped (dependent upon 'app-misc/dummy-1.42:1::local-testing')

Total: 2 packages, 0 successes, 1 skipped, 1 failure, 0 unreached

Resume command: paludis --log-level warning --preserve-world --debug-build none --install --continue-on-failure if-independent --serialised 0.25 'package;=app-misc/dummy-1.42:1::local-testing;installed;has_all_deps;P' 'package;=app-misc/dummy-2.42:2::local-testing;installed;has_all_deps;D=app-misc/dummy-1.42:1::local-testing'


 * No unread news items found

 * Searching for configuration files requiring action...
 * No configuration file updates required

shiny-one ~ # SUCCEED=yes paludis --log-level warning --preserve-world --debug-build none --install --continue-on-failure if-independent --serialised 0.25 'package;=app-misc/dummy-1.42:1::local-testing;installed;has_all_deps;P' 'package;=app-misc/dummy-2.42:2::local-testing;installed;has_all_deps;D=app-misc/dummy-1.42:1::local-testing'
Building target list...
Building dependency list...

These packages will be installed:

* app-misc/dummy::local-testing :1 [N 1.42]
    "This is a sample skeleton ebuild file"

Total: 1 package (1 new)

(1 of 2) Installing app-misc/dummy-1.42:1::local-testing

>>> Running ebuild phase killold as root:root...
>>> Starting builtin_killold
>>> Done builtin_killold
>>> Completed ebuild phase killold
>>> Running ebuild phases init saveenv as paludisbuild:paludisbuild...
>>> Starting builtin_init
>>> Done builtin_init
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases init saveenv
>>> Running ebuild phases loadenv setup saveenv as root:root...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting pkg_setup
>>> Done pkg_setup
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv setup saveenv
>>> Running ebuild phases loadenv unpack compile saveenv as paludisbuild:paludisbuild...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting src_unpack
>>> Done src_unpack
>>> Starting src_compile
>>> Done src_compile
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv unpack compile saveenv
>>> Running ebuild phases loadenv test saveenv as paludisbuild:paludisbuild...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting src_test
No Makefile, skipping tests
>>> Done src_test
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv test saveenv
>>> Running ebuild phases loadenv install saveenv as root:root...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting src_install
>>> Done src_install
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv install saveenv
>>> Stripping inside /var/tmp/paludis/app-misc-dummy-1.42/image
>>> Running ebuild phases loadenv preinst saveenv as root:root...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting pkg_preinst
>>> Done pkg_preinst
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv preinst saveenv
>>> Writing VDB entry to '/var/db/pkg/app-misc/-checking-dummy-1.42'...
>>> Writing VDB entry keys ...
>>> Generating saved ebuild and environment...
>>> Finished writing VDB entry
>>> Checking whether we can merge to / .collision-protect>  * Checking for collisions...
collision-protect>  * Elapsed time: 0.081 seconds
collision-protect>  * Hooray!  No collisions

>>> Merging to /
>>> Running ebuild phases loadenv postinst saveenv as root:root...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting pkg_postinst
>>> Done pkg_postinst
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv postinst saveenv
>>> Running ebuild phase tidyup as root:root...
>>> Starting builtin_tidyup
rm -fr /var/tmp/paludis/app-misc-dummy-1.42
>>> Done builtin_tidyup
>>> Completed ebuild phase tidyup

 * Regenerating environment...
Regenerating //etc/ld.so.cache...
 * Done regenerating environment
 * Updating CONFIG_PROTECT and CONFIG_PROTECT_MASK caches.

Cleaning stale versions after installing app-misc/dummy-1.42:1::local-testing

* No cleaning required

(2 of 2) Skipping app-misc/dummy-2.42:2::local-testing (already done)


Updating world file

* --preserve-world was specified, skipping world changes

 * Checking whether the GNU info directory needs updating...
 * No updates needed


 * No unread news items found

 * Searching for configuration files requiring action...
 * No configuration file updates required

Change History

Changed 2 years ago by dleverton

  • description modified (diff)

Changed 2 years ago by ciaranm

I think this is just a case of:

diff --git a/paludis/install_task.cc b/paludis/install_task.cc
index 8c44645..f291e75 100644
--- a/paludis/install_task.cc
+++ b/paludis/install_task.cc
@@ -303,12 +303,18 @@ namespace
 
         void visit(const DepListEntryHandledSkippedUnsatisfied & s)
         {
-            result = "U" + stringify(s.spec());
+            if (undo_failures)
+                result = "P";
+            else
+                result = "U" + stringify(s.spec());
         }
 
         void visit(const DepListEntryHandledSkippedDependent & s)
         {
-            result = "D=" + stringify(*s.id());
+            if (undo_failures)
+                result = "P";
+            else
+                result = "D=" + stringify(*s.id());
         }
     };
 }

Does this fix it?

Changed 2 years ago by ciaranm

  • status changed from new to closed
  • resolution set to fixed

r4589

Note: See TracTickets for help on using tickets.