Skip to content
This repository was archived by the owner on Mar 30, 2020. It is now read-only.

Project decisions: python versions support #7

Description

@sobolevn

I haven't seen a clear policy about python versions this project supports, so I may be wrong.

Concern

I have seen that this project uses six, so I assumed that it is currently supporting python2.
Which is not a good thing

Problems

Supporting python2 can cause project maintainers several problems:

  1. Late language features support, like typing, etc
  2. A lot of compat fixes, usually code that support both python version is full of compat pieces and even sub-frameworks on large code bases
  3. Libraries limitation, some libraries are already python3+ (including django)

I would like to highlight the biggest problem for me: typing.
I see, that currently you do not use typing, but that's not that good.

I, as a user, want to get typing from the business logics framework for free.
And if I don't use types - by my choice - and my developer experience won't suffer.

And typing will make a lot of features even more awesome.
Like validators, schemes, etc.

End of support

django already drops python2 support, python2 eof is in 2020.

Solution

Drop python2 support.
Later it is possible to add type annotations and mypy support.

P.S. We are also working on types for django: you can join us here https://github.com/TypedDjango

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions