Table of Contents

Port www/py-django111 is EOL since April 2020 and has been set as DEPRECATED in r530470. After just over a year, www/py-django111 got its expiration date.

Status

Long term goals (still open)

Brief description

The plan was to move everything to www/py-django22, the LTS successor. This time we had to deal with two challenges:

To get a good overview and efficient progess, the whole project is splitted into smaller waves.

Wave 1 / Pick the low hanging fruits

Update / Assign ports to Django 2.2

Assign all ports to www/py-django22 that are

category/port Status Django 2.2 support Comment
databases/py-django-transaction-hooks ✔ Deprecated and set to expire in r530251 ? Deprecate/Expire
Upstream formally deprecated and archived the project as it's merged in Django since 1.9
Reference: https://pypi.org/project/django-transaction-hooks
devel/py-django-rq ✔ Updated/Assigned to Django 2.2 via PR245261 in r539662 Reassign
:!: Set devel/py-dj22-django-rq as deprecated
devel/py-semantic_version ✔ Assigned to Django 2.2 via PR247116 in r540336 Reassign
Only listed in TEST_DEPENDS
finance/bitcoinnodestats ✔ Deprecated/Set to expire in r531519 Not compatible Deprecate/Expire
Upstream no longer maintains the project
Reference: https://github.com/bartromgens/bitcoinnodestats/issues/5
graphics/py-sorl-thumbnail ✔ Updated/Assigned to Django 2.2 via PR245358 in r530951 >= 12.6.0 Update to latest version and reassign
textproc/py-pyjade ✔ Removed Django dependency via PR247585 in r540803 ? Remove TEST_DEPENDS, as no test suite is used
Deprecate/Expire, use devel/py-pypugjs instead
Upstream seems stale, last update was in 2016 and no compatibility with Django 1.11+
Reference: https://github.com/syrusakbary/pyjade/issues/277
www/py-django-allauth ✔ Updated/Assigned to Django 2.2 via PR245234 in r534087 >= 0.39.0 Reassign
www/py-django-annoying ✔ Uupdated/Assigned to Django 2.2 via PR245235 in r534086 >= 0.10.6 Update to latest version and reassign
www/py-django-appmedia ✔ Deprecated/Set to expire in r526925 ? Deprecate/Expire
Upstream archived the project, see https://github.com/divio/django-appmedia
www/py-django-assets ✔ Updated/Assigned to Django 2.2 via PR245547 in r531692 >= 2.0 Update to latest version and reassign
www/py-django-auth-ldap ✔ Assigned to Django 2.2 in r530513 >= 2.0.0 Reassign
www/py-django-bitfield ✔ Updated/Assigned to Django 2.2 via PR245313 in r531932 >= 2.0.0 Update to latest version and reassign
www/py-django-bootstrap-form ✔ Assigned to Django 2.2 via PR245849 in r534822 ? Update seems stale, last update was in 2018
www/py-django-bulk-update ✔ Assigned to Django 2.2 via PR247591 in r540806 ? Reassign
Might not be required for Django 2.2+ anymore, see https://github.com/aykut/django-bulk-update/issues/75
www/py-django-cacheops ✔ Assigned to Django 2.2 in r530513 >= 4.2 Reassign
:!: Set www/py-dj22-django-cacheops as deprecated
www/py-django-caching-app-plugins ✔ Removed via PR245720 in r532026 Not compatible Delete as it's broken since Django 1.11
Upstream seems stale, last update was in 2014
www/py-django-configurations ✔ Assigned to Django 2.2 in r530680 >= 2.2 Reassign
www/py-django-contact-form ✔ Updated/Assigned to Django 2.2 via PR245900 in r533967 >= 1.7 Reassign
www/py-django-cors-headers ✔ Updated/Assigned to Django 2.2 via PR246757 in r536664 >= 2.5.3 Reassign
:!: Set www/py-dj22-django-cors-headers as deprecated
www/py-django-crispy-forms ✔ Updated/Assigned to Django 2.2 via PR245523 in r245523 >= 1.8 Reassign
:!: Set www/py-dj22-django-crispy-forms as deprecated
www/py-django-datetime-widget ✔ Deprecated/Set to expire via PR247587 in r540804 ? Deprecate/Expire
Upstream seems stale, last update was in 2014, not compatible with Django 2.1+
Reference: https://github.com/asaglimbeni/django-datetime-widget/issues/109
www/py-django-debug-toolbar ✔ Assigned to Django 2.2 via PR246422 in r535181 Reassign
:!: Set www/py-dj22-django-debug-toolbar as deprecated
www/py-django-evolution ✔ Deprecated/Set to expire in r526925 Not compatibile No support for Django 2.2 in setup.py of upstream repository
www/py-django-extensions ✔ Updated/Assigned to Django via PR245357 in r531517 >= 2.2.5 Update to latest version and reassign
:!: Set www/py-dj22-django-extensions as deprecated
www/py-django-filter ✔ Assigned to Django 2.2 in r530513 >= 2.2.0 Reassign
:!: Set www/py-dj22-django-filter as deprecated
www/py-django-happenings ✔ Deprecated/Set to expire via PR245644 in r531875 Not compatible Deprecate/Expire and add forked variant django-happenings-update
GH repository got one commit in 2019 (= add support for Django 2.0) and doesn't use release tags.
No new release at PyPi since 2015
www/py-django-haystack ✔ Assigned to Django 2.2 via PR246715 in r538301 ? Reassign
Might work with Django 2.2, no newer version available, but upstream is active (= v3.0b1 with Django 3.0 support)
www/py-django-hijack ✔ Assigned to Django 2.2 via PR246716 in r536462 Reassign
Might work with Django 2.2 as support for Django 2.1 was introduced with 2.1.10
Has a missing dependency of django-compat which isn't ported yet
www/py-django-json-rpc ✔ Deprecated/Set to expire via PR246086 in r533587 ? Deprecate/Set to expire or Reassign
Upstream seems stale, no update since 2015 and outdated documentation
www/py-django-modern-rpc seems to be a better alternative
Heavy tweaking of urls.py might make the port usable for Django 2.0+
www/py-django-ldapdb ✔ Updated/Assigned to Django 2.2 via PR245310 in r530949 >= 1.4.0 Update to latest version and reassign
www/py-django-markdownx ✔ Updated/Assigned to Django 2.2 via PR245325 in r532014 >= 3.0.0 Update to latest version and reassign
www/py-django-modern-rpc ✔ Assigned to Django 2.2 via PR246083 in r533968 >= 0.12.0 Reassign
www/py-django-netfields ✔ Updated/Assigned to Django 2.2 via PR245311 in r531942 >= 1.0.0 Update to latest version and reassign
www/py-django-openid-auth ✔ Deprecated/Set to expire via PR247114 in r540591 ?? Deprecate/Set to expire
No update since 2018, doesn't seem to work with Django 2.0+
www/py-django-overextends ✔ Deprecated/Set to expire via PR247590 in r540805 ?? Deprecate/Expire
Upstream seems stale, last release was in 2017 and it's no longer needed for Django 2.0+
Reference: https://github.com/stephenmcd/django-overextends/issues/36
www/py-django-profiles ✔ Deprecated/Set to expire in r530719 ?? Deprecate and expire
Upstream seems stale, last release was in 2008:idea:, BROKEN atm
www/py-django-prometheus ✔ Assigned to Django 2.2 in r530513 >= 1.1.0 Reassign
:!: Set www/py-dj22-django-prometheus as deprecated
www/py-django-recaptcha ✔ Updated/Assigned to Django 2.2 in r536455 >= 2.0.6 Update to latest version and reassign
www/py-django-redis ✔ Updated/Assigned to Django 2.2 via PR245522 in r535179 Update to latest version and reassign
:!: Set www/py-dj22-django-redis as deprecated
www/py-django-registration-redux ✔ Updated/Assigned to Django 2.2 via PR245643 in r531842 >= 2.6 Update to latest version and reassign
www/py-django-reversion ✔ Updated/Assigned to Django 2.2 via PR245312 in r531930 >= 3.0.4 Update to latest version and reassign
www/py-django-simple-history ✔ Updated/Assigned to Django 2.2 via PR245648 in r534034 >= 2.7.0 Update to latest version and reassign
www/py-django-solo ✔ Updated/Assigned to Django 2.2 via PR246171 in r534037 ? Reassign (seems to work with Django 2.2)
www/py-django-subdomains ✔ Deprecated/Set to expire via PR247206 in r540592 ? Deprecate/Expire
Upstream seems stale, last update was in 2016
Not compatible with Django +2.0, see https://github.com/tkaemming/django-subdomains/issues/69
www/py-django-sudo ✔ Assigned to Django 2.2 in r536453 ? Reassign
No explicit dependency for any Django version
www/py-django-tables2 ✔ Assigned to Django 2.2 in r530865 >= 2.1.0 Update to latest version and reassign
:!: Set www/py-dj22-django-tables2 as deprecated
www/py-django-templatetag-sugar ✔ Assigned to Django 2.2 in r536454 ? Upstream seems stale, last update in 2014
www/py-django-timezone-field ✔ Updated/Assigned to Django 2.2 in r530866 >= 3.1 Update to latest version and reassign (sync with www/py-dj22-django-timezone-field)
:!: Set www/py-dj22-django-timezone-field as deprecated
www/py-django-tinymce ✔ Updated/Assigned to Django 2.2 via PR245659 in r532096 >= 2.9.0 Update to latest version and reassign
www/py-django-widget-tweaks ✔ Updated/Assigned to Django 2.2 via PR246172 in r534036 >= 1.4.5 Update to latest version and reassign
www/py-django_openstack_auth ✔ Deprecated/Set to expire via PR245850 in r534819 ? Deprecate/Expire
Code has been merged into newer release of www/py-horizon
Reference https://opendev.org/openstack/django_openstack_auth
www/py-djangorestframework36 ✔ Deprecated/Set to expire via PR246082 in r536975 Not compatible with Django 2.0+ Deprecate/Expire
www/py-djangotoolbox ✔ Deprecated/Set to expire via PR246176 in r536456 Not compatible Deprecate/Set to expire
Upstream seems stale, no new release at PyPi since 2015
Seem to be broken at runtime since Django 1.11: https://github.com/django-nonrel/djangotoolbox/issues/81
www/py-dojango ✔ Deprecated/Set to expire via PR246177 in r534033 Not compatible Deprecate/Set to expire
Upstream seems stale, last update was in 2017 (wg@'s repo)
www/py-google-api-client ✔ Updated/Assigned to Django 2.2 via PR247115 in r560275 Reassign
Non-Default option
www/py-jsonfield ✔ Updated/Assigned to Django 2.2 via PR246426 in r535461 Reassign
:!: Set www/py-dj22-jsonfield as deprecated
www/py-jsonfield2 ✔ Updated/Assigned to Django 2.2 via PR245901 in r535459 >= 3.1.0 Update to latest version and reassign
:!: Set www/py-dj22-jsonfield2 as deprecated

Rename some py-dj22- ports to retain the history

www/py-dj22-django_csp

category/port Status
www/py-dj22-django_csp ✔ Renamed via PR247031 in r538391

www/py-dj22-django-formset-js-improved + www/py-dj22-django-jquery-js

category/port Status
www/py-dj22-django-formset-js-improved ✔ Renamed via PR247032 in r538481
www/py-dj22-django-jquery-js ✔ Renamed via PR247032 in r538466

Wave 2 / Assign more complex ports to Django 2.2

Assign consumers to www/py-django22 that are

devel/py-django-tastypie-mongoengine

devel/py-django-tastypie-mongoengine ✔ Assigned to Django 2.2 in r531302 ? Reassign
www/py-django-tastypie ✔ Updated/Assigned to Django 2.2 in r531187 via PR245434 >= 0.14.3 Update to latest version and reassign

net/py-msrplib

category/port Status Django 2.2 support Comment
devel/py-eventlib ✔ Assigned to Django 2.2 via PR247173 in r540340
devel/py-logan ✔ Assigned to Django 2.2 PR247173 in r540337

www/py-django-annotations + www/py-django-rq-dashboard

category/port Status Django 2.2 support Comment
www/py-django-annotations ✔ Deprecated/Set to expire via PR245851 in r534886 Not compatible Deprecate/Expire
Seems to be no longer maintained
www/py-django-rq-dashboard ✔ Deprecated/Set to expire via PR245851 in r534887 Not compatible Deprecate/Expire
Seems to be no longer maintained

www/py-django-cms

category/port Status Django 2.2 support Comment
www/py-django-cms ✔ Updated/Assigned to Django 2.2 via 245361 in r532093 >= 3.7.0 Update to latest version and reassign
www/py-django-cms-admin-style ✔ Assigned to Django 2.2 via 245361 in r532093 >= 1.4.0 Reassign
www/py-django-classy-tags ✔ Updated via 245360 in r532087
Assigned to Django 2.2 via 245360 in r532093
>= 0.9.0 Update to latest version and reassign
www/py-django-sekizai ✔ Updated via 245361 in r532088
Assigned via 245361 in r532093
>= 1.0.0 Update to latest version and reassign
www/py-django-treebeard ✔ Assigned to Django 2.2 via 245361 in r532093 >= 4.3.0 Reassign
:!: Set www/py-dj22-django-treebeard as deprecated

www/django-cron

category/port Status Django 2.2 support Comment
www/py-django-cron ✔ Assigned to Django 2.2 in r535230 Reassign
www/py-django-common-helpers ✔ Assigned to Django 2.2 in r535230 Reassign

www/py-django-filer

category/port Status Django 2.2 support Comment
www/py-django-filer ✔ Updated/Assigned to Django 2.2 via PR245470 in r532664 >= 1.5.0 Update to latest version and reassign
graphics/py-django-easy-thumbnails ✔ Assigned to Django 2.2 via PR245470 in r532664 >= 2.5.0 Reassign
www/py-django-js-asset ✔ Assigned to Django 2.2 via PR245470 in r532664 >= 1.2 Reassign
:!: Set www/py-dj22-django-js-asset as deprecated
www/py-django-mptt ✔ Assigned to Django 2.2 via PR245472 in r532664
Updated via PR245472 in r532683
>= 0.11 Update to latest version and reassign
:!: Set www/py-dj22-django-mptt as deprecated
www/py-django-polymorphic ✔ Updated via PR245473 in r531412
Assigned to Django 2.2 via PR245473 in r532644
>= 2.1 Update to latest version and reassign

www/py-django-mezzanine

category/port Status Django 2.2 support Comment
www/py-django-mezzanine ✔ Deleted in a9f91734 Update/Reassign
There's WIP to add Django 2.2 compatibility: https://github.com/stephenmcd/mezzanine/pull/1956
www/py-django-contrib-comments ✔ Updated/Assigned to Django 2.2 via PR245309 in 4e340327

www/py-django-photologue

category/port Status Django 2.2 support Comment
www/py-django-photologue ✔ Updated/Assigned to Django 2.2 via PR245359 in r530962 >= 3.10 Update to latest version and reassign
www/py-django-sortedm2m ✔ Updated/Assigned to Django 2.2 via PR245359 in r530962 >= 2.0.0 Update to latest version and reassign

www/py-django-registration-defaults

category/port Status Django 2.2 support Comment
www/py-django-registration ✔ Updated/Assigned to Django 2.2 via PR245902 in r533073 >= 3.0.1 Update to latest version and reassign
www/py-django-registration-defaults ✔ Deprecated and set to expire via PR245903 in r533068 :!: Will break at runtime if www/py-django-registration is updated to 3.x
See https://github.com/yourcelf/django-registration-defaults/issues/22
PR https://github.com/yourcelf/django-registration-defaults/pull/23 (open since more than one year)
Package seems no longer be maintained (= last update at PyPI was in 2013)

www/py-django-star-ratings

category/port Status Django 2.2 support Comment
www/py-django-star-ratings ✔ Updated/Assigned to Django 2.2 via PR245905 in r535087 >= 0.8.0 Update to latest version and reassign
www/py-django-braces ✔ Assigned to Django 2.2 via PR245905 in r535087 Reassign
www/py-django-model-utils ✔ Assigned to Django 2.2 via PR245905 in r535087 >= 3.2.0 Reassign
:!: Set www/py-dj22-django-model-utils as deprecated
www/py-swapper ✔ Assigned to Django 2.2 via PR245905 in r535087 >= 1.1.2 Reassign
:!: Set www/py-dj22-django-swapper as deprecated

www/py-django-taggit

category/port Status Django 2.2 support Comment
www/py-django-taggit ✔ Assigned to Django 2.2 in r534835 Reassign
:!: Set www/py-dj22-django-taggit as deprecated
www/py-django-taggit-serializer ✔ Implicit assigned to Django 2.2 in r534835 Reassign
:!: Set www/py-dj22-django-taggit-serializer as deprecated

www/py-graphite-web

category/port Status Django 2.2 support Comment
www/py-graphite-web ✔ Updated/Assigned to Django 2.2 via PR245873 in r538461 >= 1.1.6 Update to latest version and reassign
www/py-django-tagging ✔ Assigned to Django 2.2 via PR245843 in r538461
Updated via PR245843 in r538463
>= 0.5.0 Update to latest version and reassign

www/py-horizon

category/port Status Django 2.2 support Comment
www/py-horizon ✔ Updated/Assigned to Django 2.2 via PR245432 in r532480 >= 17.0.0 Update to latest version and reassign
www/py-django-babel ✔ Assigned to Django 2.2 via PR245432 in r532480 Reassign
www/py-django-pyscss ✔ Assigned to Django 2.2 via PR245432 in r532480 Reassign

Wave 3a / Assign Django 1.11 consumers to www/py-djangorestframework311

A few consumers have no support for Django 2.0+ at the moment hence they should be switched to www/py-djangorestframework311 (repo-copy from www/py-djangorestframework) for a while to pave the way to switch www/py-djangorestframework to Django 2.2.

www/seahub

category/port Status Django 2.2 support Comment
www/seahub ✔ Updated/Assigned to Django via D28513 in e435d0ea2 Pinned dependency to Django 1.11
PR #4572 at upstream
www/py-django-constance ✔ Ditto as above
www/py-django-picklefield ✔ Ditto as above
www/py-django-post_office ✔ Ditto as above
www/py-django-simple-captcha ✔ Ditto as above
www/py-django-ranged-response ✔ Ditto as above
www/py-django-statici18n ✔ Ditto as above
www/py-django-webpack-loader ✔ Ditto as above
www/py-djangorestframework ✔ Ditto as above (switched back)
Temporarily switched to www/py-djangorestframework311 via D24850 in r536989
Use www/py-djangorestframework311 for a while until www/seahub has support Django 2.2

Wave 3b / Switch www/py-djangorestframework to Django 2.2+ with consumers that are compatible

category/port Status Django 2.2 support Comment
www/py-djangorestframework ✔ Updated/Assigned to Django 2.2 via D24850 in r536980 >= 3.9.2 Sync with www/py-dj22-djangorestframework
:!: Set www/py-dj22-djangorestframework as deprecated
www/py-drf-yasg ✔ Assigned to Django 2.2 via D24850 in r536980 Reassign
:!: Set www/py-dj22-drf-yasg as deprecated
devel/py-graphene-django ✔ Python 2.7 support dropped via D24850 in r536980 Drop Python 2.7 support
www/py-django-rest-swagger ✔ Python 2.7 support dropped via D24850 in r536980 Drop Python 2.7 support

Wave 4 / Switch remaining Django 2.2 consumers to the origin ports

Switch the remaining ports that depend on py-dj22-* packages to the origin ports which were assigned to Django 2.2 in the previous steps.

deskutils/py-paperless

category/port Status
deskutils/py-paperless ✔ Switched to original Django ports via PR246850 in r538086

net-mgmt/netbox

category/port Status
net-mgmt/netbox ✔ Switched to original Django ports in r539757

www/py-django-modelcluster

category/port Status
www/py-django-modelcluster ✔ Switched to original Django port via PR247207 in r540338

www/py-wagtail

category/port Status
www/py-wagtail ✔ Switched to original Django ports via PR246849 in r537827

Wave 5 / Clean-up

Mark the remaining py-dj22-django- ports as deprecated and set an expiration date

category/port Deprecated Set to expire
devel/py-dj22-django-rq ✔ ✔
www/py-dj22-django-auth-ldap ✔ ✔
www/py-dj22-django-cacheops ✔ ✔
www/py-dj22-django-cors-headers ✔ ✔
www/py-dj22-django-crispy-forms ✔ ✔
www/py-dj22-django-debug-toolbar ✔ ✔
www/py-dj22-django-extensions ✔ ✔
www/py-dj22-django-filter ✔ ✔
www/py-dj22-django-js-asset ✔ ✔
www/py-dj22-django-model-utils ✔ ✔
www/py-dj22-django-prometheus ✔ ✔
www/py-dj22-django-mptt ✔ ✔
www/py-dj22-django-redis ✔ ✔
www/py-dj22-django-tables2 ✔ ✔
www/py-dj22-django-taggit ✔ ✔
www/py-dj22-django-taggit-serializer ✔ ✔
www/py-dj22-django-timezone-field ✔ ✔
www/py-dj22-django-treebeard ✔ ✔
www/py-dj22-djangorestframework ✔ ✔
www/py-dj22-drf-yasg ✔ ✔
www/py-dj22-jsonfield ✔ ✔
www/py-dj22-jsonfield2 ✔ ✔
www/py-dj22-swapper ✔ ✔

Wave 6 / New horizons

Bring D12592 into the ports tree.