Starting in Gerrit 3.3, comments can include a special file-id of
/PATCHSET_LEVEL and these comments have no code context, thus no
line numbers or related files. A previous change
I6505d08b62ba7ad8877561a82732889e142873c3 attempted to skip these
when enumerating comments in diff view, but mistakenly only did so
on the new side of the diff. Apply the same skip to the old side as
well.
Change-Id: I22575015bd9e513d00024f026d2248c7a19c3d9e
In order to avoid having urwid warp the cursor to a non-selectable
widget when moving to a new ChangeView, set focus to the first item
we know will be selectable at the top of the screen, the Change-Id.
Change-Id: Ibd502eb18496eec37383370bb15a4f4cd8b3e5d7
All of our selectable widgets should have a cursor; if we use
SelectableIcon instead of a plain Text widget as the basis for
the TextButton, we will have one.
Change-Id: I490c7317a2d43727700066918b0b486d1a9cdc6b
The default for _selectable in the Pile class was switched to False
with https://github.com/urwid/urwid/pull/367 commit 018509d, so
explicitly declare change entries are selectable in order to allow
them to be navigated by keyboard with urwid 2.1.0 and later.
Change-Id: I31f3d62475ec2e8a10e7a553426412ad6aa43f8f
The gertty-specific hypertext widget did not handle cursor positioning,
so selectable text did not behave like buttons. This is an inconsistent
UI and causes problems for screen readers.
Change-Id: Iede3f663775fc169a757751acc1fe752dc00f544
This is needed for alembic >=1.7, though unfortunately goes entirely
unmentioned in its ChangeLog. Without adding the import, startup
raises this:
AttributeError: module 'alembic' has no attribute 'migration'
Change-Id: Icf4c4a9240a8d1ea993d3aed62664531f8013a3e
Rather than display the /PATCHSET_LEVEL and /COMMIT_MSG fake
filenames, translate those to nice strings like the web ui does.
Change-Id: I225c8e2ea9763f9dadbefc4a23329efe0f97d899
Starting in Gerrit 3.3, comments can include a special file-id of
/PATCHSET_LEVEL and these comments have no code context, thus no
line numbers or related files. Skip these when enumerating comments
in diff view because there is no relevant context for them.
Thanks to Paul Fertser for reporting and debugging this problem.
Change-Id: I6505d08b62ba7ad8877561a82732889e142873c3
Gerrit releases since a few years require HTTP basic authentication
rather than Gertty's default of digest. Add it in the minimal config
example since it's often overlooked by users and the number of
Gerrit deployments where the default works is rapidly dwindling.
Change-Id: I3138197991ae5f50f3ac956bf905ce5e01a50e7c
Also for setting hashtags in change lists using the process mark.
Editing hashtags on individual change screens was already supported.
Selecting hashtags on a change screen will now perform a search for
that tag.
Change-Id: Icc23e10bbf22fbe9b1d958758ec6ceb3286e795b
A new style of internal url appears in Gerrit 3.x:
/c/PROJECT/+/NUMBER
This handles that in internal links and updates the terminal
integration docs with the new URL format as well.
Change-Id: I30bc6194b1b467b2e6500c5f11e5d06de1aea721
With the upgrade of opendev's gerrit to 3.2.5.1, the git clones are
failing because the repository url no longer has p/ in it. This change
adds p/ in only if the version is less than 3 when we do a version check.
Change-Id: Id05cfa6449c6c36dd59c7efd74d57cebafcb78c6
This button was not working because we sync the change before sending
a review, which reset the pending state. Determine whether we are
intending to submit the change before performing that sync, and
remember it after the sync is done.
Change-Id: I8c85c2a8fec50b50fb92037f6dcbcc7917c3baff
The change view did not display comments from previous patchsets,
only comments associated with the patchset of the current message.
This displays them from all patchsets, annotating them with the
patchset number when it is different.
Note, the line comments were correctly displayed in the diff view.
Change-Id: Ieda0de0bb24800b9c3f577f339ca1338f2f1cc38
Even though we won't usually display it, binary data may show up
in a diff. We can't decode it to display it, so just replace it
with a placeholder string so we don't crash.
Change-Id: I4794e707745ed8315afec00c1981e239ec98ef0e
Default config location was changed recently. This commit
updates information about where this config should be placed in
message printed if there is no config file found at all.
Change-Id: I847005182d2a31a25b51886bd4997ce8a74075c0
This is necessary on systems where the username may not be present
(e.g., gerrit-review.googlesource.com).
Change-Id: Ia91b1e9b0fb0f98728dca46a488a92a97a301274
The behavior for searching "file" more closely matches the documented
behavior for "path". Implement "path" the same as "file", then update
"file" so that the non-regex form matches path components.
Change-Id: I03bf6d5232472069ea288b1ce0fe955469791af1
When searching for file: we previously would return changes with
any revisions with matching files. Gerrit itself only considers
the latest revision, so match its behavior.
Also, correct a py3 issue with the message attribute not existing
on the SearchSyntaxError exception class.
Change-Id: I645e58b010cc3a2f74883e97f8be3634efbc2a20
Add '<' and '>' keybindings which are used for diffing pairs of
patchsets. '<' moves to the previous pair, '>' to the next.
Change-Id: I46d24f6e62f113e16be2445a8e52384086c01c8e