Selection window only shows tree one level deep

Bug #1056432 reported by Marc Tardif
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Checkbox
Fix Released
Critical
Marc Tardif

Bug Description

If you replace the optical/read job with this composite job:

plugin: local
name: optical/read
requires:
 device.category == 'CDROM'
description: foo
command:
 cat <<EOF
 plugin: manual
 name: optical/read_foo
 command: optical_read_test /dev/cdrom
 description:
  PURPOSE:
      This test will check your optical devices ability to read CD media
  STEPS:
      1. Insert appropriate non-blank media into your optical drive(s). Movie and Audio Disks may not work. Self-created data disks have the greatest chance of working.
      2. If a file browser window opens, you can safely close or ignore that window.
      3. Click "Test" to begin the test.
  VERIFICATION:
      This test should automatically select "Yes" if it passes, "No" if it fails.
 EOF

And then run this command from the trunk of the project:

rm -fr store messages checkbox.xsl checkbox.log plugins.bpickle* sub* ; ./bin/checkbox-qt -W <(cat <<EOF
`head -n 32 ../../checkbox/trunk/data/whitelists/default.whitelist`
__optical__
optical/detect
optical/read
optical/read_foo
EOF
)

Then, you get the attached checkbox-before.png screenshot. If you revert to revision 1471, then you get the attached checkbox-after.png screenshot. The problem is that the contract of the resolver was changed when the sorting was fixed.

Related branches

Revision history for this message
Marc Tardif (cr3) wrote :
Revision history for this message
Marc Tardif (cr3) wrote :
Revision history for this message
Marc Tardif (cr3) wrote :

The problem is that the get_dependencies method used to return all the dependencies from root node to current one. For example, this would be the list of dependencies for the optical/read_foo test created above:

['__optical__', 'optical/read', 'optical/read_foo']

Now, the same method only returns the dependencies from the previous node to the current one. For example, this is the list for the same test:

['optical/read', 'optical/read_foo']

Instead of fixing the resolver, at the risk of introducing a regression, the suites_prompt can be modified to recursively rebuild the dependencies all the way to the root.

Changed in checkbox:
status: New → In Progress
importance: Undecided → Critical
assignee: nobody → Marc Tardif (cr3)
Changed in checkbox:
status: In Progress → Fix Committed
Changed in checkbox:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.