<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/perl, branch v2.30.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.30.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.30.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2020-11-09T22:06:25Z</updated>
<entry>
<title>Merge branch 'jk/perl-warning'</title>
<updated>2020-11-09T22:06:25Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2020-11-09T22:06:25Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=65681e75c1e57cb3c575969b4703323e6bdd447f'/>
<id>urn:sha1:65681e75c1e57cb3c575969b4703323e6bdd447f</id>
<content type='text'>
Dev support.

* jk/perl-warning:
  perl: check for perl warnings while running tests
</content>
</entry>
<entry>
<title>Merge branch 'bc/svn-hash-oid-fix'</title>
<updated>2020-11-02T21:17:45Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2020-11-02T21:17:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=305fcf42b4dde316ba0b2e6433c1e5a1d6ef864f'/>
<id>urn:sha1:305fcf42b4dde316ba0b2e6433c1e5a1d6ef864f</id>
<content type='text'>
A recent oid-&gt;hash conversion missed one spot, breaking "git svn".

* bc/svn-hash-oid-fix:
  svn: use correct variable name for short OID
</content>
</entry>
<entry>
<title>perl: check for perl warnings while running tests</title>
<updated>2020-10-22T06:11:48Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2020-10-22T03:24:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5338ed2b26ebf91de246c59e525ad254dcbc7a84'/>
<id>urn:sha1:5338ed2b26ebf91de246c59e525ad254dcbc7a84</id>
<content type='text'>
We set "use warnings" in most of our perl code to catch problems. But as
the name implies, warnings just emit a message to stderr and don't
otherwise affect the program. So our tests are quite likely to miss that
warnings are being spewed, as most of them do not look at stderr.

We could ask perl to make all warnings fatal, but this is likely
annoying for non-developers, who would rather have a running program
with a warning than something that refuses to work at all.

So instead, let's teach the perl code to respect an environment variable
(GIT_PERL_FATAL_WARNINGS) to increase the severity of the warnings. This
can be set for day-to-day running if people want to be really pedantic,
but the primary use is to trigger it within the test suite.

We could also trigger that for every test run, but likewise even the
tests failing may be annoying to distro builders, etc (just as -Werror
would be for compiling C code). So we'll tie it to a special test-mode
variable (GIT_TEST_PERL_FATAL_WARNINGS) that can be set in the
environment or as a Makefile knob, and we'll automatically turn the knob
when DEVELOPER=1 is set. That should give developers and CI the more
careful view without disrupting normal users or packagers.

Note that the mapping from the GIT_TEST_* form to the GIT_* form in
test-lib.sh is necessary even if they had the same name: the perl
scripts need it to be normalized to a perl truth value, and we also have
to make sure it's exported (we might have gotten it from the
environment, but we might also have gotten it from GIT-BUILD-OPTIONS
directly).

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>svn: use correct variable name for short OID</title>
<updated>2020-10-22T06:03:31Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2020-10-22T01:18:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=03bb366de485e20585b65c48dddb417e0c200f7c'/>
<id>urn:sha1:03bb366de485e20585b65c48dddb417e0c200f7c</id>
<content type='text'>
The commit 9ab33150a0 ("perl: create and switch variables for hash
constants", 2020-06-22) converted each instance of the variable
$sha1_short into $oid_short in the Subversion code, since git-svn now
understands SHA-256.  However, one conversion was missed.

As a result, Perl complains about the use of this variable:

  Use of uninitialized value $sha1_short in regexp compilation at
  /usr/lib64/perl5/vendor_perl/5.30.3/Git/SVN/Log.pm line 301, &lt;$fh&gt;
  line 6.

Because we're parsing raw diff output here, the likelihood is very low
that we'll actually misparse the data, since the only lines we're going
to get starting with colons are the ones we're expecting.  Even if we
had a newline in a path, we'd end up with a quoted path.  Our regex is
just less strict than we'd like it to be.

However, it's obviously undesirable that our code is emitting Perl
warnings, so let's convert it to use the proper variable name.

Reported-by: Nikos Chantziaras &lt;realnc@gmail.com&gt;
Signed-off-by: brian m. carlson &lt;sandals@crustytoothpaste.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-send-email: die if sendmail.* config is set</title>
<updated>2020-07-24T01:00:34Z</updated>
<author>
<name>Drew DeVault</name>
<email>sir@cmpwn.com</email>
</author>
<published>2020-07-24T00:44:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=dd84e528a34c3822e7ab0473a95e411665b37681'/>
<id>urn:sha1:dd84e528a34c3822e7ab0473a95e411665b37681</id>
<content type='text'>
I've seen several people mis-configure git send-email on their first
attempt because they set the sendmail.* config options - not
sendemail.*. This patch detects this mistake and bails out with a
friendly warning.

Signed-off-by: Drew DeVault &lt;sir@cmpwn.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>perl: make SVN code hash independent</title>
<updated>2020-06-22T18:21:07Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2020-06-22T18:04:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=94b2ee1aeeb2dbec8383118db74d5c5c0a95476f'/>
<id>urn:sha1:94b2ee1aeeb2dbec8383118db74d5c5c0a95476f</id>
<content type='text'>
There are several places throughout git-svn that use various hard-coded
constants.  For matching object IDs, use the $oid variable.  Compute the
record size we use for our revision storage based on the object ID.

When parsing the revision map format, use a wildcard in the pack format
since we know that the data we're parsing is always exactly the record
size.  This lets us continue to use a constant for the pack format.

Finally, update several comments to reflect the fact that an object ID
may be of one of multiple sizes.

Signed-off-by: brian m. carlson &lt;sandals@crustytoothpaste.net&gt;
Acked-by: Eric Wong &lt;e@80x24.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>perl: make Git::IndexInfo work with SHA-256</title>
<updated>2020-06-22T18:21:07Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2020-06-22T18:04:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ff508e227c881acf6016c88ddde8158664ee18e3'/>
<id>urn:sha1:ff508e227c881acf6016c88ddde8158664ee18e3</id>
<content type='text'>
Most of the Git modules, git-svn excepted, don't know anything about the
hash algorithm and mostly work.  However, when we're printing an
all-zero object ID in Git::IndexInfo, we need to know the hash length.

Since we don't want to change the API to have that information passed
in, let's query the config to find the hash algorithm and compute the
right value.

Signed-off-by: brian m. carlson &lt;sandals@crustytoothpaste.net&gt;
Acked-by: Eric Wong &lt;e@80x24.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>perl: create and switch variables for hash constants</title>
<updated>2020-06-22T18:21:07Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2020-06-22T18:04:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9ab33150a0d14089d0496dd8354d4a969e849571'/>
<id>urn:sha1:9ab33150a0d14089d0496dd8354d4a969e849571</id>
<content type='text'>
git-svn has several variables for SHA-1 constants, including short hash
values and full length hash values.  Since these are no longer SHA-1
specific, let's start them with "oid" instead of "sha1".  Add a
constant, oid_length, which is the length of the hash algorithm in use
in hex.  We use the hex version because overwhelmingly that's what's
used by git-svn.

We don't currently set oid_length based on the repository algorithm, but
we will in a future commit.

Signed-off-by: brian m. carlson &lt;sandals@crustytoothpaste.net&gt;
Acked-by: Eric Wong &lt;e@80x24.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Fix spelling errors in documentation outside of Documentation/</title>
<updated>2019-11-07T04:42:00Z</updated>
<author>
<name>Elijah Newren</name>
<email>newren@gmail.com</email>
</author>
<published>2019-11-05T17:07:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=891529792547c55bf8c94ea8831631702492e839'/>
<id>urn:sha1:891529792547c55bf8c94ea8831631702492e839</id>
<content type='text'>
Reported-by: Jens Schleusener &lt;Jens.Schleusener@fossies.org&gt;
Signed-off-by: Elijah Newren &lt;newren@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-svn: trim leading and trailing whitespaces in author name</title>
<updated>2019-09-28T04:51:42Z</updated>
<author>
<name>Tobias Klauser</name>
<email>tklauser@distanz.ch</email>
</author>
<published>2019-09-23T09:55:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=4ddd4bddb1d2ef94bb66e2d35b43d0e324237907'/>
<id>urn:sha1:4ddd4bddb1d2ef94bb66e2d35b43d0e324237907</id>
<content type='text'>
In some cases, the svn author names might contain leading or trailing
whitespaces, leading to messages such as:

  Author: user1
   not defined in authors.txt

(the trailing newline leads to the line break). The user "user1" is
defined in authors.txt though, e.g.

  user1 = User &lt;user1@example.com&gt;

Fix this by trimming the author name retreived from svn before using it
in check_author.

Helped-by: Eric Sunshine &lt;sunshine@sunshineco.com&gt;
Signed-off-by: Tobias Klauser &lt;tklauser@distanz.ch&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
