---------------------------------------------------------------------
before 1.0 |
-----------/

- segfault on SIG in static binary

1. When upgrading, spkg may accidently delete files from the new package  
install because of the symlinked directory issue - say docs were installed  
to /usr/share/doc/$name, but the new packages installs them to  
/usr/doc/$name. One way to fix it is by reiterating the list of installed  
files before doinst.sh is run, and reinstall files if they do not exist.  
(What pkgtools does is install the package again as a third step unless  
"-no-paranoia" is set).

This will require path normalization for package database and some hacks
to make it work even with broken package databases. (or just that hack)

2. Another issue with upgrading is that when the new package is corrupt or  
unacceptable for some reason (say, tar is containing symlinks), the script  
at var/log/scripts of the old package is still renamed to the new package  
name. (this may be false report)

[test] Automatic testuite

[doc] Update documentation
[doc] Write article

Spkg 1.0 should have somewhere a list of important differences in  
behaviour from official pkgtools. Here's a short list:

1. spkg does not support the -preserve or -copy options of removepkg.
2. When spkg cannot overwrite a file during install/upgrade it keeps a  
   copy as $(name)-##$(operation)##
3. spkg will not allow installing several different version of a package  
   at the same system.
4. The errorlevels given by installpkg and spkg -i are incompatible.
5. installpkg allows non-root user to install as long as they have  
   write access to the database.
6. Because pkgtools use gzip, a .tgz file doesn't have to be a .tar.gz  
   file to work. .tar.Z or .tar.zip, if renamed to .tgz will work just as  
   well.

---------------------------------------------------------------------
post 1.0 |
---------/

list files that can't be removed in removed_packages/package.leftovers ???
  -- why not just do grep on output from spkg?
spkg -d --copy=dir package ???
- --verify command for checking fs against package database (what files
  changed after installation, missing files, etc.)
- --check command for checking validity of slack packages
  (check for suid binaries and other rights based checks for files,
  enforcing slackware packages policy)

[untgz] using blockbuf as writebuf can speedup things slightly on the 
    user side (approx. by some 5%)

extend install/doinst.sh:

exit 0
#!REMOVE!
code
code
code (until next block or end)
#!UPGRADE!
code
code
code
