unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: "Björn Höfling" <bjoern.hoefling@bjoernhoefling.de>
To: 38630@debbugs.gnu.org
Subject: [bug#38630] Software Heritage (swh): Fix API change, causing repeatedly submitting archives
Date: Sun, 15 Dec 2019 22:34:33 +0100	[thread overview]
Message-ID: <20191215223433.5ce5be20@alma-ubu> (raw)


[-- Attachment #1.1: Type: text/plain, Size: 403 bytes --]

Hi Guix,

when linting, I recognized that the archival linter was repeatedly
sending packages to the SWH, despite that the package was already
archived.

With some investigations, I noticed they changed the API. Here's a
patch that fixes it.

I have not communicated with SWH about that, especially I have not asked
SWH why they broke the API without updating the version number.

Björn


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-swh-Fix-API-call-for-getting-origin.patch --]
[-- Type: text/x-patch, Size: 1482 bytes --]

From a5ada85d168b45d517d8faf0d79ad5beccc26911 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20H=C3=B6fling?=
 <bjoern.hoefling@bjoernhoefling.de>
Date: Sun, 15 Dec 2019 22:00:56 +0100
Subject: [PATCH] swh: Fix API call for getting origin.

When using the archival linter, git origins already in the archive where
not recognized due to an API change and where repeatedly asked for archival.
This is fixed here.

* guix/swh.scm (lookup-origin): Fix API URI for getting origin.
(<origin>): Fix comment with API URI example.
---
 guix/swh.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/guix/swh.scm b/guix/swh.scm
index 7acad05928..372e4c84d1 100644
--- a/guix/swh.scm
+++ b/guix/swh.scm
@@ -244,7 +244,7 @@ FALSE-IF-404? is true, return #f upon 404 responses."
        docstring
        (call (swh-url components ...) json->value)))))
 
-;; <https://archive.softwareheritage.org/api/1/origin/git/url/https://github.com/guix-mirror/guix/>
+;; <https://archive.softwareheritage.org/api/1/origin//https://github.com/guix-mirror/guix/get>
 (define-json-mapping <origin> make-origin origin?
   json->origin
   (id origin-id)
@@ -365,7 +365,7 @@ FALSE-IF-404? is true, return #f upon 404 responses."
 
 (define-query (lookup-origin url)
   "Return an origin for URL."
-  (path "/api/1/origin/git/url" url)
+  (path "/api/1/origin" url "get")
   json->origin)
 
 (define-query (lookup-content hash type)
-- 
2.23.0


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

             reply	other threads:[~2019-12-15 21:35 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-15 21:34 Björn Höfling [this message]
2019-12-17 16:41 ` [bug#38630] Software Heritage (swh): Fix API change, causing repeatedly submitting archives Ludovic Courtès
2019-12-17 22:32   ` bug#38630: " Björn Höfling
2019-12-18  9:22     ` [bug#38630] " Jonathan Brielmaier
2019-12-18 21:44       ` Björn Höfling
2019-12-20  0:48         ` Jonathan Brielmaier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191215223433.5ce5be20@alma-ubu \
    --to=bjoern.hoefling@bjoernhoefling.de \
    --cc=38630@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).