plazi / BLR-website

1 stars 0 forks source link

Treatments are being served on the publications end point #16

Closed mguidoti closed 4 years ago

mguidoti commented 4 years ago

We noticed that some treatments are being returned on the publications endpoint and we believe this is probably because the query passed to Zenodo includes only upload_type=publication parameter, not the publication_type parameter, which is needed to filter out the publication type Taxonomictreatments.

punkish commented 4 years ago

I will remove publication type 'taxonomictreatment'

punkish commented 4 years ago

Hello all, esp. @mguidoti, @teodorgeorgiev, @tcatapano, and @howkins. (And also @myrmoteras).

This should be fixed now. Please check. But wait, there is more. This issue led me down a rabbit-hole that consumed most of my last ten days or so. When I re-emerged from the rabbit-hole, I had changed 21 with 2,604 additions and 2,173 deletions. The result is a deeply refactored code that should make future changes (hopefully) easier, and maintenance a lot easier.

I am pretty sure there are no backward-breaking changes, but since there are so many changes, I have upped the API version number to 2.5.0 (from 2.0.0). There are a few notable, visible changes, esp. in how _links{} are constructed. Specifically, now there are _prev{} and _next{} links also available in addition to _self{}. This might be helpful to those making apps, but is more in keeping with the HATEOAS approach.

Because of all these changes, I recommend you please check out the Zenodeo docs (this note, esp. for @howkins and @teodorgeorgiev).

You might also notice that almost all queries are now faster, some substantially so. But, there is much more to be done. I know certain edge-cases where queries can be quite slow. I am continuing to work on them, but given the vast number of permutations and combinations possible, I have to do a lot of SQL testing.

Going forward, there are a lot of changes and additions planned, some mundane (update the database brining it to par with TB) and some exciting (adding Zenodo metadata to Zenodeo, which should allow much more complicated queries than what Zenodo enables).

Many thanks for your patience. This is the second largest coding project I've ever worked on, and it is challenging, to say the least. (But also a lot of fun 😃.)