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

Chore new component attribute parsing #334

Merged
merged 18 commits into from
Nov 3, 2022

Conversation

juhaku
Copy link
Owner

@juhaku juhaku commented Nov 3, 2022

This PR will add a new implementation of a new component attribute parsing functionality. The current one residing in attr.rs is far too limited and static for the purpose of attribute parsing since there actually is a need to combine different set of attributes based on different cases in more dynamic manner. This also makes adding new component attributes far easier and quicker as requisites evolve over time.

The original attr.rs should be phased out eventually when all it's referrers have been migrated to the new implementation. Currently there is IntoParams derive macro which is still using the old implementation.

Additionally to new component attribute parsing logic added this PR will fix couple of bugs regarding attribute parsing. One which is referenced below where Vec example was not redered correctly under array type itself in the generated OpenAPI doc. Another bug did not allow and did not render correctly xml attributes for Option Vec fields of structs decorated with ToSchema derive macro.

Fixes #225, resolves #331

@juhaku juhaku marked this pull request as ready for review November 3, 2022 00:23
@juhaku juhaku merged commit a406e59 into master Nov 3, 2022
@juhaku juhaku deleted the chore-new-component-attribute-parsing branch November 3, 2022 00:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Released
Development

Successfully merging this pull request may close these issues.

Vec example is incorrect
1 participant