-
Notifications
You must be signed in to change notification settings - Fork 10
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
Review Perseids implementation #163
Comments
per 11-Oct-2019 technical committee meeting @balmas will review, others welcome to as well. Initial feedback from @PonteIneptique is that it looks good. |
On the whole, I think this looks great! The only things I noticed might be more issues with the dts documentation than the implementation itself.
But elsewhere they are not.
vs
Otherwise, I think this is great and that we should add it to our list of known implementations. (@zfletch , just a question about the implementation though ... Thibault and I were a little sad to see the ingest of data from XML into a SQL database ... just curious about your design choice here and whether you considered other approaches, maybe a Ruby implementation of the Capitains models?) |
Thanks so much for the detailed review! I've fixed some of the issues you pointed out and I have followup questions and comments for other ones:
I agree and I think a recommendation would be useful. I wasn't sure what to use as the ID while developing, so I ended up copying
I think my implementation uses escaped IDs when they're part of a path and unescaped IDs when they're just a normal string. So,
I'm actually pretty confused about which one is correct to use here. The documentation says (The reason this implementation used
Thanks for pointing this out! I've added
Thanks for noticing this. There is a pretty major bug in the link functionality. I've (hopefully) fixed it in this PR. I also saw this issue about
I had two reasons for doing it this way. The primary reason is that this is the technology stack I'm most familiar with. I thought it would be easier for me to develop, maintain, and deal with hosting using it. The secondary reason is that I wanted to design it fairly differently from Capitains—not because there's any problem with Capitains—but because I thought I would be able to provide more useful feedback if I implemented it differently. I was assuming that some other future implementations would use a SQL database and so, writing my own with SQL, I could find particular parts of the spec that were difficult to handle with SQL and offer suggestions. |
Thanks for your response @zfletch . I have entered issues for the points about the spec needing clarification (for @id value of collections endpoint and best practices for escaping @id values). Have also made a ref back to this item in #141 to make sure the totalItems documentation being updated takes your confusion into account. Thanks for making the fixes to the implementation and for your explanation on your design approach with SQL. It's definitely good to have multiple perspectives and example implementations. |
I've finished writing a Perseids implementation of the DTS API. The base URI is https://dts.perseids.org/ and the source code is available at https://github.com/perseids-project/dts-api/.
I believe that I've implemented the spec correctly, but I'm sure there are still bugs and other issues. If you find any problems or have feedback, please let me know in a comment or create and issue at https://github.com/perseids-project/dts-api/issues/.
Thanks!
The text was updated successfully, but these errors were encountered: