<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/cmake, branch users/ethomson/security_updates</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/'/>
<entry>
<title>cmake: include SHA1 headers into our source files</title>
<updated>2019-07-18T11:37:02+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2019-07-18T11:37:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=b7c247b3ad4d230277efd4f45b64feea48c84259'/>
<id>b7c247b3ad4d230277efd4f45b64feea48c84259</id>
<content type='text'>
When selecting the SHA1 backend, we only include the respective C
implementation of the selected backend. But since commit bd48bf3fb
(hash: introduce source files to break include circles, 2019-06-14), we
have introduced separate headers and compilation units for all hashes.
So by not including the headers, we may not honor them to compute
whether a file needs to be recompiled and they also will not be
displayed in IDEs.

Add the header files to fix this problem.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When selecting the SHA1 backend, we only include the respective C
implementation of the selected backend. But since commit bd48bf3fb
(hash: introduce source files to break include circles, 2019-06-14), we
have introduced separate headers and compilation units for all hashes.
So by not including the headers, we may not honor them to compute
whether a file needs to be recompiled and they also will not be
displayed in IDEs.

Add the header files to fix this problem.
</pre>
</div>
</content>
</entry>
<entry>
<title>cmake: report whether we are using sub-second stat information</title>
<updated>2019-07-11T06:28:55+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2019-06-27T05:34:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=df54c7fb02b8bcdc6441f38dbf783cd344575f77'/>
<id>df54c7fb02b8bcdc6441f38dbf783cd344575f77</id>
<content type='text'>
Depending on the platform and on build options, we may or may not
build libgit2 with support for nanoseconds when using `stat`
calls. It's currently unclear though whether sub-second stat
information is used at all.

Add feature info for this to tell at configure time whether it's
being used or not.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Depending on the platform and on build options, we may or may not
build libgit2 with support for nanoseconds when using `stat`
calls. It's currently unclear though whether sub-second stat
information is used at all.

Add feature info for this to tell at configure time whether it's
being used or not.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #4438 from pks-t/pks/hash-algorithm</title>
<updated>2019-06-27T09:38:04+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2019-06-27T09:38:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=e9102def452d3898058f1da846de9b0047c75048'/>
<id>e9102def452d3898058f1da846de9b0047c75048</id>
<content type='text'>
Multiple hash algorithms</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Multiple hash algorithms</pre>
</div>
</content>
</entry>
<entry>
<title>hash: move SHA1 implementations into 'sha1/' folder</title>
<updated>2019-06-24T16:33:22+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2019-06-14T12:22:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=fda206228f5df603a6fc3a81092e36850d4879b2'/>
<id>fda206228f5df603a6fc3a81092e36850d4879b2</id>
<content type='text'>
As we will include additional hash algorithms in the future due
to upstream git discussing a move away from SHA1, we should
accomodate for that and prepare for the move. As a first step,
move all SHA1 implementations into a common subdirectory.

Also, create a SHA1-specific header file that lives inside the
hash folder. This header will contain the SHA1-specific header
includes, function declarations and the SHA1 context structure.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As we will include additional hash algorithms in the future due
to upstream git discussing a move away from SHA1, we should
accomodate for that and prepare for the move. As a first step,
move all SHA1 implementations into a common subdirectory.

Also, create a SHA1-specific header file that lives inside the
hash folder. This header will contain the SHA1-specific header
includes, function declarations and the SHA1 context structure.
</pre>
</div>
</content>
</entry>
<entry>
<title>win32: support upgrading warnings to errors (/WX)</title>
<updated>2019-06-24T16:27:22+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2019-06-15T17:51:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=cc9e47c995fc9bb5526f8e83a27c5f2af6a6f6d9'/>
<id>cc9e47c995fc9bb5526f8e83a27c5f2af6a6f6d9</id>
<content type='text'>
For MSVC, support warnings as errors by providing the /WX compiler
flags.  (/WX is the moral equivalent of -Werror.)

Disable warnings as errors ass part of xdiff, since it contains
warnings.  But as a component of git itself, we want to avoid skew and
keep our implementation as similar as possible to theirs.  We'll work
with upstream to fix these issues, but in the meantime, simply let those
continue to warn.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For MSVC, support warnings as errors by providing the /WX compiler
flags.  (/WX is the moral equivalent of -Werror.)

Disable warnings as errors ass part of xdiff, since it contains
warnings.  But as a component of git itself, we want to avoid skew and
keep our implementation as similar as possible to theirs.  We'll work
with upstream to fix these issues, but in the meantime, simply let those
continue to warn.
</pre>
</div>
</content>
</entry>
<entry>
<title>hash: introduce source files to break include circles</title>
<updated>2019-06-24T16:26:32+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2019-06-14T12:21:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=bd48bf3fb9368541bafda7877cf159f94884c187'/>
<id>bd48bf3fb9368541bafda7877cf159f94884c187</id>
<content type='text'>
The hash source files have circular include dependencies right
now, which shows by our broken generic hash implementation. The
"hash.h" header declares two functions and the `git_hash_ctx`
typedef before actually including the hash backend header and can
only declare the remaining hash functions after the include due
to possibly static function declarations inside of the
implementation includes.

Let's break this cycle and help maintainability by creating a
real implementation file for each of the hash implementations.
Instead of relying on the exact include order, we now especially
avoid the use of `GIT_INLINE` for function declarations.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The hash source files have circular include dependencies right
now, which shows by our broken generic hash implementation. The
"hash.h" header declares two functions and the `git_hash_ctx`
typedef before actually including the hash backend header and can
only declare the remaining hash functions after the include due
to possibly static function declarations inside of the
implementation includes.

Let's break this cycle and help maintainability by creating a
real implementation file for each of the hash implementations.
Instead of relying on the exact include order, we now especially
avoid the use of `GIT_INLINE` for function declarations.
</pre>
</div>
</content>
</entry>
<entry>
<title>cmake: Modulize our TLS &amp; hash detection</title>
<updated>2019-06-14T10:07:00+00:00</updated>
<author>
<name>Etienne Samson</name>
<email>samson.etienne@gmail.com</email>
</author>
<published>2019-06-13T14:48:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=94fc83b6d7f179190142b91abd0d22240aced0c1'/>
<id>94fc83b6d7f179190142b91abd0d22240aced0c1</id>
<content type='text'>
The interactions between `USE_HTTPS` and `SHA1_BACKEND` have been
streamlined. Previously we would have accepted not quite working
configurations (like, `-DUSE_HTTPS=OFF -DSHA1_BACKEND=OpenSSL`) and, as
the OpenSSL detection only ran with `USE_HTTPS`, the link would fail.

The detection was moved to a new `USE_SHA1`, modeled after `USE_HTTPS`,
which takes the values "CollisionDetection/Backend/Generic", to better
match how the "hashing backend" is selected, the default (ON) being
"CollisionDetection".

Note that, as `SHA1_BACKEND` is still used internally, you might need to
check what customization you're using it for.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The interactions between `USE_HTTPS` and `SHA1_BACKEND` have been
streamlined. Previously we would have accepted not quite working
configurations (like, `-DUSE_HTTPS=OFF -DSHA1_BACKEND=OpenSSL`) and, as
the OpenSSL detection only ran with `USE_HTTPS`, the link would fail.

The detection was moved to a new `USE_SHA1`, modeled after `USE_HTTPS`,
which takes the values "CollisionDetection/Backend/Generic", to better
match how the "hashing backend" is selected, the default (ON) being
"CollisionDetection".

Note that, as `SHA1_BACKEND` is still used internally, you might need to
check what customization you're using it for.
</pre>
</div>
</content>
</entry>
<entry>
<title>regex: optionally use PCRE2</title>
<updated>2019-05-19T10:12:13+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2019-05-19T09:30:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=ce6d624af223a855a83664106957d4453dd56fcd'/>
<id>ce6d624af223a855a83664106957d4453dd56fcd</id>
<content type='text'>
Use PCRE2 and its POSIX compatibility layer if requested by the user.
Although PCRE2 is adequate for our needs, the PCRE2 POSIX layer as
installed on Debian and Ubuntu systems is broken, so we do not opt-in to
it by default to avoid breaking users on those platforms.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use PCRE2 and its POSIX compatibility layer if requested by the user.
Although PCRE2 is adequate for our needs, the PCRE2 POSIX layer as
installed on Debian and Ubuntu systems is broken, so we do not opt-in to
it by default to avoid breaking users on those platforms.
</pre>
</div>
</content>
</entry>
<entry>
<title>regex: use system PCRE if available</title>
<updated>2019-05-19T10:12:13+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2019-05-19T09:09:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=69ecdad5a494957afcf2447cc6edac6934f2b1b6'/>
<id>69ecdad5a494957afcf2447cc6edac6934f2b1b6</id>
<content type='text'>
Attempt to locate a system-installed version of PCRE and use its POSIX
compatibility layer, if possible.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Attempt to locate a system-installed version of PCRE and use its POSIX
compatibility layer, if possible.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix typo</title>
<updated>2019-04-07T14:45:45+00:00</updated>
<author>
<name>cheese1</name>
<email>cheese@nosuchhost.net</email>
</author>
<published>2019-04-07T14:45:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=67562b232ae5f5379d58cb340593e209f8e8569b'/>
<id>67562b232ae5f5379d58cb340593e209f8e8569b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
