<feed xmlns='http://www.w3.org/2005/Atom'>
<title>cgitext.git/ui-shared.h, branch master</title>
<subtitle>cgitext – CGI for Git extension</subtitle>
<id>https://sayag.it/cgitext.git/atom/ui-shared.h?h=master</id>
<link rel='self' href='https://sayag.it/cgitext.git/atom/ui-shared.h?h=master'/>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/'/>
<updated>2026-07-30T05:26:52Z</updated>
<entry>
<title>ui-ci: add a "ci" tab which redirects to an external ci system</title>
<updated>2026-07-30T05:26:52Z</updated>
<author>
<name>Saya Andy</name>
<email>saya.andy@posteo.com</email>
</author>
<published>2026-07-30T05:26:52Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=b4b4f2325db71041f38902143b28bae94762b111'/>
<id>urn:sha1:b4b4f2325db71041f38902143b28bae94762b111</id>
<content type='text'>
Add a "ci" page which redirects to an external ci system for the ref
being viewed, along with a tab for it in the repository header.

The target is a url template, configurable globally or per repository,
with separate settings for branches and tags because pipelines for the
two commonly live at different locations: on a Jenkins multibranch
pipeline a branch is at job/&lt;name&gt;/job/&lt;ref&gt; while a tag is at
job/&lt;name&gt;/view/tags/job/&lt;ref&gt;. $ref, $repo and $slug are substituted,
$slug being the repository url with any ".git" suffix removed and slashes
replaced by dashes, which is the shape job names usually take.

An explicit repo.ci-url drops the branch and tag urls the repository
would otherwise inherit from the global settings, as it could never take
effect otherwise.

The expansion is written to the Location header verbatim rather than
through cgit_redirect(), which percent-encodes '?', '=' and '%' and would
corrupt any url carrying a query string. An expansion containing CR or LF
is refused so that it cannot smuggle in further headers.

Signed-off-by: Saya Andy &lt;saya.andy@posteo.com&gt;
</content>
</entry>
<entry>
<title>cgit: override die routine globally</title>
<updated>2026-03-10T21:19:00Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2026-03-10T20:26:55Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=0d8e5fbc31e1082063bfb5155c35b7869721152b'/>
<id>urn:sha1:0d8e5fbc31e1082063bfb5155c35b7869721152b</id>
<content type='text'>
We don't get any return value from compile_grep_patterns calling
compile_regexp_failed, causing the default die routine to print to
stderr and then for cgit to exit ungracefully.

Instead override the default die routine to show a normal error page.

Perhaps compile_grep_patterns ought to change upstream to return an
error. But this commit here will handle future issues as well, so
perhaps not a bad idea to do anyway.

Link: https://lists.zx2c4.com/pipermail/cgit/2026-March/004982.html
Link: https://lists.zx2c4.com/pipermail/cgit/2026-March/004983.html
Reported-by: Adrian C. &lt;anrxc@sysphere.org&gt;
Reported-by: Aiden Woodruff &lt;aiden@aidenw.net&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>git: update to v2.45.0</title>
<updated>2024-04-29T19:13:53Z</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2024-04-19T20:39:20Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=dbadd856ba0537110338cfe58256b152d01388c0'/>
<id>urn:sha1:dbadd856ba0537110338cfe58256b152d01388c0</id>
<content type='text'>
Update to git version v2.45.0, this requires changes for these
upstream commits:

* 9720d23e8caf4adee44b3a32803a9bb0480118bd
  date: make DATE_MODE thread-safe

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
</entry>
<entry>
<title>auth-filter: pass url with query string attached</title>
<updated>2018-11-25T05:01:34Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2018-11-21T02:16:11Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=898b9e19e0eacd67456ddcc91ff173055e1c0e99'/>
<id>urn:sha1:898b9e19e0eacd67456ddcc91ff173055e1c0e99</id>
<content type='text'>
Otherwise redirections come out wrong.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>ui-shared: pass separator in to cgit_print_snapshot_links()</title>
<updated>2018-06-27T16:11:19Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2018-03-31T14:08:59Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=e491eaa5df3055dc419d9d3cb75421e8a8c43944'/>
<id>urn:sha1:e491eaa5df3055dc419d9d3cb75421e8a8c43944</id>
<content type='text'>
cgit_print_snapshot_links() is almost identical to
print_tag_downloads(), so let's extract the difference to a parameter in
preparation for removing print_tag_downloads() in the next commit.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Reviewed-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
</entry>
<entry>
<title>ui-shared: rename parameter to cgit_print_snapshot_links()</title>
<updated>2018-06-27T16:11:19Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2018-03-31T14:03:21Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=82aadcfc51ab9560862b99bfe5833c17f102f0ac'/>
<id>urn:sha1:82aadcfc51ab9560862b99bfe5833c17f102f0ac</id>
<content type='text'>
This is expected to be a ref not a hex object ID, so name it more
appropriately.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Reviewed-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
</entry>
<entry>
<title>ui-shared: remove unused parameter</title>
<updated>2018-06-27T16:11:19Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2018-03-31T14:02:21Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=63da41a915157d27dcf26e4811bd6b5f8a3abb2b'/>
<id>urn:sha1:63da41a915157d27dcf26e4811bd6b5f8a3abb2b</id>
<content type='text'>
The "head" parameter to cgit_print_snapshot_links() is never used, so
remove it.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Reviewed-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
</entry>
<entry>
<title>Add "snapshot-prefix" repo configuration</title>
<updated>2018-06-27T16:11:19Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2018-03-31T13:20:01Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=c1572bb5ec4540b5008490cf471cc4a5e65ef728'/>
<id>urn:sha1:c1572bb5ec4540b5008490cf471cc4a5e65ef728</id>
<content type='text'>
Allow using a user-specified value for the prefix in snapshot files
instead of the repository basename.  For example, files downloaded from
the linux-stable.git repository should be named linux-$VERSION and not
linux-stable-$VERSION, which can be achieved by setting:

	repo.snapshot-prefix=linux

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Reviewed-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
</entry>
<entry>
<title>ui-shared: pass repo object to print_snapshot_links()</title>
<updated>2018-06-27T16:11:19Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2018-03-31T13:05:02Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=bd1b281478c8d8ab45f723ac5818d58da4a64dd1'/>
<id>urn:sha1:bd1b281478c8d8ab45f723ac5818d58da4a64dd1</id>
<content type='text'>
Both call sites of cgit_print_snapshot_links() use the same values for
the snapshot mask and repository name, which are derived from the
cgit_repo structure so let's pass in the structure and access the fields
directly.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Reviewed-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
</entry>
<entry>
<title>ui-tree: link to blame UI if enabled</title>
<updated>2017-10-03T18:19:34Z</updated>
<author>
<name>Jeff Smith</name>
<email>whydoubt@gmail.com</email>
</author>
<published>2017-10-02T04:39:09Z</published>
<link rel='alternate' type='text/html' href='https://sayag.it/cgitext.git/commit/?id=1649afdc9b2febe9ab7e1abe1956c5dcaff93aa1'/>
<id>urn:sha1:1649afdc9b2febe9ab7e1abe1956c5dcaff93aa1</id>
<content type='text'>
Create links to the blame page.

Signed-off-by: Jeff Smith &lt;whydoubt@gmail.com&gt;
Reviewed-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
</feed>
