~edwargix/git.sr.ht

e895c8a8d54bbb698ff866e1c1039fc9c0a65b34 — Drew DeVault 3 years ago f8ed55f
send-email: add version field
M gitsrht/blueprints/email.py => gitsrht/blueprints/email.py +8 -1
@@ 114,11 114,13 @@ def prepare_patchset(repo, git_repo, cover_letter=None, extra_headers=False,
        valid = Validation(request)
        start_commit = valid.require("start_commit")
        end_commit = valid.require("end_commit")
        version = valid.require("version")
        cover_letter_subject = valid.optional("cover_letter_subject")
        if cover_letter is None:
            cover_letter = valid.optional("cover_letter")
        if not valid.ok:
            return None
        version = int(version)

        args = [
            "git",


@@ 132,6 134,8 @@ def prepare_patchset(repo, git_repo, cover_letter=None, extra_headers=False,
        ]
        if cover_letter:
            args += ["--cover-letter"]
        if version != 1:
            args += ["-v", str(version)]

        start_rev = git_repo.get(start_commit)
        if not start_rev:


@@ 216,6 220,7 @@ def send_email_review(owner, repo):
        end_commit = valid.require("end_commit")
        cover_letter = valid.optional("cover_letter")
        cover_letter_subject = valid.optional("cover_letter_subject")
        version = valid.require("version")
        if cover_letter and not cover_letter_subject:
            valid.error("Cover letter subject is required.",
                    field="cover_letter_subject")


@@ 251,6 256,7 @@ def send_email_review(owner, repo):
                    commits=log, start=start, diffs=diffs,
                    diffstat=diffstat, **valid.kwargs)

        version = int(version)
        for i, email in enumerate(emails):
            comm = valid.optional(f"commentary_{i}")
            if comm:


@@ 263,7 269,8 @@ def send_email_review(owner, repo):
                start=start,
                end=tip,
                cover_letter=bool(cover_letter),
                cover_letter_subject=cover_letter_subject)
                cover_letter_subject=cover_letter_subject,
                version=version)

@mail.route("/<owner>/<repo>/send-email/send", methods=["POST"])
@loginrequired

M gitsrht/templates/send-email-end.html => gitsrht/templates/send-email-end.html +15 -0
@@ 53,6 53,8 @@
    </label>
    {% endfor %}

    {{valid.summary()}}

    <details
      {% if valid.error_for("cover_letter", "cover_letter_subject") %}
      open


@@ 82,6 84,19 @@
      {{valid.summary("cover_letter")}}
    </details>

    <div class="form-group">
      <label for="version">
        Patchset revision
        <small>(update this if you're sending a revised version of an earlier patch)</small>
      </label>
      <input
        type="number"
        name="version"
        id="version"
        value="{{version or 1}}"
        class="form-control" />
    </div>

    <div class="form-controls">
      <button class="btn btn-primary">Continue {{icon("caret-right")}}</a>
    </div>

M gitsrht/templates/send-email-review.html => gitsrht/templates/send-email-review.html +1 -1
@@ 95,7 95,7 @@
    <pre
      style="margin-bottom: 0;"
    >git config format.subjectPrefix "{{repo.name}}" <span class="text-muted"># Only necessary once</span>
git send-email {% if cover_letter %}--cover-letter {% endif %}{% if start.parent_ids %}{{start.short_id}}^..{% else %}--root {% endif %}{{end.short_id}}</pre>
git send-email {% if version != 1 %}-v{{version}} {% endif %}{% if cover_letter %}--cover-letter {% endif %}{% if start.parent_ids %}{{start.short_id}}^..{% else %}--root {% endif %}{{end.short_id}}</pre>
  </div>
  <div class="event-list">
    {% for email in emails %}