-
Notifications
You must be signed in to change notification settings - Fork 43
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
Upgrading to Pydantic v2 and DiffSync v2 #327
base: develop
Are you sure you want to change the base?
Upgrading to Pydantic v2 and DiffSync v2 #327
Conversation
Looks like this is failing because of the removed docstrings in
|
I'm onboard with getting this merged in and let's then take a pass at getting the rest updated. For that update (not this one), @theandrelima would we be good to update Python minimums in your environment? Only because Pandas and Numpy are aggressively moving forward. |
I was off for a couple of weeks. Back now and happy to see that this might get merged soon, hopefully? All right! tWill do. |
Overview
network-importer
's dependency onpydantic = "^1.6"
limits users who need to use other packages dependent on Pydantic 2.x in the same Python environment.The original motivation behind this PR was to move
network-importer
's dependency to Pydantic v2.x. However,network-importer
depends on DiffSync, which in turn also depends on Pydantic.For that, moving to DiffSync v2 is also required for compatibility with Pydantic v2.
Changes Made
pydantic-settings
.4.0.0
(subject to NTC's discretion) due to breaking changes.Testing
invoke pytest
command. (see Additional Notes below)check
andapply
modes, and with/without--update-configs
and--limit
flags.Additional Notes
invoke pytest
only worked after I added the following line to the end of the Dockerfile:RUN pip install .
I'm not sure why, but lines 14 and 15 of the current Dockerfile were not taking the effect of making
network_importer
itself available in the python environment of the resulting built image.I decided to not tackle this at all within this PR because:
1 - It might be some weirdness with my own sandbox environment.
2 - Even if it is not, I believe it is out-of-scope.