Skip to content

getsentry/sentry-forked-djangorestframework-stubs

 
 

Repository files navigation

sentry-forked-djangorestframework-stubs

new release

make a new branch for the fork of an upstream tag:

git remote add upstream git@github.com:typeddjango/djangorestframework-stubs
git fetch upstream --tags
git push origin --tags
git checkout 1.2.3 -b sentry-1.2.3
  • cherry-pick the craft / release commit(s) into your branch from master
  • cherry-pick relevant commit(s) from previous releases

releases are done through craft in the release.yml workflow -- make sure to target your particular branch with a -# release postfix (like 1.2.3-1)


mypy logo

pep484 stubs for Django REST framework

Build Status Checked with mypy Gitter

Mypy stubs for Django REST Framework. Supports Python 3.8 and up.

Installation

pip install djangorestframework-stubs[compatible-mypy]

To make mypy aware of the plugin, you need to add

[mypy]
plugins =
    mypy_drf_plugin.main

in your mypy.ini file.

FAQ

Model instance is inferred as Any instead of my Model class

When subclassing ModelSerializer, add a type argument to type-hint the related model class, for example:

class MyModelSerializer(serializers.ModelSerializer[MyModel]):
    class Meta:
        model = MyModel
        fields = ("id", "example")

Which means that methods where the model is being passed around will know the actual type of the model instead of being Any. The instance attribute on the above serializer will be Union[MyModel, typing.Sequence[MyModel], None].

To get help

We have Gitter here: https://gitter.im/mypy-django/Lobby If you think you have more generic typing issue, please refer to https://github.com/python/mypy and their Gitter.

Contributing

This project is open source and community driven. As such we encourage contributions big and small. You can contribute by doing any of the following:

  1. Contribute code (e.g. improve stubs, add plugin capabilities, write tests etc) - to do so please follow the contribution guide.
  2. Assist in code reviews and discussions in issues.
  3. Identify bugs and issues and report these

You can always also reach out in gitter to discuss your contributions!

About

PEP-484 stubs for django-rest-framework

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.3%
  • Shell 0.7%