Page MenuHomeFreeBSD

net-mgmt/netbox: Create some Django 2.1 packages as preparation for the upgrade to 2.5.x
ClosedPublic

Authored by kai on Feb 2 2019, 1:08 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Dec 13, 6:49 PM
Unknown Object (File)
Oct 23 2024, 9:27 PM
Unknown Object (File)
Sep 30 2024, 10:10 AM
Unknown Object (File)
Sep 22 2024, 10:49 AM
Unknown Object (File)
Sep 21 2024, 8:31 AM
Unknown Object (File)
Sep 21 2024, 6:02 AM
Unknown Object (File)
Sep 8 2024, 7:57 AM
Unknown Object (File)
Aug 29 2024, 10:18 AM
Subscribers

Details

Summary

Upstream of net-mgmt/netbox has changed the required Django version from 1.11 to 2.1 with the release of NetBox 2.5.0, thus some ports need to be repo-copied and assigned to Django 2.1 to make the update possible:

  • www/py-django-cors-headers -> www/py-dj21-django-cors-headers
  • www/py-django-debug-toolbar -> www/py-dj21-django-debug-toolbar
  • www/py-django-filter -> www/py-dj21-django-filter
  • www/py-django-js-asset -> www/py-dj21-django-js-asset
  • www/py-django-mptt -> www/py-dj21-django-mptt
  • www/py-django-tables2 -> www/py-dj21-django-tables2
  • www/py-django-taggit -> www/py-dj21-django-taggit
  • www/py-django-timezone-field -> www/py-dj21-django-timezone-field
  • www/py-djangorestframework -> www/py-dj21-djangorestframework
  • www/py-drf-yasg -> www/py-dj21-drf-yasg

Because Django v2.1 requires Python 3.5+ I also changed "USES=python" to "USES=python:3.5+" to reduce some overhead during the build process.

Test Plan
  • Builds fine with poudriere for 11.2-RELEASE amd64
  • Portlint on the new ports -> OK

Questions from my point of view:

  • Is the currently used naming scheme (py-dj21-django-PORTNAME) ok? It could be that in future there might be a few more ports that need to be assigned to Django 1.11 (Long-term support until April 2020) and a newer version of Django.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Is there a need for multiple django versions? That is, would it not be possible to simply upgrade to 2.1 and call it a day?

Is there a need for multiple django versions? That is, would it not be possible to simply upgrade to 2.1 and call it a day?

It would be possible to assign the current ports to Django 2.1, indeed. But going this way there would be the need to assign other ports also to Django 2.1.

For example if www/py-django-mptt would be simply assigned from Django 1.11 to 2.1 there would also be the need to assign www/py-django-filer (not listed in this diff, btw) , which depends on www/py-django-mptt, from Django 1.11 to 2.1 .

Django 1.11 is at the moment the "inofficial" standard (mainly due its long term support) in the ports tree even there's yet no entry in bsd.default-versions.mk, though.

Most of the Django related ports are currently assigned to www/py-django111 but there's also a meta-port www/py-django where 1.11 is the default option at the moment.

I have also pondered about the option to remove/comment out www/py-django111 from the RUN_DEPENDS of the affected ports in this review as a temporary solution.

Since that django111 is supported till 2020, i am fine with that move. If no other objection i'll approve that move by Sunday night.

This revision is now accepted and ready to land.Feb 11 2019, 3:35 AM
This revision was automatically updated to reflect the committed changes.

I think it's a good point to open a PR for swills, and include a "CONFLICTS_INSTALL =" in his ports as well

I think it's a good point to open a PR for swills, and include a "CONFLICTS_INSTALL =" in his ports as well

Oops, did I miss something? As far I can see there was only one port (= www/py-django-cors-headers) in the changeset which swills@ is maintainer of and that port has now a CONFLICTS_INSTALL?