faculty icon indicating copy to clipboard operation
faculty copied to clipboard

marshmallow schema maintenance to address RemovedInMarshmallow4Warning results

Open imrehg opened this issue 2 years ago • 3 comments

Since the dependency list do not limit the marshmallow version, it is likely prudent to fix the multitude of RemovedInMarshmallow4Warning results that the tests are throwing. Most of them are pretty straightforward, but happy to elaborate.

Tests were run with tox -e py38 -- -Werror to make warnings into errors for the process.

There's one remaining warning that is coming from the marshmallow_enum library, and #202 should be relevant for this.

imrehg avatar May 14 '22 02:05 imrehg

Hey, thanks for this update. Looking at the changelog, it looks like load_default was introduced in 3.13.0. If we merge this PR, we should specify this in our dependencies. Are we ok with requiring 3.13.0 or later? (FWIW I'm not saying we can't - but might be worthwhile for you to think through).

For the sake of completeness, your other updates depend on earlier updates to the API (make_error: 3.0.0, self -> lambda: 3.3.0) so an updated min version to 3.13.0 should cover all.

acroz avatar May 17 '22 09:05 acroz

@acroz that's a good shout, didn't think of that aspect! Given that the release is almost 1 year old, it should be on the safe territory, but I'll check for any side-effects or other considerations, and add the minimum version if it looks okay. Will reping when that's done.

imrehg avatar May 18 '22 07:05 imrehg

@acroz did the update here because it is sensible, tried installing in the platform with

pip install git+https://github.com/facultyai/faculty.git@schema-maintenance#egg=faculty

and that shows a bit of legacy issue:

sherlockml 0.18.6 requires marshmallow==3.0.0rc3, but you have marshmallow 3.15.0 which is incompatible

I guess that needs a bit of deprecation/transition out process?

imrehg avatar May 19 '22 07:05 imrehg