Subject: bug#27590: closed (Re: bug#27590: artanis has a bundled and customized copy of guile-json package)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 01 Aug 2017 12:36:02 +0000

Your bug report

#27590: artanis has a bundled and customized copy of guile-json package

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
27590: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=27590
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#27590: artanis has a bundled and customized copy of guile-json package
From: [email-masked] (Ludovic Courtès)
To: Adonay Felipe Nogueira <[email-masked]>
Cc: [email-masked]
Date: Tue, 01 Aug 2017 14:34:56 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

Adonay Felipe Nogueira <[email-masked]> skribis:

> The following patch is an attempt to fix this.
>
> I noticed that the '->json-string procedure doesn't exist in the
> official guile-json. I tried checking for it also in multiple revisions,
> but couldn't find it. Due to my lack of understanding on how both GNU
> Artanis and guile-json work internally, I assume however that
> '->json-string was similar to 'scm->json-string.

It seems to be the case.

> From 8ec0eaaa0e552e7d99be369a4251b2577ac927ac Mon Sep 17 00:00:00 2001
> From: Adonay Felipe Nogueira <[email-masked]>
> Date: Fri, 28 Jul 2017 11:18:03 -0300
> Subject: [PATCH] gnu: artanis: Unbundled guile-json and version according to
>  documentation.
>
> * gnu/packages/guile.scm (artanis): Unbundled guile-json and version
> according to documentation.

Awesome.  Applied, thank you!

Ludo’.

Subject: artanis has a bundled and customized copy of guile-json package
From: Adonay Felipe Nogueira <[email-masked]>
To: [email-masked]
Date: Wed, 05 Jul 2017 15:39:08 -0300
List-Id: <debbugs-submit.debbugs.gnu.org>

Commit 71b0418843ef0aa8de97734851879a0479c81f69 in the Git repository of
GNU Artanis introduces this issue.

The affected files are at "artanis/third-party/json/upstream". There is
another file at "artanis/third-party/json.scm", but I don't know if it
is from guile-json.

The file at "artanis/third-party/json/upstream/README" says that
upstream is a Git repository in GitHub (ugh), but I found out that our
guile-json package comes from a Git repository in GNU Savannah that is
the same as the one in GitHub (and this one actually has download links
pointing to GNU Savannah)... what a duplicated work. ;)

So far I have attempted:

- Comparison between GNU Artanis'
  "artanis/third-party/json/upstream/builder.scm" (from commit
  71b0418843ef0aa8de97734851879a0479c81f69) with guile-json's
  "json/builder.scm". After each comparison, the local copy of
  guile-json repository was checked-out for a commit prior to the
  current. This was repeated until an exact match was found, and until
  `git checkout` exited with an error.

- Comparison between GNU Artanis'
  "artanis/third-party/json/upstream/parser.scm" (id.) with guile-json's
  "json/parser.scm". After each comparison, the local copy of guile-json
  repository was checked-out for a commit prior to the current. This was
  repeated until an exact match was found, and until `git checkout`
  exited with an error.

However, none of these attempts resulted in exact matches (so that the
two bundled files could be compared). This seems to tell me that commit
71b0418843ef0aa8de97734851879a0479c81f69 already introduced customized
bundles.

For the sake of transparency, here is the GNU Bash script I used for the
comparison attempts:

# "${HOME}/Projetos/Software/guile-json" is my local copy of guile-json
# repository.
cd "${HOME}/Projetos/Software/guile-json"
for each_file in "builder.scm" "parser.scm"; do
  until diff -qwB -I '^[[:space:]]*;' -I 'artanis[/[:space:]]{1,}third-party' "json/${each_file}" "../artanis/artanis/third-party/json/upstream/${each_file}";  do
    git checkout HEAD~1
    if [ $? -ne 0 ]; then
      break
    fi
  done
  git fetch
  git update-ref "remotes/origin/master" "master"
  git checkout "master"
done

-- 
- [[https://libreplanet.org/wiki/User:Adfeno]]
- Palestrante e consultor sobre /software/ livre (não confundir com
  gratis).
- "WhatsApp"? Ele não é livre, por isso não uso. Iguais a ele prefiro
  GNU Ring, ou Tox. Quer outras formas de contato? Adicione o vCard
  que está no endereço acima aos teus contatos.
- Pretende me enviar arquivos .doc, .ppt, .cdr, ou .mp3? OK, eu
  aceito, mas não repasso. Entrego apenas em formatos favoráveis ao
  /software/ livre. Favor entrar em contato em caso de dúvida.