This project has 3 goals:
* Extract as much schema information from DRF as possible.
* Provide flexibility to make the schema usable in the real world (not only
toy examples).
* Generate a schema that works well with the most popular client generators.
The code is a heavily modified fork of the DRF OpenAPI generator, which is/was
lacking all of the below listed features:
* Serializers modelled as components. (arbitrary nesting + recursion supported)
* @extend_schema decorator for customization of APIView, Viewsets,
function-based views, and @action
* Authentication support (DRF natives included, easily extendable)
* Custom serializer class support (easily extendable)
* SerializerMethodField() type via type hinting or @extend_schema_field
* i18n support, Tags extraction, Description extraction from docstrings
* Request/response/parameter examples, Callback operations
* Vendor specification extensions (x-*) in info, operations, parameters,
components, and security schemes
* Sane fallbacks and sane operation_id naming (based on path)
* Schema serving with SpectacularAPIView (Redoc and Swagger-UI views are
also available)
* Optional input/output serializer component split
===> The following configuration options are available for py39-dj42-drf-spectacular-0.27.2:
SIDECAR=on: Enable self-contained Swagger/Redoc UI installation
===> Use 'make config' to modify these settings
port moved to www/py-drf-spectacular on 2024-06-15 REASON: Has expired: Obsolete, please use www/py-drf-spectacular instead
port moved here from www/py-dj41-drf-spectacular on 2023-12-31 REASON: Has expired: Extended support of Django 4.1 ends December 2023, upgrade to the Django 4.2+ version of this port. See https://www.djangoproject.com/download/
*/py-dj42*: Deprecate/Set to expire
* The */py-dj42* ports have no more consumers and are redundant now
as all the other Django ports have been switched from Django 3.2
to Django 4.2 in the last few weeks. [1]
PR: 276319 [1]
With hat: python
net-mgmt/netbox: Create Django 4.2 consumers
* Django 3.2 is currently the "default" version in the ports tree due
its long term support until April 2024. Thus ports that are assigned
to that version will exist until then.
The following ports are required to make the upgrade of
net-mgmt/netbox to the 3.6 release possible because it requires
Django 4.2.
All of the ports listed below were created on the basis of their
respective original ports:
- devel/py-dj42-django-rq
- devel/py-dj42-graphene-django
(Only the first 15 lines of the commit message are shown above )