ormar icon indicating copy to clipboard operation
ormar copied to clipboard

Allow Pydantic >= 2.5.3

Open camillol opened this issue 1 year ago • 5 comments

camillol avatar Aug 01 '24 22:08 camillol

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (6be6136) to head (9d7d71a). Report is 1 commits behind head on master.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff            @@
##            master     #1388   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files          207       207           
  Lines        14969     14942   -27     
=========================================
- Hits         14969     14942   -27     
Files with missing lines Coverage Δ
ormar/models/mixins/save_mixin.py 100.00% <100.00%> (ø)
tests/test_fastapi/test_binary_fields.py 100.00% <100.00%> (ø)
...definition/test_overwriting_pydantic_field_type.py 100.00% <ø> (ø)

... and 12 files with indirect coverage changes

codecov[bot] avatar Aug 01 '24 22:08 codecov[bot]

CodSpeed Performance Report

Merging #1388 will degrade performances by 18.61%

Comparing camillol:unpinpydantic (9d7d71a) with master (6be6136)

Summary

⚡ 2 improvements
❌ 5 (👁 5) regressions
✅ 77 untouched benchmarks

Benchmarks breakdown

Benchmark master camillol:unpinpydantic Change
test_min[250] 3.6 ms 2.8 ms +28.63%
👁 test_deleting_all[500] 2.4 ms 2.9 ms -18.61%
👁 test_deleting_individually[10] 8.7 ms 9.8 ms -12.12%
test_get_all_with_related_models[10] 14.1 ms 12.5 ms +12.55%
👁 test_get_one[1000] 3.4 ms 4.1 ms -16.94%
👁 test_get_or_create_when_get[1000] 3.5 ms 4.1 ms -14.81%
👁 test_saving_models_individually[10] 12.9 ms 14.4 ms -10.8%

codspeed-hq[bot] avatar Aug 01 '24 22:08 codspeed-hq[bot]

That's still installing 2.5.3 in tests, might be cross dependency with pydantic-extra or something else. As it mingles with pydantic internals each upper version should be checked.

Edit: see that you didn't run poetry lock that's why

collerek avatar Aug 02 '24 07:08 collerek

Ran poetry lock!

camillol avatar Aug 02 '24 19:08 camillol

@collerek there is one broken test, tests/test_fastapi/test_binary_fields.py::test_read_main. It's not clear to me that the behavior expected by the test is correct; it looks like it wants the JSON response to represent the LargeBinary field as its binary contents decoded into a string with the default encoding (utf-8), but why should it? Could you take care of it?

camillol avatar Aug 27 '24 23:08 camillol