@@ 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
@@ 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>
@@ 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 %}