<feed xmlns='http://www.w3.org/2005/Atom'>
<title>cgit/ui-atom.c, branch ch/git-2-54</title>
<subtitle>A hyperfast web frontend for git repositories written in C.</subtitle>
<id>https://git.zx2c4.com/cgit/atom/ui-atom.c?h=ch%2Fgit-2-54</id>
<link rel='self' href='https://git.zx2c4.com/cgit/atom/ui-atom.c?h=ch%2Fgit-2-54'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/'/>
<updated>2024-08-02T16:22:56Z</updated>
<entry>
<title>git: update to v2.46.0</title>
<updated>2024-08-02T16:22:56Z</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2024-07-16T07:45:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=09d24d7cd0b7e85633f2f43808b12871bb209d69'/>
<id>urn:sha1:09d24d7cd0b7e85633f2f43808b12871bb209d69</id>
<content type='text'>
Update to git version v2.46.0, this requires changes for these
upstream commits:

* e7da9385708accf518a80a1e17969020fb361048
  global: introduce `USE_THE_REPOSITORY_VARIABLE` macro

* 9da95bda74cf10e1475384a71fd20914c3b99784
  hash: require hash algorithm in `oidread()` and `oidclr()`

* 30aaff437fddd889ba429b50b96ea4c151c502c5
  refs: pass repo when peeling objects

* c8f815c2083c4b340d4148a15d45c55f2fcc7d3f
  refs: remove functions without ref store

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
</entry>
<entry>
<title>git: update to v2.41.0</title>
<updated>2023-06-01T10:00:43Z</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2023-05-16T15:02:27Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=a6da40bf84527cbe77d1ec504e1fefb982b9a52a'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>global: use release_commit_memory()</title>
<updated>2022-12-19T15:13:58Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2022-02-13T15:34:50Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=4c520cefc90b10566fcc8a0b006287494a7770e1'/>
<id>urn:sha1:4c520cefc90b10566fcc8a0b006287494a7770e1</id>
<content type='text'>
Instead of calling two separate Git functions to free memory associated
with a commit object, use Git's wrapper which does this.  This also
counts as a potential future bug fix since release_commit_memory() also
resets the parsed state of the commit, meaning any attempt to use it in
the future will correctly fill out the fields again.

release_commit_memory() does not set parents to zero, so keep that for
additional safety in case CGit checks this without calling
parse_commit() again.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>ui-atom: generate valid Atom feeds</title>
<updated>2022-12-19T15:13:58Z</updated>
<author>
<name>June McEnroe</name>
<email>june@causal.agency</email>
</author>
<published>2021-06-08T20:21:10Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=4e4b30effb773e8cb0c9c23fd664a11bbe5b4076'/>
<id>urn:sha1:4e4b30effb773e8cb0c9c23fd664a11bbe5b4076</id>
<content type='text'>
Fixes several RFC 4287 violations:

&gt; 4.1.1. The "atom:feed" Element
&gt;    o  atom:feed elements MUST contain exactly one atom:id element.
&gt;    o  atom:feed elements SHOULD contain one atom:link element with a rel
&gt;       attribute value of "self".  This is the preferred URI for
&gt;       retrieving Atom Feed Documents representing this Atom feed.
&gt;    o  atom:feed elements MUST contain exactly one atom:updated element.

An atom:id element is generated from cgit_currentfullurl(), and an
atom:link element with a rel attribute of "self" is generated with
the same URL. An atom:updated element is generated from the date
of the first commit in the revision walk.

&gt; 4.1.2.  The "atom:entry" Element
&gt;    o  atom:entry elements MUST NOT contain more than one atom:content
&gt;       element.

The second atom:content element with the type of "xhtml" is removed.

&gt; 4.2.6.  The "atom:id" Element
&gt;    Its content MUST be an IRI, as defined by [RFC3987].  Note that the
&gt;    definition of "IRI" excludes relative references.  Though the IRI
&gt;    might use a dereferencable scheme, Atom Processors MUST NOT assume it
&gt;    can be dereferenced.

The atom:id elements for commits now use URNs in the "sha1" or
"sha256" namespaces. Although these are not registered URN namespaces,
they see use in the wild, for instance as part of magnet URIs.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>git: update to v2.21.0</title>
<updated>2019-06-05T13:37:49Z</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2019-02-24T20:19:46Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=985fba80d06f37fdba5e72d738ce21ab5ab5a76d'/>
<id>urn:sha1:985fba80d06f37fdba5e72d738ce21ab5ab5a76d</id>
<content type='text'>
Update to git version v2.21.0. Required changes follow upstream commits:

* 6a7895fd8a3bd409f2b71ffc355d5142172cc2a0
  (commit: prepare free_commit_buffer and release_commit_memory for
  any repo)

* e092073d643b17c82d72cf692fbfaea9c9796f11
  (tree.c: make read_tree*() take 'struct repository *')

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
Reviewed-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
<entry>
<title>global: make 'char *path' const where possible</title>
<updated>2019-06-05T13:37:49Z</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2019-01-02T16:25:01Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=ccba7eb9d0c43ffe99178ab6632dc3794f887309'/>
<id>urn:sha1:ccba7eb9d0c43ffe99178ab6632dc3794f887309</id>
<content type='text'>
Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
</entry>
<entry>
<title>ui-atom: properly escape delimiter in page link</title>
<updated>2017-08-10T13:58:24Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2017-01-15T12:29:38Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=6d3c8bc37f6124c2193d66587079975d381aa435'/>
<id>urn:sha1:6d3c8bc37f6124c2193d66587079975d381aa435</id>
<content type='text'>
If the delimiter here is '&amp;' then it needs to be escaped for inclusion
in an attribute.  Use html_attrf() to ensure that this happens (we know
that hex won't need escaping, but this makes it clearer what's
happening.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
<entry>
<title>ui-atom: avoid DATE_STRFTIME</title>
<updated>2016-02-08T17:29:11Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2016-02-08T15:06:27Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=75298209bf8386656b82f185e2901690ac5b671c'/>
<id>urn:sha1:75298209bf8386656b82f185e2901690ac5b671c</id>
<content type='text'>
Git's DATE_STRFTIME ignores the timezone argument and just uses the
local timezone regardless of whether the "local" flag is set.

Since Atom accepts ISO8601 dates [1], we can use Git's
DATE_ISO8601_STRICT instead, which does get this right.  Additionally,
we never use the local timezone here so we can use the
date_mode_from_type() wrapper to simplify the code a bit.

[1] https://tools.ietf.org/html/rfc4287#section-3.3

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
<entry>
<title>ui-atom: use show_date directly for atom dates</title>
<updated>2016-02-08T13:23:02Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2016-01-19T19:33:07Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=eb80b4edadd07957f667f057c82875c30a822a1f'/>
<id>urn:sha1:eb80b4edadd07957f667f057c82875c30a822a1f</id>
<content type='text'>
This will allow us to remove cgit_print_date and use Git's show_date
consistently.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
<entry>
<title>git: update to v2.7.0</title>
<updated>2016-01-13T16:12:17Z</updated>
<author>
<name>Christian Hesse</name>
<email>mail@eworm.de</email>
</author>
<published>2016-01-05T06:38:53Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/cgit/commit/?id=559ab5ecc4445c8477ecf62c9fc97efa412dd562'/>
<id>urn:sha1:559ab5ecc4445c8477ecf62c9fc97efa412dd562</id>
<content type='text'>
Update to git version v2.7.0.

* Upstream commit ed1c9977cb1b63e4270ad8bdf967a2d02580aa08 (Remove
  get_object_hash.) changed API:

  Convert all instances of get_object_hash to use an appropriate
  reference to the hash member of the oid member of struct object.
  This provides no functional change, as it is essentially a macro
  substitution.

Signed-off-by: Christian Hesse &lt;mail@eworm.de&gt;
</content>
</entry>
</feed>
