anchor.diff:          (ql-cdb:convert-index-file release-file
                                      :cdb-file cdb-file
                                      :index 0))))
  +
  +(defmethod slot-unbound (class (dist dist) (slot (eql 'provided-systems)))
  +  (declare (ignore class))
  +  (initialize-indexes dist)
  +  (setf (slot-value dist 'provided-systems)
  +        (loop for system being each hash-value of (system-index dist)
  +              collect system)))
  +
  +(defmethod slot-unbound (class (dist dist) (slot (eql 'provided-releases)))
  +  (declare (ignore class))
  +  (initialize-indexes dist)
  +  (setf (slot-value dist 'provided-releases)
  +        (loop for system being each hash-value of (release-index dist)
  +              collect system)))
   
   
   (defun dist-name-pathname (name)
  
positive.code:     (setf (available-versions-url dist) new-url)))
  
  
  (defmethod provided-releases ((dist dist))
    ;; FIXME: Should not unconditionally initialize
    (initialize-release-index dist)
    (loop for release being each hash-value of (release-index dist)
          collect release))
  
  (defmethod provided-systems ((dist dist))
    ;; FIXME: totally broken
    (loop for system being each hash-value of (system-index dist)
          collect system))
  
  
  (defmethod ensure-system-index-file ((dist dist))
    (let ((pathname (relative-to dist "systems.txt")))
      (or (probe-file pathname)
  
negative.code:    (release-index
      :initarg :release-index
      :accessor release-index)
     (provided-systems
      :initarg :provided-systems
      :accessor provided-systems)
     (provided-releases
      :initarg :provided-releases
      :accessor provided-releases)
     (local-distinfo-file
      :initarg :local-distinfo-file
      :accessor local-distinfo-file))
  