Conversation
…iscussion) Signed-off-by: Paul Horton <phorton@sonatype.com>
Signed-off-by: Paul Horton <phorton@sonatype.com>
`reuslts` is now required in Products Response Signed-off-by: Paul Horton <phorton@sonatype.com>
Signed-off-by: Paul Horton <phorton@sonatype.com>
|
Pagination has been added to the following endpoints:
FYI @ppkarwasz @oej |
taleodor
left a comment
There was a problem hiding this comment.
Hi @madpah , great work there.
I believe we should bring back all instances of id-type and id-value filters as those are not filters and not part of pagination. In relation to pagination, the server would need to take into account whether specific filtering was used. If that gets too complex, maybe we need a separate conversation on this.
Also we may need extra nesting due to behaviour of some generators, I'll try to test this over weekend based on your changes - essentially, at some point of TEA iterations, I was getting things like "inlinePaginationClass" without clear attribution to what class exactly was paginated. I'll get back on this but need a little extra time.
Understood - the purpose of those fields was not immediately clear - so I'll read add and aim to make it clear they are about result filtering and NOT pagination. |
Signed-off-by: Paul Horton <phorton@sonatype.com>
FWIW - the generated libs from this schema seem fine and work for me - if you see issues, let me know - might require a fix upstream in OpenAPI Generator 😉 |
|
So the issue I mentioned is happening here, see below list of classes for Java server generator and notice TeaInlineObject ones: Steps to reproduce: Generally, AI should know how to fix this (it'll create some additional nested structures), but let me know if you need input from me. |
|
What's the issue with the TeaInline* objects being generated @taleodor? This is fine in other languages for sure - so not sure of the issue here. |
Basically, it makes it very hard to produce server code and then makes code unmaintainable because:
|
|
Yeah - I see the inline objects - but don't understand what the issue is here @taleodor - is it because the naming is not deterministic, or something else? |
Yes, essentially we can't build proper server code like that. Like we need to use these classes to build pagination but we can't do it in a meaningful way - it's like working with obfuscated code. |
|
Not sure I agree with the assessment @taleodor - I've used this before in both generated server and client code. The only real issue I've experienced is non-deterministic names of Classes which can be a pain. Do you have a repo or commit somewhere that illustrates your pain that we can reference? |
|
I believe we shouldn't leave it like that in any case since it's public spec and this creates a lot of friction and uncertainty on the implementation side. I'll propose a fix to this PR - should have time over the weekend. |
This PR (currently) adds Opaque Pagination to the
/productsendpoint as described in #179 - for review and comment before rolling it out to the other endpoints.