Yelp / bravado-core

Other
109 stars 98 forks source link

Pin to jsonschema<4 and update config for testing on recent Python versions #385

Open terencehonles opened 2 years ago

terencehonles commented 2 years ago

This combines #383 and #384 with some extra cleanup to get github actions working properly (They seem to be disabled here, but I have them now passing on my fork https://github.com/terencehonles/bravado-core/actions/runs/1358474617)

terencehonles commented 2 years ago

From https://github.com/Yelp/bravado-core/pull/383#issuecomment-946440243

I have https://github.com/terencehonles/bravado-core/tree/fix-deprecation-warning-for-RefResolver.in_scope which fixes the deprecation warning, but when testing the change I noticed there was an error during resolving. I checked and this looks like it only affects Spec.from_dict (I skipped all tests that go down that code path and the suite passed). It doesn't appear to be straightforward to find out what changed since I'm not familiar with this package or jsonschema but it looks like it's related to https://github.com/Julian/jsonschema/issues/782

terencehonles commented 2 years ago

I bumped AppVeyor to a config which actually has Python 3.9, but I still can't reproduce the Python2 error as mentioned in https://github.com/Yelp/bravado-core/pull/383#issuecomment-946444175 (but now it's at least the same point version so it does seem like this is a Windows only issue)

terencehonles commented 2 years ago

It looks like it was an issue with str not being called unicode on Python2, and I've updated the tests to capture that. I'm not sure why I wasn't able to reproduce locally but this run gave the answer https://ci.appveyor.com/project/sjaensch/bravado-core/builds/41198118/job/4ky1fhcrbxok3ahy .