Changes between Version 3 and Version 4 of SummerOfCode2024


Ignore:
Timestamp:
Mar 15, 2024, 3:09:19 PM (3 months ago)
Author:
Adam Johnson
Comment:

Editing django-stubs section

Legend:

Unmodified
Added
Removed
Modified
  • SummerOfCode2024

    v3 v4  
    190190== Typed Django ==
    191191
    192 There are several potential projects related to typing and the django-stubs project.
    193 
    194 For all three projects:
     192[https://github.com/typeddjango/django-stubs django-stubs] is an external project that adds type hints to Django. There is possibly a way to work on it under a GSoC project, if mentors are found and you can show experience with Python type hints.
    195193
    196194|| Difficulty || Hard.
    197 || Size ||       175hrs
     195|| Size ||       Variable
    198196|| Potential Mentors || TBC
    199197|| Key Skills || Python typing and Django-stubs
    200198
    201 === Strict-mode support for django-stubs ===
    202 
    203 The django-stubs implementation does not currently pass Mypy’s strict mode.
    204 
    205 Making this compliant would enable users to always use strict mode with them, improving type safety. Expected outcome would be a PR doing that.
    206 
    207 === Merging django-types back into django-stubs ===
    208 
    209 There is a spin-off project from django-stubs called django-types. The original intention here was for it to be merged back into django-stubs, but that's never happened.
    210 
    211 django-types removes the need to use any mypy plugins, making it possible to use type checkers other than mypy, such as Pyrite, Pyre, etc.
    212 
    213 django-types is not actively maintained, however, and having competing stubs implementations means neither is as strong as could be.
    214 
    215 There is a small project in extracting the work from django-types and creating a PR for django-stubs allowing it to be merged back in, and effort to be concentrated on the single implementation.
     199=== Expand coverage ===
     200
     201django-stubs uses Mypy’s stubtest tool to check that its type hints align with Django’s source, per [https://github.com/typeddjango/django-stubs/blob/master/CONTRIBUTING.md#testing-stubs-with-stubtest the contributing documentation]. The “todo” file contains ~1600 functions and classes missing type hints. A proposal targeting a specific, significant subset of the missing types is likely to be accepted.
    216202
    217203== Configurable Content Type Parsing ==
Back to Top