Skip to content

Drop support for Python 2 #272

@bluetech

Description

@bluetech

Since Python 2 is now officially unsupported upstream, pluggy 1.0 is a good point to drop support for it.

Projects which want to keep support for Python 2 should keep using pluggy 0.6.x series. Pluggy 1.0 will use python_requires = >=3.5 such that pip install pluggy on Python 2 projects will keep getting the 0.6.x series.

The benefits of doing this are:

  • Ability to drop Python 2 compatibility code
  • Ability to use Python 3-only features, like type annotation syntax, gen.throw(), return from generator, yield from syntax, type annotation syntax and others.
  • Less CI/maintenane stuff.

In terms of big projects:

  • pytest>=5 is Python 3 only. Old 4.6.x branch supports Python2, uses pluggy>=0.12,<1.0, so it's good.

  • tox still supports Python 2, though seems to have a 4.0.0 version in development which will drop support for it (I think?). It is requiring pluggy using pluggy>=0.12.0 , if this is accepted I'll them a PR which changes this to pluggy>=0.12.0,<1.0.0.

  • devpi seems to have two components which use pluggy. The server component dropped Python 2. The client component supports Python 2 but uses pluggy>=0.6.0,<1.0 so should be fine.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions