Skip to content

Commit

Permalink
Guard our BigQuery release metadata sync against upcoming schema chan…
Browse files Browse the repository at this point in the history
…ges (pypi#16956)
  • Loading branch information
ewdurbin authored Oct 23, 2024
1 parent 7405bda commit be5f770
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 1 deletion.
6 changes: 6 additions & 0 deletions tests/unit/packaging/test_tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -419,6 +419,8 @@ def test_update_release_description(db_request):
SchemaField("maintainer", "STRING", "NULLABLE"),
SchemaField("maintainer_email", "STRING", "NULLABLE"),
SchemaField("license", "STRING", "NULLABLE"),
SchemaField("license_expression", "STRING", "NULLABLE"),
SchemaField("license_files", "STRING", "REPEATED"),
SchemaField("keywords", "STRING", "NULLABLE"),
SchemaField("classifiers", "STRING", "REPEATED"),
SchemaField("platform", "STRING", "REPEATED"),
Expand Down Expand Up @@ -624,6 +626,8 @@ def find_service(name=None):
"maintainer_email": form_factory["maintainer_email"].data
or None,
"license": form_factory["license"].data or None,
"license_expression": None,
"license_files": [],
"keywords": form_factory["description_content_type"].data
or None,
"classifiers": form_factory["classifiers"].data or [],
Expand Down Expand Up @@ -774,6 +778,8 @@ def find_service(name=None):
"maintainer": release.maintainer or None,
"maintainer_email": release.maintainer_email or None,
"license": release.license or None,
"license_expression": None,
"license_files": [],
"keywords": release.keywords or None,
"classifiers": release.classifiers or [],
"platform": [release.platform] or [],
Expand Down
2 changes: 1 addition & 1 deletion warehouse/packaging/tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -316,7 +316,7 @@ def update_bigquery_release_files(task, request, dist_metadata):
# values individually
json_rows = dict()
for sch in table_schema:
field_data = dist_metadata[sch.name]
field_data = dist_metadata.get(sch.name, None)

if isinstance(field_data, datetime.datetime):
field_data = field_data.isoformat()
Expand Down

0 comments on commit be5f770

Please sign in to comment.