arclanguage / anarki

Community-managed fork of the Arc dialect of Lisp; for commit privileges submit a pull request.
http://arclanguage.github.io
Other
1.17k stars 160 forks source link

re-commit JSON parser, updated GDPR link #177

Closed kennethrapp closed 4 years ago

kennethrapp commented 4 years ago

We can't use Racket's JSON parser for anything containing Arc templates, so I've recommitted and extended @CatDancer's JSON parser to handle this.

The link to download personal data now exports JSON rather than a raw Arc dump, as well as sends proper JSON headers. Also, API integration should be easier for the future.

edit: Arc tests passed and News works fine... I don't know why the Travis build is failing.

rocketnia commented 4 years ago

If you click on the :x: on GitHub, you can see the Travis CI log that shows why it's failing.

In this case the failure is summed up here:

The command "raco test --drdr --package anarki" exited with 1.

That command is part of the Travis CI tests because it simulates the way the Racket package catalog at https://pkgs.racket-lang.org/ builds packages. When a build fails there, the anarki package will show a red status. It runs a build every 24 hours or so, which isn't very convenient for debugging, so I put this command in the .travis.yml so that it would be easier to debug. (That's actually precisely what the --drdr option of raco is designed to help with; it simulates the settings of the package catalog builds.)

The reason that command failed is also shown in the log:

lang-anarki-application.rkt: raco test: non-empty stderr: #"*** redefining span\n"
raco test: 1 "/home/travis/.racket/7.0/pkgs/../../../build/arclanguage/anarki/lib/racket-lang-demo/lang-anarki-library.rkt"
lang-anarki-deep-dependency.rkt: raco test: non-empty stderr: #"*** redefining span\n"
raco test: 0 "/home/travis/.racket/7.0/pkgs/../../../build/arclanguage/anarki/lib/racket-lang-demo/racket-application.rkt"
lang-anarki-library.rkt: raco test: non-empty stderr: #"*** redefining span\n"
raco test: 1 "/home/travis/.racket/7.0/pkgs/../../../build/arclanguage/anarki/lib/racket-lang-demo/racket-deep-dependency.rkt"
raco test: 1 "/home/travis/.racket/7.0/pkgs/../../../build/arclanguage/anarki/lib/uuid.rkt"
racket-application.rkt: raco test: non-empty stderr: #"*** redefining span\n"

These modules are part of the examples for using Anarki as a Racket module language (#lang anarki). The tests are failing because "*** redefining span" is being printed to stderr when they run.

rocketnia commented 4 years ago

I notice you're adding a definition of span in lib/json.arc (with the same implementation it has in lib/util.arc), and lib/html.arc already defines span to mean something else. I'm not sure where to go from here, but picking a single definition and using it throughout the Anarki repo would probably be a good way to go.

kennethrapp commented 4 years ago

sorry. I changed the name of span in json.arc and i'm recommitting. I should have noticed it.