<feed xmlns='http://www.w3.org/2005/Atom'>
<title>cgit, branch ch/for-jason</title>
<subtitle>A hyperfast web frontend for git repositories written in C 
</subtitle>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/'/>
<entry>
<title>git: update to v2.43.0</title>
<updated>2023-11-20T19:45:03+00:00</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2023-11-07T15:13:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=793c420897e18eb3474c751d54cf4e0983f85433'/>
<id>793c420897e18eb3474c751d54cf4e0983f85433</id>
<content type='text'>
Update to git version v2.43.0, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update to git version v2.43.0, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>git: update to v2.42.1</title>
<updated>2023-11-02T20:26:06+00:00</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2023-11-02T20:26:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=a95762af1ab8b4286a515630f750892d85bd6540'/>
<id>a95762af1ab8b4286a515630f750892d85bd6540</id>
<content type='text'>
Update to git version v2.42.1, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update to git version v2.42.1, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>git: update to v2.42.0</title>
<updated>2023-08-21T18:56:40+00:00</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2023-08-08T23:45:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=2f50b47c72cbc4270bbd12ae7f520486d5f42736'/>
<id>2f50b47c72cbc4270bbd12ae7f520486d5f42736</id>
<content type='text'>
Update to git version v2.42.0, this requires changes for these
upstream commits:

* bc5c5ec0446895f5c4139cd470066beb3c4ac6d5
  cache.h: remove this no-longer-used header

* aba070683295a20bdf4f49146384984961c794b2
  path: move related function to path

* a4e7e317f8f27f861321e6eb08b9c8c0f3ab570c
  config: add ctx arg to config_fn_t

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update to git version v2.42.0, this requires changes for these
upstream commits:

* bc5c5ec0446895f5c4139cd470066beb3c4ac6d5
  cache.h: remove this no-longer-used header

* aba070683295a20bdf4f49146384984961c794b2
  path: move related function to path

* a4e7e317f8f27f861321e6eb08b9c8c0f3ab570c
  config: add ctx arg to config_fn_t

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>git: update to v2.41.0</title>
<updated>2023-06-01T10:00:43+00:00</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2023-05-16T15:02:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=a6da40bf84527cbe77d1ec504e1fefb982b9a52a'/>
<id>a6da40bf84527cbe77d1ec504e1fefb982b9a52a</id>
<content type='text'>
Update to git version v2.41.0, with lots of changes...
This requires changes for these upstream commits:

* 60ff56f50372c1498718938ef504e744fe011ffb
  banned.h: mark `strtok()` and `strtok_r()` as banned

* 52acddf36c8cb3778ab2098a0d95cc2e375a4069
  string-list: multi-delimiter `string_list_split_in_place()`

* d850b7a545fcfbd97460a921c7f7c59d933eb0f7
  cocci: apply the "cache.h" part of "the_repository.pending"

* cb338c23d6d518947bf6f7240bf30e2ec232bd3b
  cocci: apply the "commit-reach.h" part of "the_repository.pending"

* ecb5091fd4301ac647db0bd2504112b38f7ee06d
  cocci: apply the "commit.h" part of "the_repository.pending"

* 085390328f5fe1dfba67039b1fd6cc51546a4e41
  cocci: apply the "diff.h" part of "the_repository.pending"

* bc726bd075929aab6b3e09d4dd5c2b0726fd5350
  cocci: apply the "object-store.h" part of "the_repository.pending"

* bab821646a74c446370fa8d01ca851f247df5033
  cocci: apply the "pretty.h" part of "the_repository.pending"

* afe27c889429438829bc8818ed17e4960bd3ef02
  cocci: apply the "packfile.h" part of "the_repository.pending"

* 12cb1c10a64170a5d600dd1c6c8abfeec105fb6b
  cocci: apply the "refs.h" part of "the_repository.pending"

* 035c7de9e9ea11d26df5f9e4bb117f91ed11a9fd
  cocci: apply the "revision.h" part of "the_repository.pending"

... and some more I missed to list 😜 - for example the move and cleanup
of headers and includes (see changes in `cgit.h`) comes to mind...

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update to git version v2.41.0, with lots of changes...
This requires changes for these upstream commits:

* 60ff56f50372c1498718938ef504e744fe011ffb
  banned.h: mark `strtok()` and `strtok_r()` as banned

* 52acddf36c8cb3778ab2098a0d95cc2e375a4069
  string-list: multi-delimiter `string_list_split_in_place()`

* d850b7a545fcfbd97460a921c7f7c59d933eb0f7
  cocci: apply the "cache.h" part of "the_repository.pending"

* cb338c23d6d518947bf6f7240bf30e2ec232bd3b
  cocci: apply the "commit-reach.h" part of "the_repository.pending"

* ecb5091fd4301ac647db0bd2504112b38f7ee06d
  cocci: apply the "commit.h" part of "the_repository.pending"

* 085390328f5fe1dfba67039b1fd6cc51546a4e41
  cocci: apply the "diff.h" part of "the_repository.pending"

* bc726bd075929aab6b3e09d4dd5c2b0726fd5350
  cocci: apply the "object-store.h" part of "the_repository.pending"

* bab821646a74c446370fa8d01ca851f247df5033
  cocci: apply the "pretty.h" part of "the_repository.pending"

* afe27c889429438829bc8818ed17e4960bd3ef02
  cocci: apply the "packfile.h" part of "the_repository.pending"

* 12cb1c10a64170a5d600dd1c6c8abfeec105fb6b
  cocci: apply the "refs.h" part of "the_repository.pending"

* 035c7de9e9ea11d26df5f9e4bb117f91ed11a9fd
  cocci: apply the "revision.h" part of "the_repository.pending"

... and some more I missed to list 😜 - for example the move and cleanup
of headers and includes (see changes in `cgit.h`) comes to mind...

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>git: update to v2.40.1</title>
<updated>2023-04-25T17:12:11+00:00</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2023-04-25T17:12:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=0e6744b3082f576be21dd1b88f519a3c1f7d3931'/>
<id>0e6744b3082f576be21dd1b88f519a3c1f7d3931</id>
<content type='text'>
Update to git version v2.40.1, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update to git version v2.40.1, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>git: update to v2.40.0</title>
<updated>2023-03-13T19:38:46+00:00</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2023-03-01T21:07:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=2593cd813860d71bd85db48c919de3d6e41b8b57'/>
<id>2593cd813860d71bd85db48c919de3d6e41b8b57</id>
<content type='text'>
Update to git version v2.40.0, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update to git version v2.40.0, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>git: update to v2.39.2</title>
<updated>2023-02-14T19:55:47+00:00</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2023-02-14T19:55:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=4dee601bb6042cf7db2472b9c34530850345f680'/>
<id>4dee601bb6042cf7db2472b9c34530850345f680</id>
<content type='text'>
Update to git version v2.39.2, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update to git version v2.39.2, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>git: update to v2.39.1</title>
<updated>2023-01-18T06:58:23+00:00</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2023-01-18T06:58:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=6feb1b669b381452c1c2b4723bfd18275ecae350'/>
<id>6feb1b669b381452c1c2b4723bfd18275ecae350</id>
<content type='text'>
Update to git version v2.39.1, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update to git version v2.39.1, no additional changes required.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>config: make empty js= omit script tag</title>
<updated>2023-01-10T16:52:54+00:00</updated>
<author>
<name>Samuel Lidén Borell</name>
<email>samuel@kodafritt.se</email>
</author>
<published>2023-01-07T09:32:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=00ecfaadea2c40cc62b7a43e246384329e6ddb98'/>
<id>00ecfaadea2c40cc62b7a43e246384329e6ddb98</id>
<content type='text'>
According to the cgitrc man page, an empty js= value should cause the
script tag to be omitted. But instead, a script tag with an empty URL
is emitted. The same applies to css. So, skip emitting a tag if the
specified string is empty.

Signed-off-by: Samuel Lidén Borell &lt;samuel@kodafritt.se&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
According to the cgitrc man page, an empty js= value should cause the
script tag to be omitted. But instead, a script tag with an empty URL
is emitted. The same applies to css. So, skip emitting a tag if the
specified string is empty.

Signed-off-by: Samuel Lidén Borell &lt;samuel@kodafritt.se&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>js: add dynamic age update</title>
<updated>2022-12-19T15:50:23+00:00</updated>
<author>
<name>Andy Green</name>
<email>andy@warmcat.com</email>
</author>
<published>2018-06-24T07:05:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.joursoir.net/cgit/commit/?id=907134b7a29177cb45aa461c549c004b1ae875af'/>
<id>907134b7a29177cb45aa461c549c004b1ae875af</id>
<content type='text'>
This patch updates the emitted "ages" dynamically on the client side.

After updating on completion of the document load, it sets a timer
to update according to the smallest age it found.  If there are any
ages listed in minutes, then it will update again in 10s.  When the
most recent age is in hours, it updates every 5m.  If days, then
every 30m and so on.

This keeps the cost of the dynamic updates at worst once per 10s.
The updates are done entirely on the client side without contact
with the server.

To make this work reliably, since parsing datetimes is unreliable in
browser js, the unix time is added as an attribute to all age spans.

To make that reliable cross-platform, the unix time is treated as a
uint64_t when it is formatted for printing.

The rules for display conversion of the age is aligned with the
existing server-side rules in ui-shared.h.

If the client or server-side time are not synchronized by ntpd etc,
ages shown on the client will not relate to the original ages computed
at the server.  The client updates the ages immediately when the
DOM has finished loading, so in the case the times at the server and
client are not aligned, this patch changes what the user sees on the
page to reflect patch age compared to client time.

If the server and client clocks are aligned, this patch makes no
difference to what is seen on the page.

Signed-off-by: Andy Green &lt;andy@warmcat.com&gt;
Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch updates the emitted "ages" dynamically on the client side.

After updating on completion of the document load, it sets a timer
to update according to the smallest age it found.  If there are any
ages listed in minutes, then it will update again in 10s.  When the
most recent age is in hours, it updates every 5m.  If days, then
every 30m and so on.

This keeps the cost of the dynamic updates at worst once per 10s.
The updates are done entirely on the client side without contact
with the server.

To make this work reliably, since parsing datetimes is unreliable in
browser js, the unix time is added as an attribute to all age spans.

To make that reliable cross-platform, the unix time is treated as a
uint64_t when it is formatted for printing.

The rules for display conversion of the age is aligned with the
existing server-side rules in ui-shared.h.

If the client or server-side time are not synchronized by ntpd etc,
ages shown on the client will not relate to the original ages computed
at the server.  The client updates the ages immediately when the
DOM has finished loading, so in the case the times at the server and
client are not aligned, this patch changes what the user sees on the
page to reflect patch age compared to client time.

If the server and client clocks are aligned, this patch makes no
difference to what is seen on the page.

Signed-off-by: Andy Green &lt;andy@warmcat.com&gt;
Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</pre>
</div>
</content>
</entry>
</feed>
