Bundle an internal version of six for future compatibility.

Review Request #11092 — Created July 22, 2020 and submitted

chipx86
Django Evolution
master
django-evolution

Django 3.0 and higher do not include django.utils.six, since they've
moved entirely onto Python 3. In order to provide compatibility going
forward, Django Evolution now bundles its own copy of six as
django_evolution.compat.six, and all imports have been updated
accordingly.

Unit tests pass for all supported versions of Python and Django
(1.6 through 2.2 — more work is required for 3.0 support).

Summary
Bundle an internal version of six for future compatibility.
Description From Last Updated

Wouldn't it be better to just add a dependency on the upstream six?

daviddavid

E501 line too long (80 > 79 characters)

reviewbotreviewbot

E305 expected 2 blank lines after class or function definition, found 1

reviewbotreviewbot

E501 line too long (91 > 79 characters)

reviewbotreviewbot

E501 line too long (93 > 79 characters)

reviewbotreviewbot

E501 line too long (91 > 79 characters)

reviewbotreviewbot

E501 line too long (118 > 79 characters)

reviewbotreviewbot

E501 line too long (110 > 79 characters)

reviewbotreviewbot

E501 line too long (87 > 79 characters)

reviewbotreviewbot

E501 line too long (96 > 79 characters)

reviewbotreviewbot

E501 line too long (80 > 79 characters)

reviewbotreviewbot

E501 line too long (80 > 79 characters)

reviewbotreviewbot

E501 line too long (82 > 79 characters)

reviewbotreviewbot

E501 line too long (82 > 79 characters)

reviewbotreviewbot

E501 line too long (82 > 79 characters)

reviewbotreviewbot

E501 line too long (96 > 79 characters)

reviewbotreviewbot

E501 line too long (80 > 79 characters)

reviewbotreviewbot

E501 line too long (86 > 79 characters)

reviewbotreviewbot

E501 line too long (80 > 79 characters)

reviewbotreviewbot

E501 line too long (86 > 79 characters)

reviewbotreviewbot

E501 line too long (83 > 79 characters)

reviewbotreviewbot

E501 line too long (84 > 79 characters)

reviewbotreviewbot

E501 line too long (90 > 79 characters)

reviewbotreviewbot

E501 line too long (86 > 79 characters)

reviewbotreviewbot

E501 line too long (92 > 79 characters)

reviewbotreviewbot

E501 line too long (92 > 79 characters)

reviewbotreviewbot

E501 line too long (98 > 79 characters)

reviewbotreviewbot

E501 line too long (83 > 79 characters)

reviewbotreviewbot

E305 expected 2 blank lines after class or function definition, found 1

reviewbotreviewbot

E501 line too long (82 > 79 characters)

reviewbotreviewbot

F821 undefined name '__spec__'

reviewbotreviewbot
chipx86
Review request changed

Change Summary:

Actually add the six module.

Commits:

Summary
-
Bundle an internal version of six for future compatibility.
+
Bundle an internal version of six for future compatibility.

Diff:

Revision 2 (+2016 -52)

Show changes

Checks run (1 failed, 1 succeeded)

flake8 failed.
JSHint passed.

flake8

david
  1. 
      
  2. Wouldn't it be better to just add a dependency on the upstream six?

    1. I debated this. Solid "maybe" with a lean toward "no for now."

      We hit that issue before with a system version of six taking precedence from a package, and wrecking havoc when a later system update replaced it with an older version than what some dependency required. I'm a bit weary of system packages outright breaking things for us again because of this dependency.

    2. Makes sense.

  3. 
      
david
  1. Ship It!
  2. 
      
chipx86
Review request changed

Status: Closed (submitted)

Change Summary:

Pushed to master (532a183)
Loading...