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

Call .value when serializing lists of enum values #248

Merged
merged 3 commits into from
Jul 21, 2023

Conversation

mgyucht
Copy link
Contributor

@mgyucht mgyucht commented Jul 21, 2023

Changes

Currently, lists of enum values in request objects are incorrectly serialized in the as_dict() method. Instead of putting the enum directly into the resulting dictionary, the enum's value needs to be added to the dictionary.

Closes #214.

Tests

Updated test_cluster_events to add a filter on EventType, which is a list of enum values.

@mgyucht mgyucht requested a review from tanmay-db July 21, 2023 13:38
Copy link
Contributor

@tanmay-db tanmay-db left a comment

Choose a reason for hiding this comment

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

Was this not detected earlier on because there weren't any tests covering this?

@mgyucht
Copy link
Contributor Author

mgyucht commented Jul 21, 2023

I don't think there is any test covering this now. The test I added failed when run on main but passes on my branch.

@mgyucht mgyucht merged commit aa9d048 into main Jul 21, 2023
@mgyucht mgyucht deleted the fix-enum-value-serialization branch July 21, 2023 14:09
tanmay-db added a commit that referenced this pull request Jul 26, 2023
* Fixed serialization of lists of enum values ([#248](#248)).
* Handled nested query parameters in ApiClient.do()
([#249](#249)).
* Improved access of `__annotations__` ([#239](#239)).

API Changes:

 * Changed `create()` method for [a.account_metastore_assignments](https://databricks-sdk-py.readthedocs.io/en/latest/account/account_metastore_assignments.html) account-level service to no longer return `databricks.sdk.service.catalog.CreateMetastoreAssignmentsResponseItemList` dataclass.
 * Added `connection_name` field for `databricks.sdk.service.catalog.CreateCatalog`.
 * Added `access_point` field for `databricks.sdk.service.catalog.CreateExternalLocation`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.CreateExternalLocation`.
 * Removed `databricks.sdk.service.catalog.CreateMetastoreAssignmentsResponseItem` dataclass.
 * Added `access_point` field for `databricks.sdk.service.catalog.ExternalLocationInfo`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.ExternalLocationInfo`.
 * Added `access_point` field for `databricks.sdk.service.catalog.TableInfo`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.TableInfo`.
 * Added `access_point` field for `databricks.sdk.service.catalog.UpdateExternalLocation`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.UpdateExternalLocation`.
 * Added `access_point` field for `databricks.sdk.service.catalog.VolumeInfo`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.VolumeInfo`.
 * Added `databricks.sdk.service.catalog.EncryptionDetails` dataclass.
 * Added `databricks.sdk.service.catalog.SseEncryptionDetails` dataclass.
 * Added `databricks.sdk.service.catalog.SseEncryptionDetailsAlgorithm` dataclass.
 * Added [a.account_network_policy](https://databricks-sdk-py.readthedocs.io/en/latest/account/account_network_policy.html) account-level service.
 * Added `databricks.sdk.service.settings.AccountNetworkPolicyMessage` dataclass.
 * Added `databricks.sdk.service.settings.DeleteAccountNetworkPolicyRequest` dataclass.
 * Added `databricks.sdk.service.settings.DeleteAccountNetworkPolicyResponse` dataclass.
 * Added `databricks.sdk.service.settings.ReadAccountNetworkPolicyRequest` dataclass.
 * Added `databricks.sdk.service.settings.UpdateAccountNetworkPolicyRequest` dataclass.

OpenAPI SHA: fbdd0fa3e83fed2c798a58d376529bdb1285b915, Date: 2023-07-26
@tanmay-db tanmay-db mentioned this pull request Jul 26, 2023
tanmay-db added a commit that referenced this pull request Jul 27, 2023
* Fixed serialization of lists of enum values ([#248](#248)).
* Handle nested query parameters in ApiClient.do() ([#249](#249)).
* Improve access of `__annotations__` ([#239](#239)).

API Changes:

 * Changed `create()` method for [a.account_metastore_assignments](https://databricks-sdk-py.readthedocs.io/en/latest/account/account_metastore_assignments.html) account-level service to no longer return `databricks.sdk.service.catalog.CreateMetastoreAssignmentsResponseItemList` dataclass.
 * Added `connection_name` field for `databricks.sdk.service.catalog.CreateCatalog`.
 * Added `access_point` field for `databricks.sdk.service.catalog.CreateExternalLocation`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.CreateExternalLocation`.
 * Removed `databricks.sdk.service.catalog.CreateMetastoreAssignmentsResponseItem` dataclass.
 * Added `access_point` field for `databricks.sdk.service.catalog.ExternalLocationInfo`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.ExternalLocationInfo`.
 * Added `access_point` field for `databricks.sdk.service.catalog.TableInfo`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.TableInfo`.
 * Added `access_point` field for `databricks.sdk.service.catalog.UpdateExternalLocation`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.UpdateExternalLocation`.
 * Added `access_point` field for `databricks.sdk.service.catalog.VolumeInfo`.
 * Added `encryption_details` field for `databricks.sdk.service.catalog.VolumeInfo`.
 * Added `databricks.sdk.service.catalog.EncryptionDetails` dataclass.
 * Added `databricks.sdk.service.catalog.SseEncryptionDetails` dataclass.
 * Added `databricks.sdk.service.catalog.SseEncryptionDetailsAlgorithm` dataclass.
 * Added [a.account_network_policy](https://databricks-sdk-py.readthedocs.io/en/latest/account/account_network_policy.html) account-level service.
 * Added `databricks.sdk.service.settings.AccountNetworkPolicyMessage` dataclass.
 * Added `databricks.sdk.service.settings.DeleteAccountNetworkPolicyRequest` dataclass.
 * Added `databricks.sdk.service.settings.DeleteAccountNetworkPolicyResponse` dataclass.
 * Added `databricks.sdk.service.settings.ReadAccountNetworkPolicyRequest` dataclass.
 * Added `databricks.sdk.service.settings.UpdateAccountNetworkPolicyRequest` dataclass.

OpenAPI SHA: a1b6c1ecfaab6635911d3c060a8dd797ac6b2d4d, Date: 2023-07-27
tanmay-db added a commit that referenced this pull request Jul 27, 2023
* Fixed serialization of lists of enum values
([#248](#248)).
* Fixed examples that used incorrect keyword argument names.
(databricks/databricks-sdk-go#560)
* Handled nested query parameters in ApiClient.do()
([#249](#249)).
* Improved access of `__annotations__`
([#239](#239)).

API Changes:

* Changed `create()` method for
[a.account_metastore_assignments](https://databricks-sdk-py.readthedocs.io/en/latest/account/account_metastore_assignments.html)
account-level service to no longer return
`databricks.sdk.service.catalog.CreateMetastoreAssignmentsResponseItemList`
dataclass.
* Added `connection_name` field for
`databricks.sdk.service.catalog.CreateCatalog`.
* Added `access_point` field for
`databricks.sdk.service.catalog.CreateExternalLocation`.
* Added `encryption_details` field for
`databricks.sdk.service.catalog.CreateExternalLocation`.
* Removed
`databricks.sdk.service.catalog.CreateMetastoreAssignmentsResponseItem`
dataclass.
* Added `access_point` field for
`databricks.sdk.service.catalog.ExternalLocationInfo`.
* Added `encryption_details` field for
`databricks.sdk.service.catalog.ExternalLocationInfo`.
* Added `access_point` field for
`databricks.sdk.service.catalog.TableInfo`.
* Added `encryption_details` field for
`databricks.sdk.service.catalog.TableInfo`.
* Added `access_point` field for
`databricks.sdk.service.catalog.UpdateExternalLocation`.
* Added `encryption_details` field for
`databricks.sdk.service.catalog.UpdateExternalLocation`.
* Added `access_point` field for
`databricks.sdk.service.catalog.VolumeInfo`.
* Added `encryption_details` field for
`databricks.sdk.service.catalog.VolumeInfo`.
 * Added `databricks.sdk.service.catalog.EncryptionDetails` dataclass.
* Added `databricks.sdk.service.catalog.SseEncryptionDetails` dataclass.
* Added `databricks.sdk.service.catalog.SseEncryptionDetailsAlgorithm`
dataclass.
* Added
[a.account_network_policy](https://databricks-sdk-py.readthedocs.io/en/latest/account/account_network_policy.html)
account-level service.
* Added `databricks.sdk.service.settings.AccountNetworkPolicyMessage`
dataclass.
* Added
`databricks.sdk.service.settings.DeleteAccountNetworkPolicyRequest`
dataclass.
* Added
`databricks.sdk.service.settings.DeleteAccountNetworkPolicyResponse`
dataclass.
* Added
`databricks.sdk.service.settings.ReadAccountNetworkPolicyRequest`
dataclass.
* Added
`databricks.sdk.service.settings.UpdateAccountNetworkPolicyRequest`
dataclass.

OpenAPI SHA: a1b6c1ecfaab6635911d3c060a8dd797ac6b2d4d, Date: 2023-07-27

---------

Signed-off-by: Tanmay Rustagi <88379306+tanmay-db@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

IAM: WorkspacePermission Enum value
2 participants