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

Pydantic 2 Update #36

Merged
merged 19 commits into from
Jan 1, 2024
Merged

Pydantic 2 Update #36

merged 19 commits into from
Jan 1, 2024

Conversation

brysontyrrell
Copy link
Collaborator

This large pull request is an update to the project to move from Pydantic v1 to v2. When the SDK project first started v2 was only being planned. Now that it has matured it's time for this project to adopt the latest version. This should address some conflicts that have been encountered in environments where v2 was already installed, and it should also provide an execution speed increase.

Most of the changes are switching from deprecated model configs and methods to the new v2 options. All Optional fields must have a default in v2 (the SDK models all default to None as was the behavior before this update). This is the repetitive bulk of the PR. Most notable is the swap of Extra and Config for model_confg/ConfigDict.

All existing tests have been ensured to pass without modification beyond changing out v1 to v2 Pydantic code. Additional tests have been added for the webhook generators to ensure those models produce mock client data as expected.

There is a new integration test file that uses the dummy Jamf Cloud instance provided by Jamf for integration tests. These tests will not be used in GitHub Actions yet. A long term plan for integration testing will be worked out, but locally this allows developers to ensure live read operations work as expected.

@brysontyrrell brysontyrrell added bug Something isn't working enhancement New feature or request labels Dec 29, 2023
@brysontyrrell
Copy link
Collaborator Author

This also fixes two bugs I found (one in Pro pagination).

Copy link
Member

@natewalck natewalck left a comment

Choose a reason for hiding this comment

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

shipit6

@brysontyrrell brysontyrrell merged commit 6d61b17 into main Jan 1, 2024
1 check passed
@brysontyrrell brysontyrrell deleted the pydantic-2-update branch January 1, 2024 23:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants