Skip to content
This repository has been archived by the owner on Jul 19, 2021. It is now read-only.

Add ARCHITECTURE.rst and module docstrings #6

Closed
wants to merge 1 commit into from

Conversation

RobbeSneyders
Copy link
Member

This PR adds high level documentation for Connexion

  • An ARCHITECTURE.rst file with a diagram of the high level architecture and a short explanation of the main components
  • Module docstrings for each module

Since documentation on the architecture and internals was only sparsely available, I had to build my understanding mostly by going through the code. This wasn't always straightforward so let me know if you think I misinterpreted / misrepresented something, or if some descriptions aren't clear.

@coveralls
Copy link

coveralls commented Jun 20, 2021

Pull Request Test Coverage Report for Build 958559082

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 96.853%

Totals Coverage Status
Change from base Build 942146704: 0.0%
Covered Lines: 2770
Relevant Lines: 2860

💛 - Coveralls

Copy link
Member

@Ruwann Ruwann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AFAICT, the architecture seems logical to me. Haven't been able to check everything, so I'll continue when I have tried it out.

Minor comment on the diagram is that the 1:n are not super clear, I would perhaps use a similar notation to UML diagrams by indicating the cardinality at both ends of the relationship.

@@ -1 +1,16 @@
"""
This module defines an Connexion APIs. A connexion API takes in an OpenAPI specification and
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo: "an Connexion APIs."

@@ -1,3 +1,7 @@
"""
This module defines a FlaskApp, a Connexion application to wrap an AioHttp application.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"to wrap a Flask application"

@@ -1,4 +1,7 @@
# Decorators to change the return type of endpoints
"""
This module defines an view function decorator to validate its responses.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"an view function" --> "a view function"

to framework specific responses.

.. _Flask blueprint: https://flask.palletsprojects.com/en/2.0.x/blueprints/
.. _OpenAPI operation: https://github.com/OAI/OpenAPI-Specification/blob/main/versions/2.0.md#operation-object
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps provide a link to both swagger 2 and OpenAPI 3 operation objects to make it clear both versions are supported?

https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md#operationObject

@RobbeSneyders
Copy link
Member Author

Closing as this has been merged upstream.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants