From patchwork Wed Sep 1 16:57:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Finucane X-Patchwork-Id: 1523321 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; dkim=fail reason="key not found in DNS" header.d=that.guru header.i=@that.guru header.a=rsa-sha256 header.s=x header.b=Z3uGa8oa; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org (client-ip=2404:9400:2:0:216:3eff:fee1:b9f1; helo=lists.ozlabs.org; envelope-from=patchwork-bounces+incoming=patchwork.ozlabs.org@lists.ozlabs.org; receiver=) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2404:9400:2:0:216:3eff:fee1:b9f1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4H09HC5Lvrz9sW8 for ; Thu, 2 Sep 2021 02:58:15 +1000 (AEST) Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4H09HC1HB2z2yJG for ; Thu, 2 Sep 2021 02:58:15 +1000 (AEST) Authentication-Results: lists.ozlabs.org; dkim=fail reason="key not found in DNS" header.d=that.guru header.i=@that.guru header.a=rsa-sha256 header.s=x header.b=Z3uGa8oa; dkim-atps=neutral X-Original-To: patchwork@lists.ozlabs.org Delivered-To: patchwork@lists.ozlabs.org Authentication-Results: lists.ozlabs.org; spf=none (no SPF record) smtp.mailfrom=that.guru (client-ip=136.175.108.164; helo=mail-108-mta164.mxroute.com; envelope-from=stephen@that.guru; receiver=) Authentication-Results: lists.ozlabs.org; dkim=fail reason="key not found in DNS" header.d=that.guru header.i=@that.guru header.a=rsa-sha256 header.s=x header.b=Z3uGa8oa; dkim-atps=neutral Received: from mail-108-mta164.mxroute.com (mail-108-mta164.mxroute.com [136.175.108.164]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4H09H61H6hz2xKP for ; Thu, 2 Sep 2021 02:58:08 +1000 (AEST) Received: from filter004.mxroute.com ([149.28.56.236] filter004.mxroute.com) (Authenticated sender: mN4UYu2MZsgR) by mail-108-mta164.mxroute.com (ZoneMTA) with ESMTPSA id 17ba24bd90f00074ba.001 for (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256); Wed, 01 Sep 2021 16:58:04 +0000 X-Zone-Loop: 4b00a5768a0e28717b39646d80524dc7b7a0fd762851 X-Originating-IP: [149.28.56.236] DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=that.guru; s=x; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date:Subject:Cc:To: From:Sender:Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Id:List-Help:List-Unsubscribe:List-Subscribe:List-Post: List-Owner:List-Archive; bh=ml+E7fP8URy8VWMXgowvAbP7dDdpIUvMPiOL35nVyzU=; b=Z 3uGa8oab3/F18kyRJiJKHE4tV4aNZq3DJveETa2yh7NFVCoLIfteywl2KXt/0cPg6ARGHZ3lVUujc m3MBZCaJ8hQuM7t91+gXbRwbgIjWGQa5agbk2M6WE36YmqSDjU2PFaw6HDeEZgxtHIxVd9tiToC6A dewKxhhXWyX+HxX7gYhx96c0hAWZlZJb4gfPSqwrsMefpsMKXfIyT3hIXM2nfQrvMVL3hd65d+prl KbJRsw7xqjWU18Jnnydi5G8/U/XH8r50SPBSWUF8GIQflYPBliVbL4GDq6h6fX7bYtlBIJEwG1wBs Z22x4EBsd2Y9EW1kCpTx6GXQiOLP03GBQ==; From: Stephen Finucane To: patchwork@lists.ozlabs.org Subject: [RFC PATCH v2 00/19] Integrate Bulma Date: Wed, 1 Sep 2021 17:57:37 +0100 Message-Id: <20210901165756.181192-1-stephen@that.guru> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 X-AuthUser: stephen@that.guru X-BeenThere: patchwork@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Patchwork development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: patchwork-bounces+incoming=patchwork.ozlabs.org@lists.ozlabs.org Sender: "Patchwork" This is a partial series to migrate the UX to Bulma and rework many of the view flows. Bulma was chosen as it's well maintained and reasonably concise. Tailwind, Bootstrap 4 and Zurb Foundation 6 were also evaluated and could conceivably work, but Tailwind proved incredibly slow to work with (too many options!) and the latter two were significantly beefier without providing significant advantages over Bulma. The series is RFC as it almost certainly conflicts with Raxel's series and I'm not entirely sure all of the ideas included are good ones. I also need additional context in many of the commit messages and unit tests for the code changes. It's also incomplete as I've yet to main the main patch list and submission pages. Depending on feedback though, I can address all of these issues and resolve conflicts with Raxel's work. I'd also be open to people taking the ideas and running with them. We should probably merge the bottom 3-5 patches though. Those seem broadly useful. Changes since v1: - Rebased onto master and resolved merge conflicts Stephen Finucane (19): templates: Use standard indentation templatetags: Trivial cleanup templatetags: Add 'site_admin' tag REST: Include 'first', 'last' refs in 'Link' header settings: Enable django-cors-headers WIP: REST: Change permissions for '/people', '/users' htdocs: Integrate bulma, fontawesome trivial: Run views through black templates: Convert login, password reset views templates: Convert user profile view templates: Enhance profile view further view: Simplify user opt-in, opt-out templates: Convert bundles view templates: Convert projects view WIP: templates: Convert todo-list view templates: Convert project view templates: Convert about page templates: Convert mail settings pages templates: Convert registration template htdocs/css/bulma.css.map | 1 + htdocs/css/bulma.min.css | 1 + htdocs/css/fontawesome.css | 4619 +++++++++++++++ htdocs/css/fontawesome.min.css | 5 + htdocs/webfonts/fa-brands-400.eot | Bin 0 -> 136822 bytes htdocs/webfonts/fa-brands-400.svg | 3717 ++++++++++++ htdocs/webfonts/fa-brands-400.ttf | Bin 0 -> 136516 bytes htdocs/webfonts/fa-brands-400.woff | Bin 0 -> 92136 bytes htdocs/webfonts/fa-brands-400.woff2 | Bin 0 -> 78472 bytes htdocs/webfonts/fa-regular-400.eot | Bin 0 -> 34350 bytes htdocs/webfonts/fa-regular-400.svg | 801 +++ htdocs/webfonts/fa-regular-400.ttf | Bin 0 -> 34052 bytes htdocs/webfonts/fa-regular-400.woff | Bin 0 -> 16776 bytes htdocs/webfonts/fa-regular-400.woff2 | Bin 0 -> 13588 bytes htdocs/webfonts/fa-solid-900.eot | Bin 0 -> 204814 bytes htdocs/webfonts/fa-solid-900.svg | 5028 +++++++++++++++++ htdocs/webfonts/fa-solid-900.ttf | Bin 0 -> 204528 bytes htdocs/webfonts/fa-solid-900.woff | Bin 0 -> 104280 bytes htdocs/webfonts/fa-solid-900.woff2 | Bin 0 -> 80252 bytes patchwork/api/base.py | 33 +- patchwork/api/person.py | 4 +- patchwork/api/user.py | 5 +- patchwork/forms.py | 338 +- patchwork/settings/dev.py | 26 +- patchwork/templates/patchwork/about.html | 149 +- patchwork/templates/patchwork/bundle.html | 37 +- patchwork/templates/patchwork/bundles.html | 135 +- .../templates/patchwork/confirm-error.html | 19 - patchwork/templates/patchwork/list.html | 2 +- patchwork/templates/patchwork/login.html | 105 +- .../templates/patchwork/mail-configure.html | 70 + .../templates/patchwork/mail-settings.html | 103 +- patchwork/templates/patchwork/mail.html | 38 - .../templates/patchwork/optin-request.html | 49 - patchwork/templates/patchwork/optin.html | 18 - .../templates/patchwork/optout-request.html | 50 - patchwork/templates/patchwork/optout.html | 21 - .../patchwork/partials/download-buttons.html | 34 +- .../templates/patchwork/partials/filters.html | 83 +- .../patchwork/partials/pagination.html | 42 +- .../patchwork/partials/patch-list.html | 479 +- patchwork/templates/patchwork/profile.html | 515 +- patchwork/templates/patchwork/project.html | 401 +- patchwork/templates/patchwork/projects.html | 83 +- .../patchwork/registration-confirm.html | 13 - .../templates/patchwork/registration.html | 217 +- patchwork/templates/patchwork/submission.html | 400 +- patchwork/templates/patchwork/todo-list.html | 43 +- patchwork/templates/patchwork/todo-lists.html | 31 +- .../patchwork/user-link-confirm.html | 15 - patchwork/templates/patchwork/user-link.html | 26 - patchwork/templatetags/admins.py | 29 + patchwork/templatetags/listurl.py | 22 +- patchwork/templatetags/patch.py | 24 +- patchwork/templatetags/person.py | 9 +- patchwork/templatetags/project.py | 11 +- patchwork/templatetags/syntax.py | 55 +- patchwork/tests/views/test_user.py | 52 +- patchwork/urls.py | 21 +- patchwork/views/__init__.py | 107 +- patchwork/views/api.py | 13 +- patchwork/views/bundle.py | 71 +- patchwork/views/cover.py | 42 +- patchwork/views/mail.py | 166 +- patchwork/views/notification.py | 35 +- patchwork/views/patch.py | 90 +- patchwork/views/project.py | 88 +- patchwork/views/pwclient.py | 5 +- patchwork/views/series.py | 3 +- patchwork/views/user.py | 322 +- patchwork/views/utils.py | 27 +- patchwork/views/xmlrpc.py | 63 +- requirements-dev.txt | 1 + templates/404.html | 2 - templates/base.html | 252 +- templates/base2.html | 97 + .../registration/password_change_done.html | 2 - .../registration/password_change_form.html | 52 +- .../registration/password_reset_complete.html | 9 - .../registration/password_reset_confirm.html | 110 +- .../registration/password_reset_done.html | 37 +- .../registration/password_reset_email.html | 2 +- .../registration/password_reset_form.html | 85 +- 83 files changed, 17589 insertions(+), 2071 deletions(-) create mode 100644 htdocs/css/bulma.css.map create mode 100644 htdocs/css/bulma.min.css create mode 100644 htdocs/css/fontawesome.css create mode 100644 htdocs/css/fontawesome.min.css create mode 100644 htdocs/webfonts/fa-brands-400.eot create mode 100644 htdocs/webfonts/fa-brands-400.svg create mode 100644 htdocs/webfonts/fa-brands-400.ttf create mode 100644 htdocs/webfonts/fa-brands-400.woff create mode 100644 htdocs/webfonts/fa-brands-400.woff2 create mode 100644 htdocs/webfonts/fa-regular-400.eot create mode 100644 htdocs/webfonts/fa-regular-400.svg create mode 100644 htdocs/webfonts/fa-regular-400.ttf create mode 100644 htdocs/webfonts/fa-regular-400.woff create mode 100644 htdocs/webfonts/fa-regular-400.woff2 create mode 100644 htdocs/webfonts/fa-solid-900.eot create mode 100644 htdocs/webfonts/fa-solid-900.svg create mode 100644 htdocs/webfonts/fa-solid-900.ttf create mode 100644 htdocs/webfonts/fa-solid-900.woff create mode 100644 htdocs/webfonts/fa-solid-900.woff2 delete mode 100644 patchwork/templates/patchwork/confirm-error.html create mode 100644 patchwork/templates/patchwork/mail-configure.html delete mode 100644 patchwork/templates/patchwork/mail.html delete mode 100644 patchwork/templates/patchwork/optin-request.html delete mode 100644 patchwork/templates/patchwork/optin.html delete mode 100644 patchwork/templates/patchwork/optout-request.html delete mode 100644 patchwork/templates/patchwork/optout.html delete mode 100644 patchwork/templates/patchwork/registration-confirm.html delete mode 100644 patchwork/templates/patchwork/user-link-confirm.html delete mode 100644 patchwork/templates/patchwork/user-link.html create mode 100644 patchwork/templatetags/admins.py create mode 100644 templates/base2.html delete mode 100644 templates/registration/password_reset_complete.html