Commit 87ca6e5e authored by Eric Timmons's avatar Eric Timmons
Browse files

Sort more things when serializing contexts.

Should prevent excessive noise in bundle lock files.
parent 374b5048
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -4,6 +4,8 @@

  + Fix bug in client where =activate-context= did not ignore inherited source
    registries for bundles.
  + Sort more things serializing contexts. Should prevent excessive noise in
    bundle lock files.

* v0.3.1 - 2020-06-04

+14 −13
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@
          #:clpm/repos
          #:clpm/requirement
          #:clpm/source
          #:clpm/utils
          #:do-urlencode)
  (:export #:context
           #:context-add-requirement!
@@ -563,7 +564,7 @@ in place with the same name. Return the new requirement if it was modified."
      ;; Releases
      (write-section-header "releases" stream)
      (format stream ":releases~%")
      (dolist (release (sort (copy-list (context-releases context)) #'string<
      (dolist (release (safe-sort (context-releases context) #'string<
                                  :key (compose #'project-name #'release-project)))
        (format stream "~S~%"
                (context-release-to-form release (assoc-value (context-system-releases context)
@@ -574,7 +575,7 @@ in place with the same name. Return the new requirement if it was modified."
      ;; Reverse Dependencies
      (write-section-header "reverse-dependencies" stream)
      (format stream ":reverse-dependencies~%")
      (dolist (reverse-dep (sort (copy-list (context-reverse-dependencies context)) #'string<
      (dolist (reverse-dep (safe-sort (context-reverse-dependencies context) #'string<
                                      :key (compose #'project-name #'release-project #'car)))
        (format stream "~S~%~%" (context-reverse-deps-to-form reverse-dep))))))

@@ -597,7 +598,7 @@ in place with the same name. Return the new requirement if it was modified."
  `(,(project-name (release-project release))
    :version ,(release-version release)
    :source ,(source-name (release-source release))
    :systems ,system-names))
    :systems ,(safe-sort system-names #'string<)))

(defun context-reverse-deps-to-form (release-and-reverse-deps)
  (destructuring-bind (release . reverse-deps) release-and-reverse-deps
@@ -609,7 +610,7 @@ in place with the same name. Return the new requirement if it was modified."
                               :key #'requirement-why))
    (let ((project (release-project release))
          reverse-dep-forms)
      (dolist (reverse-dep (sort (copy-list reverse-deps)
      (dolist (reverse-dep (safe-sort reverse-deps
                                      (lambda (x y)
                                        (cond
                                          ((eql x t) t)
+3 −2
Original line number Diff line number Diff line
@@ -13,7 +13,8 @@
          #:clpm/requirement
          #:clpm/session
          #:clpm/sources/defs
          #:clpm/sources/dotted-versioned-project)
          #:clpm/sources/dotted-versioned-project
          #:clpm/utils)
  (:export #:fs-source
           #:fs-source-register-asd
           #:fs-release))
@@ -128,7 +129,7 @@ can be relative or absolute."
  (let* ((system-files (hash-table-keys (fs-source-projects-by-namestring source))))
    `(,(source-name source)
      :type :file-system
      :system-files ,system-files)))
      :system-files ,(safe-sort system-files #'string<))))

(defmethod sync-source ((source fs-source))
  nil)
+3 −2
Original line number Diff line number Diff line
@@ -17,7 +17,8 @@
          #:clpm/repos
          #:clpm/requirement
          #:clpm/session
          #:clpm/sources/defs)
          #:clpm/sources/defs
          #:clpm/utils)
  (:export #:*vcs-project-override-fun*
           #:ensure-vcs-release-installed!
           #:make-vcs-release
@@ -127,7 +128,7 @@ source using VCS-SOURCE-REGISTER_PROJECT!."))
             (vcs-source-projects-by-name source))
    (list (source-name source)
          :type :vcs
          :projects projects)))
          :projects (safe-sort projects #'string< :key #'car))))

(defmethod sync-source ((source vcs-source))
  nil)