Skip to content

Commit c8f0542

Browse files
committed
0.14.5: fix OpenAPI parsing with current Jinja
1 parent 91ae98c commit c8f0542

5 files changed

+10
-4
lines changed

dactyl/target.py

+2
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,8 @@ def load_pages(self):
215215
[p.data["name"] for p in swagger_pages])
216216
pages += swagger_pages
217217
except Exception as e:
218+
import traceback
219+
traceback.print_tb(e.__traceback__)
218220
recoverable_error("Error when parsing OpenAPI definition %s: %s" %
219221
(page_data, e), self.config.bypass_errors)
220222
# Omit the API def from the page list if an error occurred

dactyl/templates/template-openapi_data_type.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ This type can contain the following fields:
5555
| Field | Type | Required? | Description |
5656
|-------|------|-----------|-------------|
5757
{%- for name,field in properties.items() %}
58-
| `{{name}}` | {{field.type|title}}{% if "items" in field.keys() and "title" in field["items"].keys() %} of [{{field["items"].title}}]({{type_link(field["items"].title)}}){% endif %} {% if field["title"] is defined %}([{{field.title}}]({{type_link(field.title)}})){% endif %} | {{"Required" if name in required else "Optional"}} | {{field.description}} |
58+
| `{{name}}` | {{field.type|title}}{% if "items" in field.keys() and "title" in field["items"].keys() %} of [{{field["items"].title}}]({{type_link(field["items"].title)}}){% endif %} {% if field["title"] is defined %}([{{field.title}}]({{type_link(field.title)}})){% endif %} | {{"Required" if field.required else "Optional"}} | {{field.description}} |
5959
{%- endfor %}
6060

6161
{% if additionalProperties is defined and additionalProperties == True %}This type MUST NOT contain any additional fields.{% endif %}

dactyl/templates/template-openapi_endpoint.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ The request uses the following fields:
5252
| Field | Type | Required? | Description |
5353
|-------|------|-----------|-------------|
5454
{%- for name,field in thisbody.schema.properties.items() %}
55-
| `{{name}}` | {{field.type|title}}{% if "items" in field.keys() and "title" in field["items"].keys() %} of [{{field["items"].title}}]({{type_link(field["items"].title)}}){% endif %} {% if field["title"] is defined %}([{{field.title}}]({{type_link(field.title)}})){% endif %} | {{"Required" if name in required else "May be omitted"}} | {% if field.description is defined %}{{field.description}}{% endif %} |
55+
| `{{name}}` | {{field.type|title}}{% if "items" in field.keys() and "title" in field["items"].keys() %} of [{{field["items"].title}}]({{type_link(field["items"].title)}}){% endif %} {% if field["title"] is defined %}([{{field.title}}]({{type_link(field.title)}})){% endif %} | {{"Required" if field.required else "May be omitted"}} | {% if field.description is defined %}{{field.description}}{% endif %} |
5656
{%- endfor %}
5757
{% endif %}
5858

@@ -82,7 +82,7 @@ The response uses the following fields:
8282
| Field | Type | Required? | Description |
8383
|-------|------|-----------|-------------|
8484
{%- for name,field in thisbody.schema.properties.items() %}
85-
| `{{name}}` | {{field.type|title}}{% if "items" in field.keys() and "title" in field["items"].keys() %} of [{{field["items"].title}}]({{type_link(field["items"].title)}}){% endif %} {% if field["title"] is defined %}([{{field.title}}]({{type_link(field.title)}})){% endif %} | {{"Required" if name in required else "May be omitted"}} | {% if field.description is defined %}{{field.description}}{% endif %} |
85+
| `{{name}}` | {{field.type|title}}{% if "items" in field.keys() and "title" in field["items"].keys() %} of [{{field["items"].title}}]({{type_link(field["items"].title)}}){% endif %} {% if field["title"] is defined %}([{{field.title}}]({{type_link(field.title)}})){% endif %} | {{ "Required" if field.required else "May be omitted"}} | {% if field.description is defined %}{{field.description}}{% endif %} |
8686
{%- endfor %}
8787
{% endif %}{# TODO: handle allOf, etc. #}
8888

dactyl/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = '0.14.4'
1+
__version__ = '0.14.5'

releasenotes.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# v0.14.5 Release Notes
2+
3+
This release fixes a bug with the OpenAPI spec parser that caused it to fail when used with Jinja 3.x. This same bug also caused some fields to show as "Optional" or "May be omitted" when they were required.
4+
15
# v0.14.4 Release Notes
26

37
This release fixes several bugs:

0 commit comments

Comments
 (0)