-
Notifications
You must be signed in to change notification settings - Fork 53
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
new: atddiff tool #358
new: atddiff tool #358
Conversation
It mostly works but incorrect locations are reported for parametrized types.
to do: avoid infinite looping on recursive type definitions |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
Another important thing to do is honor the |
the error messages.
ship it! |
some comparison e.g. 'type t = a' and 'type t = b' will result in treating types 'a' and 'b' as the same type.
- object field renaming with '<json name="...">' - enum/variant renaming with '<json name="...">' - JSON maps with '(string * _) list <json repr="object">'
This is feature-complete for a first release unless I forgot something. I'll update the documentation in another PR while the opam release is in progress. |
CHANGES: * atdts: Stop compiler errors on generated typescript (ahrefs/atd#348) * atdts: Don't fail on `wrap` constructs (ahrefs/atd#353) * atdcat: New option `-remove-wraps` which pretty-prints the type definitions without `wrap` constructs (ahrefs/atd#353) * atdd: Add `dlang` backend to generate D code from ATD definitions (ahrefs/atd#349) * new tool: atddiff. Compares two versions of an ATD file and reports possible incompatibilities in the JSON data. Atddiff ships as part of the `atd` package together with `atdcat` (ahrefs/atd#352, ahrefs/atd#358)
CHANGES: * atdts: Stop compiler errors on generated typescript (ahrefs/atd#348) * atdts: Don't fail on `wrap` constructs (ahrefs/atd#353) * atdcat: New option `-remove-wraps` which pretty-prints the type definitions without `wrap` constructs (ahrefs/atd#353) * atdd: Add `dlang` backend to generate D code from ATD definitions (ahrefs/atd#349) * new tool: atddiff. Compares two versions of an ATD file and reports possible incompatibilities in the JSON data. Atddiff ships as part of the `atd` package together with `atdcat` (ahrefs/atd#352, ahrefs/atd#358)
This implements #352
I still need to review the test results more carefully and add tests.For now, the output is text. We can add JSON output in another PR (see #360).PR checklist
CHANGES.md
is up-to-date