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.