Skip to content

5.0 release#68

Merged
newhouse merged 53 commits intomasterfrom
5-point-0
Dec 27, 2024
Merged

5.0 release#68
newhouse merged 53 commits intomasterfrom
5-point-0

Conversation

@newhouse
Copy link
Contributor

@newhouse newhouse commented Dec 20, 2024

5.0.0 that updates Pydantic and other dependencies, while addressing some breaking changes.

@newhouse newhouse requested a review from fostimus December 21, 2024 00:46
@newhouse
Copy link
Contributor Author

@cyrusradfar and @rgimen3z

Would you mind pulling down and trying out 5.0.0b1 to make sure that things are working as expected for you? I'd feel much better if you two were able to make sure that this was working well for you before I released it.

Thanks!!!

@cyrusradfar
Copy link

cyrusradfar commented Dec 21, 2024 via email

Copy link

@rgimen3z rgimen3z left a comment

Choose a reason for hiding this comment

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

thanks for working on this!

pyproject.toml Outdated
# urllib must be pinned to <2 due to an issue with the `requests_toolbelt`
# dependency in `gql`.
# Similar: https://github.com/apache/arrow/commit/4295e3dd06f9f507f75ccc780eaca16a6b621a02
urllib3 = "<2"

Choose a reason for hiding this comment

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

could we unpin this? we have a couple dependencies that require urllib3>=2 that we'd have to downgrade. I believe I was able to remove the dependency in #65 and things still worked fine, but I don't have all the context

pydocstyle = "^6.3.0"
pylint = "^2.16.2"

# FIXME: Upgrading mypy will require updates to aliased fields. e.g.

Choose a reason for hiding this comment

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

i noticed this too, I think these aliases are just for serialization, and updating to serialization_alias makes mypy happy (also see: https://github.com/anvilco/python-anvil/pull/65/files)

@cyrusradfar
Copy link

cyrusradfar commented Dec 22, 2024

@newhouse after reviewing and testing, it looked good. I saw a opportunity to clean up what I added and re-tested. Placed that here.

Otherwise, I'm good to go and would agree that the less we can pin on specific versions the better but that's non-blocking feedback.

Thanks for following up and taking this to the finish line.

Copy link

@cyrusradfar cyrusradfar left a comment

Choose a reason for hiding this comment

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

👍 Approval

This is a solid update that modernizes the codebase and improves developer experience.

Key improvements I'm seeing:

  • Upgrades Python version support (dropping 3.7, adding 3.11)
  • Updates to Pydantic v2 syntax and best practices (yay!)
  • Adds helpful example code and documentation
  • Improves file handling with new FileCompatibleBaseModel
  • Adds comprehensive tests for file handling

💡 Non-blocking Suggestions

  1. Documentation

    • Consider adding a CHANGELOG.md entry for this significant version bump, last is from July
    • The new CLI example is great - maybe add it to the README.md highlights as well
  2. Code Improvements

    • The commented out json_deserialize code in http.py could be removed
    • Consider adding type hints for the new file handling methods in models.py
  3. Testing

    • The new file handling tests are thorough, but we could add a few edge cases:
      • Empty files
      • Very large files
      • Files with special characters in names

Overall

Lovely work modernizing the codebase while maintaining backward compatibility. The improved file handling and examples will make integration much easier for developers.

There's always more to do -- ready to merge! 🚀

@newhouse
Copy link
Contributor Author

@rgimenez and @cyrusradfar

I have removed the pegging of urllib3 and re-published at 5.0.0b2 if you'd like to try it. Though I may just merge and publish this today.

1 similar comment
@newhouse
Copy link
Contributor Author

@rgimenez and @cyrusradfar

I have removed the pegging of urllib3 and re-published at 5.0.0b2 if you'd like to try it. Though I may just merge and publish this today.

@newhouse
Copy link
Contributor Author

@rgimenez and @cyrusradfar

I have removed the pegging of urllib3 and re-published at 5.0.0b2 if you'd like to try it. Though I may just merge and publish this today.

@cyrusradfar
Copy link

@rgimenez and @cyrusradfar

I have removed the pegging of urllib3 and re-published at 5.0.0b2 if you'd like to try it. Though I may just merge and publish this today.

pulled and tested locally with no new issues. Thanks for adding the changelog

@newhouse
Copy link
Contributor Author

@rgimen3z Im gonna merge this and it has been published as 5.0.0 but it doesn't support Python 3.12 as I couldn't get it to pass the CI tests. Maybe your PR can be revisited to fix that in another version.

@newhouse newhouse merged commit 9f948af into master Dec 27, 2024
4 checks passed
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.

5 participants