django / django/code.djangoproject.com

Remove Django dependency by delegating authentication to djangoproject.com

Open
#297 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
66
Forks
62
PR merge metrics
No merged PRs in 30d

Description

Currently `django/code.djangoproject.com` has a `Django` dependency to handle logins for non-GitHub accounts.

Having the `Django` dependency is problematic, as we should try to keep the `Django` versions consistent between `django/code.djangoproject.com` and `django/djangoproject.com`, see https://github.com/django/code.djangoproject.com/issues/285 for details

We should be able to remove the `Django` dependency by moving the login flow entirely into `django/djangoproject.com` and have Trac delegate authentication to it.

We already do something conceptually similar with the use of the external Trac GitHub plugin [`tracext.github.GitHubLoginModule`](https://github.com/trac-hacks/trac-github/blob/42a50296bd9f052474802fa47bb4d3654f5e923a/tracext/github/__init__.py#L86), where Trac redirects and then converts the authenticated callback into a local session, so we could potentially reuse the same pattern for Django-managed auth instead of importing Django auth directly into `django/code.djangoproject.com`.

Hopefully, this would let us remove the Django runtime dependency from the Trac instance 🤞

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.