OpenCSW Bug Tracker


Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0004156 [subversion] packaging minor always 2010-01-14 22:35 2010-03-21 08:23
Reporter jcflack View Status public  
Assigned To skayser
Priority normal Resolution fixed  
Status closed  
Summary 0004156: Not all files in the .pkg datastream get installed??
Description This is an odd one. I'm on Solaris 10 5/09. I installed the
subversion-1.6.6,REV=2009.11.14-SunOS5.8-i386-CSW.pkg.gz package
and the file
share/doc/subversion/tools/client-side/change-svn-wc-format.py
did not get installed. No error message was produced. Its name
was not in the list of filenames output during installation. Its
name IS IN the pkgmap. But pkgchk completes successfully and never
complains about the file being missing.

The file IS PRESENT in the second cpio archive making up the
.pkg file. In fact, I have installed it by hand now, just by
uncompressing the .pkg.gz file, splitting apart the two cpio
archives with dd, and using cpio to extract the file. Nothing
wrong with the file.

Could something obscure be making the Solaris pkg tools just fail
to process that particular file? this is shaking my faith in the
packaging system.
Additional Information I attach the log from pkg-get install. I didn't see anything interesting
in it, except the fact that the file in question isn't even mentioned
in it.
Tags No tags attached.
Attached Files ? file icon svpklg [^] (18,078 bytes) 2010-01-14 22:35

- Relationships

-  Notes
(0007240)
skayser (administrator)
2010-01-15 03:51
edited on: 2010-01-15 03:55

Hi jcflack, thanks for the bug report. Your faith in the SVR4 packaging tools need not be shaken. There seems to be a simple bug in the package.

The file in question is tagged with the class "cswpycompile" (see pkgmap field number 3) which means it is supposed to be handled by one of our central class actions scripts (namely /usr/sadm/install/scripts/i.cswpycompile) on installation. These class action scripts all come with the cswclassutils package, but the current subversion package fails to define a dependency on cswclassutils.

So I suppose you are simply missing the cswclassutils package currently. At least I can't spot a "Verifying class <cswpycompile>" line in your svpkglg output. Would be helpful if pkgadd would at least warn about the situation, but obviously it doesn't.

Could you please check whether you have the cswclassutils package installed? If not, please install it (needs to be installed in the global zone) and re-install the subversion package. If I was right in my analysis the missing file should then be installed properly.

# pkginfo CSWcswclassutils
# pkgrm CSWsvn
# pkg-get -i CSWcswclassutils
# pkg-get -i CSWsvn

Btw., in case you don't know it already, you can also use pkgtrans instead of cpio to extract a .pkg datastream.

# gunzip subversion-XYZ.gz
# pkgtrans subversion-XYZ .

Or even better, use pkgutil to have it all done for you in one go. ;)

# pkg-get -i pkgutil
# pkgutil -Nd --extract subversion

(0007261)
jcflack (reporter)
2010-01-15 22:19

Hi skayser,

I was really liking your explanation, until I checked and the CSWcswclassutils
package really does seem to be installed, and I even looked for
/usr/sadm/install/scripts/i.cswpycompile and it IS present. What's the
next thing I should check?

Thanks,
-Chap

ps. thanks for the pointers on pkgtrans and pkgutil. I actually had not found
those yet, but when I looked at the contents of the .pkg file I could see it
was cpio format, and I didn't mind working at low level because I wasn't sure
I trusted the high level tools.
(0007266)
skayser (administrator)
2010-01-16 13:50

Hi Chap,

I had another look at the subversion package and the issue is another (but related) one. For the cswpycompile class action script to be run for the relevant files, the package also needs to mention the cswpycompile class within the pkginfo file (otherwise the files marked as cswpycompile will simply be skipped upon installation). This isn't the case with the current subversion package.

$ grep ^CLASSES CSWsvn/pkginfo
CLASSES=none

OTOH the cswpycompile class is only intended to compile python libs. The file you mentioned as well as all the other *.py files in the subversion package (which all won't be installed) are all just scripts, so these have been tagged with cswpycompile by mistake. We will update the subversion package and let you know once it is available for testing. Thanks again for the feedback.

Sebastian
(0007300)
skayser (administrator)
2010-01-20 00:55

There is now an updated subversion package in testing/ which fixes the reported issue. With pkgutil >= 1.7 the following should bring you a complete subversion package (i.e. with the .py file(s) which you were missing).

# pkgrm CSWsvn
# pkgutil -t http://mirror.opencsw.org/opencsw/testing [^] -UNi subversion

The -N is particularly important as pkgutil might (and will) pull in additional packages as dependencies from testing otherwise. Only the subversion package should be installed from testing.
(0007345)
flod (reporter)
2010-01-25 22:39

I use CSWsvn 1.6.6,REV=2009.12.24 for some time now.
I would suggest pushing it to the repository.
(0007346)
skayser (administrator)
2010-01-25 23:11

Unfortunately I omitted the specific revision which I had pushed to testing in my last note. It is subversion-1.6.6,REV=2010.01.19 for which I would appreciate testing feedback. It has seen a couple of tweaks to the build. From changelog.CSW:

  * Non-maintainer submission.
  * Restricted cswpycompile usage to python modules. (Closes 0004156)
  * Corrected libsvn_ra_dav-1.so.0 symlinks. (Closes 0004096)
  * Dropped openssl_rt dependency (neon with SSL support is built separately).
  * Dropped kerberos dependency (neon comes with Kerberos support).
  * Dropped libnet dependency (not required).
  * Reordered RUNPATH and introduced $ISALIB for /opt/csw/lib/, /opt/csw/bdb47.

It passes all the tests and I have had it in use for about a week now. Additional feedback would still be appreciated.

# pkgrm CSWsvn
# pkgutil -t http://mirror.opencsw.org/opencsw/testing [^] [^] -UNi subversion
(0007347)
flod (reporter)
2010-01-25 23:17

Okay, thank you for the answer. I installed the new version for testing.
(0007364)
maciej (reporter)
2010-01-29 07:56

https://sourceforge.net/apps/trac/gar/changeset/8210 [^] contains a check for this kind of a problem in the future (classes used in pkgmap not present in pkginfo).
(0007710)
rupert (developer)
2010-03-21 08:23

pls reopen if there are still issues.


Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker