[wpkg-users] dependency checking broken?

Marc Hennes mh at financial.com
Tue Jan 30 10:50:54 CET 2007


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi,

I ran into a problem with packages depending on others.
I wrote a little test to check if I can reproduce what I've seen when
installing with wpkg:


Packages.xml
<package id='A' name='a' revision='1' priority='20' reboot='false' >
        <check type='file' condition='exists' path='ashdks' />
        <install cmd='aslkjdlka' />
        <remove cmd='tasklist' />
</package>

<package id='B' name='b' revision='1' priority='10' reboot='false' >
        <depends package-id='A' />
        <check type='file' condition='exists' path='c:\cmd.exe' />
        <install cmd='xcopy c:\windows\system32\cmd.exe c:\ ' />
        <remove cmd='del c:\cmd.exe' />
</package>


Profile.xml
<profile id='test'>
  <depends profile-id='test2' />
  <package package-id='A' />
</profile>

<profile id='test2'>
  <package package-id='B' />
</profile>


Hosts.xml
<host name='lala' profile-id='test' />


As you can see I have two profiles. Profile test including profile
test2. And package b depends on package a. Now I run wpkg and it tries
first to install package a which fails of course. But then wpkg is doing
something I don't understand because it installs package b although it
depends on package a. In my opinion wpkg shouldn't try to install
package b but ignore it or better exit with an error.


Here is the output from wpkg with /debug:

Using profile: test
profile: test profileNode:
Checking profile dependency: test2
Add profile dependecy: test2
Checking package dependency: A
number of available packages: 2
number of packages to remove: 0
checking existence of package:A
The path 'ashdks' does not exist: the test failed
Installing A...
executing command : aslkjdlka
checking existence of package:B
The path 'c:\cmd.exe' does not exist: the test failed
Installing B...
executing command : xcopy c:\windows\system32\cmd.exe c:\
command returned result: 0
checking existence of package:B
The path 'c:\cmd.exe' exists: the test was successful
saving XML : C:\WINDOWS\system32\wpkg.xml
Installation of B successful.

There were the following errors:
Package name: A
Could not install A.
Command "aslkjdlka" was not successful.
Das System kann die angegebene Datei nicht finden.
(Can't locate given file)


For me it looks like wpkg is checking dependencies just at the
beginning. It sees package B depends on package A and A should be
installed. So anything is good. But then A can't be installed and there
is no more checking before trying to install B.

greets
Marc


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFFvxT+Bg8GX2CMWGMRAvemAJ4vUJj+opGR9Zcxtx4ofGtUgvN0uACfcKtZ
wtnGkVzZNocDlxAV0TWHmAY=
=pqIN
-----END PGP SIGNATURE-----






_______________________________________________
wpkg-users mailing list
wpkg-users at lists.wpkg.org
http://lists.wpkg.org/mailman/listinfo/wpkg-users



More information about the wpkg-users mailing list