sv-tools/marshmallow-objects

Requirements.txt does not specify a maximum version for marshmallow

Closed this issue · 4 comments

Since the requirements file for this project uses an unspecified version for marshmallow, using only marshmallow-objects without specifying a version of marshmallow in our requirements file will lead to it not working properly : TypeError: validate_name() got an unexpected keyword argument 'partial' (using marshmallow 3.0.5 and the latest release of objects 1.0.23)

To fix this, we specified our dependency to marshmallow in our requirements file so that we could get a version that is support by this package.

This doesn't block us, but I was wondering what were you intentions with this?

One way of fixing this is setting a maximum version so atleast package would be functional, but I don't if that's a legitimate way of doing this.

Thank you @cheroukee for the report. IMO we should avoid to put a maximum version. We need to modify the code instead to support the latest changes into Marshmallow if the problem is into marshmallow-objects

The latest release of marshmallow indeed broke this package, they made some breaking changes just before releasing the final version.

@Sytten @cheroukee Can you provide more informations to help to reproduce the problem. Tests are all OK with marshmallow 3.0.5 and 3.1.1.

I've checked it again, considering the error message better. It seems there was some validation function which was breaking (validate_scheme) which did not have the **kwargs parameter. The error message was kinda cryptic, pointing to a random point in the marshmallow lib. This is a case of problem behind keyboard. Sorry about this.