Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migration von JSON Schema draft-3 zu draft-7 #151

Open
christian-weiss opened this issue Aug 24, 2019 · 2 comments
Open

Migration von JSON Schema draft-3 zu draft-7 #151

christian-weiss opened this issue Aug 24, 2019 · 2 comments

Comments

@christian-weiss
Copy link
Contributor

Laut https://json-schema.org/specification.html sind

  • draft-7
  • draft-6
  • draft-4

derzeit die aktuellen Spezifikationen. Ältere Spezifikationen werden hier gelistet:
https://json-schema.org/specification-links.html
und dort als "expired, but may be of historical interest" aufgeführt.

Freifunk setzt bisher draft-3 ein. Diese Spezifikation ist von 2010. Neuere Validatoren haben keinen Support mehr für diese alten Spezifikationen und ältere Validatoren werden oft nicht mehr gepflegt, womit Vulnerabilities / Security Issues wahrscheinlich sind / wahrscheinlicher werden.

Ich rate dazu zusätzliche zu den draft-3 Freifunk JSON Schema Dateien nun auch draft-7 Dateien bereitzustellen, um eine Soft Migration zu ermöglichen. Zudem würde ich an bekannte Script- / Client-Entwickler, sowie in forum.freifunk.net und an technische Ansprechpartner in den lokalen Gruppen (E-Mail) eine DEPRECATION NOTICE bzgl. draft-3 veröffentlichen, mit der Bitte um Migration auf draft-7 bis zum 31.12.2019.

Zu diesem Zeitpunkt würde ich gerne die draft-3 Dateien aus unserem Repo entfernen, nachdem wir natürlich "geprüft" haben wie gut draft-7 adaptiert wurde. Dieser Vorgang ist nicht disruptiv - eine Soft-Migration.

Mir fallen folgende Scripte / Clients ein:

Bitte helft mit alle bekannten Freifunk-Scripts / -Clients hier zu listen, damit wir bei der Migration keines vergessen.

Bevor sich jemand den Aufwand macht draft-7 Freifunk JSON Schema Dateien zu erstellen, wäre es schon, hierzu vorab Eure Meinung zu bekommen.

Wie denkt Ihr darüber?

@christian-weiss
Copy link
Contributor Author

Ich konnte auf die schnelle nicht herausfinden, ob jsonform (für den API Generator) nun draft-7 unterstützt. Das Projekt scheint noch aktiv entwickelt zu werden, jedoch findes man keine Aussagen, zu welchen Spezifikation es kompatibel ist.

Aber auch die Alternativen, die auf https://json-schema.org/implementations.html gelistet sind, schweigen sich zur unterstützten Spezifikation aus:
https://github.com/brutusin/json-forms
https://jsonforms.io/

Könnte sich da mal ein JavaScript-Fan schlau machen?

@andibraeu
Copy link
Member

jsonform unterstützt leider nur draft-3, weil der verwendete Validator nur draft-3 unterstützt

jsonforms.io nutzt AJV: https://github.com/epoberezkin/ajv und das unterstüzt draft-4 bis draft-7

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants