Flask-AppBuilder
Flask-AppBuilder copied to clipboard
chore: Increase upper-bound on apispec
Description
My local tests (postgres and mongodb) pass with apispec 5.2.2 (currently latest).
I don't think we need to limit apispec<4
. If there are issues for consumers of this lib, they can put stronger constraints to their requirements.
Still kept some upper bound to avoid any breaking change from future major versions.
Also had to upgrade pip-tools
, since current version breaks on pip progress bar
ADDITIONAL INFORMATION
- [ ] Has associated issue:
- [ ] Is CRUD MVC related.
- [ ] Is Auth, RBAC security related.
- [ ] Changes the security db schema.
- [ ] Introduces new feature
- [ ] Removes existing feature
I've ran nosetests -v flask_appbuilder.tests.test_api
which should use the ModelRestApi
and all tests passed.
I haven't checked the OpenAPI spec.
I don't think newer apispec breaks anything in how FAB uses it. It still might break something in consumers of this lib, but they can simply put more strict requirements in their setup.cfg
Could we upgrade to v6? That would fix the warning about
/home/ash/.virtualenvs/airflow/lib/python3.10/site-packages/apispec/utils.py:7: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternative
According to the changelog following are backwards incompatible changes:
- Change MarshmallowPlugin.map_to_openapi_type from a decorator to a classic function, taking a field as first argument (#804).
- Remove validate_spec from public API. Users may call their validator of choice directly (#803).
- Remove OpenAPIVersion and use packaging.Version instead (#801).
I don't see any of these used in the codebase, so I think it shouldn't break the lib, but still can break consumers. I still think it should be ok to increase the version range and let consumers limit the version range themselves.